Compiler\AnalysisBasedMetadataManager.cs (35)
29private readonly Dictionary<TypeDesc, MetadataCategory> _reflectableTypes = new Dictionary<TypeDesc, MetadataCategory>();
30private readonly Dictionary<MethodDesc, MetadataCategory> _reflectableMethods = new Dictionary<MethodDesc, MetadataCategory>();
31private readonly Dictionary<FieldDesc, MetadataCategory> _reflectableFields = new Dictionary<FieldDesc, MetadataCategory>();
76Debug.Assert((refMethod.Category & MetadataCategory.Description) == 0
77|| (_reflectableTypes[refMethod.Entity.OwningType] & MetadataCategory.Description) != 0);
78Debug.Assert((refMethod.Category & MetadataCategory.RuntimeMapping) == 0
79|| (_reflectableTypes[refMethod.Entity.OwningType] & MetadataCategory.RuntimeMapping) != 0);
87Debug.Assert((refField.Category & MetadataCategory.Description) == 0
88|| (_reflectableTypes[refField.Entity.OwningType] & MetadataCategory.Description) != 0);
89Debug.Assert((refField.Category & MetadataCategory.RuntimeMapping) == 0
90|| (_reflectableTypes[refField.Entity.OwningType] & MetadataCategory.RuntimeMapping) != 0);
110Debug.Assert((GetMetadataCategory(refType.Entity.GetTypeDefinition()) & MetadataCategory.Description)
111== (GetMetadataCategory(refType.Entity) & MetadataCategory.Description));
113Debug.Assert((refType.Category & MetadataCategory.Description) == 0 ||
121Debug.Assert((GetMetadataCategory(refMethod.Entity.GetTypicalMethodDefinition()) & MetadataCategory.Description)
122== (GetMetadataCategory(refMethod.Entity) & MetadataCategory.Description));
132Debug.Assert((GetMetadataCategory(refField.Entity.GetTypicalFieldDefinition()) & MetadataCategory.Description)
133== (GetMetadataCategory(refField.Entity) & MetadataCategory.Description));
164protected sealed override MetadataCategory GetMetadataCategory(MethodDesc method)
166if (_reflectableMethods.TryGetValue(method, out MetadataCategory value))
171protected sealed override MetadataCategory GetMetadataCategory(TypeDesc type)
173if (_reflectableTypes.TryGetValue(type, out MetadataCategory value))
178protected sealed override MetadataCategory GetMetadataCategory(FieldDesc field)
180if (_reflectableFields.TryGetValue(field, out MetadataCategory value))
189if ((pair.Value & MetadataCategory.RuntimeMapping) != 0)
208if ((pair.Value & MetadataCategory.RuntimeMapping) != 0)
217if ((pair.Value & MetadataCategory.RuntimeMapping) != 0)
239return (_parent.GetMetadataCategory(fieldDef) & MetadataCategory.Description) != 0;
244return (_parent.GetMetadataCategory(methodDef) & MetadataCategory.Description) != 0;
249return (_parent.GetMetadataCategory(typeDef) & MetadataCategory.Description) != 0;
299public readonly MetadataCategory Category;
301public ReflectableEntity(TEntity entity, MetadataCategory category)