示例#1
0
 FieldInfo ResolveGlobalField(IField fieldRef)
 {
     InitGlobalFields();
     foreach (var globalField in globalFields)
     {
         if (ResolverUtils.CompareFields(globalField, fieldRef))
         {
             return(globalField);
         }
     }
     return(null);
 }
示例#2
0
        public FieldInfo Resolve(IField fieldRef)
        {
            InitFields();

            if (!fields.TryGetValue(fieldRef.Name.String, out var list))
            {
                return(null);
            }

            fieldRef = GenericArgsSubstitutor.Create(fieldRef, fieldRef.DeclaringType.TryGetGenericInstSig());

            foreach (var field in list)
            {
                if (ResolverUtils.CompareFields(field, fieldRef))
                {
                    return(field);
                }
            }

            return(null);
        }