internal MissingTypeParameter(MemberInfo owner, int index) { this.owner = owner; this.index = index; }
internal MissingMemberException(MemberInfo member) : base("Member '" + member + "' is a missing member and does not support the requested operation.") { this.member = member; }
public static IList<CustomAttributeData> __GetCustomAttributes(MemberInfo member, Type attributeType, bool inherit) { if (!member.IsBaked) { // like .NET we we don't return custom attributes for unbaked members throw new NotImplementedException(); } if (!inherit || !IsInheritableAttribute(attributeType)) { return GetCustomAttributesImpl(null, member, attributeType) ?? EmptyList; } List<CustomAttributeData> list = new List<CustomAttributeData>(); for (; ; ) { GetCustomAttributesImpl(list, member, attributeType); Type type = member as Type; if (type != null) { type = type.BaseType; if (type == null) { return list; } member = type; continue; } MethodInfo method = member as MethodInfo; if (method != null) { MemberInfo prev = member; method = method.GetBaseDefinition(); if (method == null || method == prev) { return list; } member = method; continue; } return list; } }
private static List<CustomAttributeData> GetCustomAttributesImpl(List<CustomAttributeData> list, MemberInfo member, Type attributeType) { if (member.Module.universe.ReturnPseudoCustomAttributes) { List<CustomAttributeData> pseudo = member.GetPseudoCustomAttributes(attributeType); if (list == null) { list = pseudo; } else if (pseudo != null) { list.AddRange(pseudo); } } return GetCustomAttributesImpl(list, member.Module, member.GetCurrentToken(), attributeType); }
public static IList<CustomAttributeData> __GetCustomAttributes(MemberInfo member, Type attributeType, bool inherit) { if (!inherit || !IsInheritableAttribute(attributeType)) { return member.GetCustomAttributesData(attributeType); } List<CustomAttributeData> list = new List<CustomAttributeData>(); for (; ; ) { list.AddRange(member.GetCustomAttributesData(attributeType)); Type type = member as Type; if (type != null) { type = type.BaseType; if (type == null) { return list; } member = type; continue; } MethodInfo method = member as MethodInfo; if (method != null) { MemberInfo prev = member; method = method.GetBaseDefinition(); if (method == null || method == prev) { return list; } member = method; continue; } return list; } }
public static IList<CustomAttributeData> GetCustomAttributes(MemberInfo member) { return __GetCustomAttributes(member, null, false); }
static bool HasExtensionAttribute(MemberInfo provider) { foreach (var attr in provider.CustomAttributes) { if (attr.AttributeType.Name == "ExtensionAttribute" && attr.AttributeType.Namespace == "System.Runtime.CompilerServices") return true; } return false; }
internal ParameterInfoWrapper(MemberInfo member, ParameterInfo forward) { this.member = member; this.forward = forward; }
void FinishReadMember(AbstractUnresolvedMember member, MemberInfo ikvmDefinition) { member.ApplyInterningProvider(interningProvider); member.Freeze(); RegisterCecilObject(member, ikvmDefinition); }
void RegisterCecilObject(IUnresolvedEntity typeSystemObject, MemberInfo cecilObject) { if (OnEntityLoaded != null) OnEntityLoaded(typeSystemObject, cecilObject); }
private MissingTypeParameter(MemberInfo owner, int index, byte sigElementType) : base(sigElementType) { this.owner = owner; this.index = index; }
internal CustomAttributeNamedArgument(MemberInfo member, CustomAttributeTypedArgument value) { this.member = member; this.value = value; }
public static IList<CustomAttributeData> GetCustomAttributes(MemberInfo member) { return member.GetCustomAttributesData(null); }
private static void AddMembers(List<MemberInfo> list, MemberFilter filter, object filterCriteria, MemberInfo[] members) { foreach (MemberInfo member in members) { if (filter == null || filter(member, filterCriteria)) { list.Add(member); } } }
public static IList <CustomAttributeData> GetCustomAttributes(MemberInfo member) { return(member.GetCustomAttributesData(null)); }