87 references to MetadataCategory
ILCompiler.Compiler (87)
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)
Compiler\MetadataManager.cs (21)
482MetadataCategory category = GetMetadataCategory(method); 484if ((category & MetadataCategory.Description) != 0) 489if ((category & MetadataCategory.RuntimeMapping) != 0) 516MetadataCategory category = GetMetadataCategory(field); 518if ((category & MetadataCategory.Description) != 0) 523if ((category & MetadataCategory.RuntimeMapping) != 0) 561MetadataCategory category = GetMetadataCategory(type); 563if ((category & MetadataCategory.Description) != 0) 678return (GetMetadataCategory(method) & MetadataCategory.Description) != 0; 687return (GetMetadataCategory(field) & MetadataCategory.Description) != 0; 745if ((GetMetadataCategory(method) & MetadataCategory.RuntimeMapping) == 0) 847if ((GetMetadataCategory(method) & MetadataCategory.Description) == 0) 859if ((GetMetadataCategory(method) & MetadataCategory.RuntimeMapping) == 0) 1253return (GetMetadataCategory(type) & MetadataCategory.Description) != 0; 1259return (GetMetadataCategory(method) & MetadataCategory.Description) != 0; 1265return (GetMetadataCategory(field) & MetadataCategory.Description) != 0; 1272/// Note that if this method doesn't return <see cref="MetadataCategory.Description"/>, it doesn't mean 1275protected abstract MetadataCategory GetMetadataCategory(MethodDesc method); 1281/// Note that if this method doesn't return <see cref="MetadataCategory.Description"/>, it doesn't mean 1284protected abstract MetadataCategory GetMetadataCategory(TypeDesc type); 1285protected abstract MetadataCategory GetMetadataCategory(FieldDesc field);
Compiler\UsageBasedMetadataManager.cs (31)
165Debug.Assert((GetMetadataCategory(field) & MetadataCategory.RuntimeMapping) != 0); 176protected override MetadataCategory GetMetadataCategory(FieldDesc field) 178MetadataCategory category = 0; 184category = MetadataCategory.RuntimeMapping; 187category |= MetadataCategory.Description; 193protected override MetadataCategory GetMetadataCategory(MethodDesc method) 195MetadataCategory category = 0; 201category = MetadataCategory.RuntimeMapping; 204category |= MetadataCategory.Description; 210protected override MetadataCategory GetMetadataCategory(TypeDesc type) 212MetadataCategory category = 0; 216category = MetadataCategory.RuntimeMapping; 219category |= MetadataCategory.Description; 864reflectableTypes[typeWithMetadata] = MetadataCategory.Description; 872reflectableTypes[constructedType] |= MetadataCategory.RuntimeMapping; 877(reflectableTypes[constructedTypeDefinition] & MetadataCategory.Description) != 0) 879reflectableTypes[constructedType] |= MetadataCategory.Description; 886reflectableMethods[methodWithMetadata] = MetadataCategory.Description; 896if ((reflectableTypes[method.OwningType] & MetadataCategory.RuntimeMapping) != 0) 897reflectableMethods[method] |= MetadataCategory.RuntimeMapping; 902(reflectableMethods[typicalMethod] & MetadataCategory.Description) != 0) 904reflectableMethods[method] |= MetadataCategory.Description; 905reflectableTypes[method.OwningType] |= MetadataCategory.Description; 913reflectableFields[fieldWithMetadata] = MetadataCategory.Description; 918reflectableFields[fieldWithRuntimeMapping] |= MetadataCategory.RuntimeMapping; 923(reflectableFields[typicalField] & MetadataCategory.Description) != 0) 925reflectableFields[fieldWithRuntimeMapping] |= MetadataCategory.Description; 981private Dictionary<T, MetadataCategory> _dictionary; 987_dictionary = new Dictionary<T, MetadataCategory>(), 991public MetadataCategory this[T key] 995if (_dictionary.TryGetValue(key, out MetadataCategory category))