bool ISupportsInterning.EqualsForInterning(ISupportsInterning other) { DefaultAccessor a = other as DefaultAccessor; return(a != null && (attributes == a.attributes && returnTypeAttributes == a.returnTypeAttributes && accessibility == a.accessibility && region == a.region)); }
static DefaultAccessor[] CreateDefaultAccessors() { DefaultAccessor[] accessors = new DefaultAccessor[(int)Accessibility.ProtectedAndInternal + 1]; for (int i = 0; i < accessors.Length; i++) { accessors[i] = new DefaultAccessor(); accessors[i].accessibility = (Accessibility)i; accessors[i].Freeze(); } return accessors; }
static DefaultAccessor[] CreateDefaultAccessors() { DefaultAccessor[] accessors = new DefaultAccessor[(int)Accessibility.ProtectedAndInternal + 1]; for (int i = 0; i < accessors.Length; i++) { accessors[i] = new DefaultAccessor(); accessors[i].accessibility = (Accessibility)i; accessors[i].Freeze(); } return(accessors); }
/// <summary> /// Gets the default accessor with the specified accessibility (and without attributes or region). /// </summary> public static IAccessor GetFromAccessibility(Accessibility accessibility) { int index = (int)accessibility; if (index >= 0 && index < defaultAccessors.Length) { return defaultAccessors[index]; } else { DefaultAccessor a = new DefaultAccessor(); a.accessibility = accessibility; a.Freeze(); return a; } }
/// <summary> /// Gets the default accessor with the specified accessibility (and without attributes or region). /// </summary> public static IAccessor GetFromAccessibility(Accessibility accessibility) { int index = (int)accessibility; if (index >= 0 && index < defaultAccessors.Length) { return(defaultAccessors[index]); } else { DefaultAccessor a = new DefaultAccessor(); a.accessibility = accessibility; a.Freeze(); return(a); } }
IAccessor ReadAccessor(MethodDefinition accessorMethod) { if (accessorMethod != null && IsVisible(accessorMethod.Attributes)) { Accessibility accessibility = GetAccessibility(accessorMethod.Attributes); if (HasAnyAttributes(accessorMethod)) { DefaultAccessor a = new DefaultAccessor(); a.Accessibility = accessibility; AddAttributes(accessorMethod, a.Attributes, a.ReturnTypeAttributes); return a; } else { return DefaultAccessor.GetFromAccessibility(accessibility); } } else { return null; } }
void AddAttributes(MethodDefinition accessorMethod, DefaultAccessor targetAccessor) { if (accessorMethod.HasCustomAttributes) { AddCustomAttributes(accessorMethod.CustomAttributes, targetAccessor.Attributes); } }