private static LinkedMemberInfo Create([NotNull] LinkedMemberHierarchy hierarchy, [NotNull] MemberData memberData) { #if DEV_MODE && PI_ASSERTATIONS Debug.Assert(hierarchy != null); Debug.Assert(memberData != null); #endif LinkedMemberInfo created; if (!pool.TryGet(out created)) { return(new LinkedMemberInfo(hierarchy, memberData)); } created.Hierarchy = hierarchy; created.Data = memberData; return(created); }
/// <summary> /// Does this refer to same target member as MemberData (ignoring reflected type)? /// </summary> /// <param name="other"> /// The member data to compare to this object. </param> /// <returns> /// True if the objects are considered equal, false if they are not. /// </returns> public abstract bool Equals(MemberData other);
public override bool Equals(MemberData other) { return(false); }
public override bool Equals(MemberData other) { var b = other as FieldData; return(b != null && fieldInfo.Equals(b.fieldInfo)); }
public override bool Equals(MemberData other) { var b = other as GenericTypeArgumentData; return(b != null && genericTypeArgument.EqualTo(b.genericTypeArgument)); }
public override bool Equals(MemberData other) { var b = other as ParameterData; return(b != null && parameterInfo.EqualTo(b.parameterInfo)); }