public static LinkedMemberInfo Create(LinkedMemberHierarchy hierarchy, [CanBeNull] LinkedMemberInfo parent, MethodInfo getMethodInfo, MethodInfo setMethodInfo, LinkedMemberParent setParentType) { MethodData memberData; if (!methodPool.TryGet(out memberData)) { memberData = new MethodData(); } var created = Create(hierarchy, memberData); created.Setup(parent, getMethodInfo, setMethodInfo, setParentType); return(created); }
public static LinkedMemberInfo Create(LinkedMemberHierarchy hierarchy, LinkedMemberInfo parent, [NotNull] PropertyInfo propertyInfo, LinkedMemberParent parentType, string serializedPropertyPath = null) { PropertyData memberData; if (!propertyPool.TryGet(out memberData)) { memberData = new PropertyData(); } var created = Create(hierarchy, memberData); created.Setup(parent, propertyInfo, parentType, serializedPropertyPath); return(created); }
public static LinkedMemberInfo CreateIndexer(LinkedMemberHierarchy hierarchy, LinkedMemberInfo parent, [NotNull] PropertyInfo propertyInfo, LinkedMemberParent parentType) { IndexerData memberData; if (!indexerPool.TryGet(out memberData)) { memberData = new IndexerData(); } var created = Create(hierarchy, memberData); created.SetupIndexer(parent, propertyInfo, parentType); return(created); }
public static LinkedMemberInfo Create([NotNull] LinkedMemberHierarchy hierarchy, [CanBeNull] LinkedMemberInfo parent, [NotNull] FieldInfo fieldInfo, LinkedMemberParent parentType, string serializedPropertyPath = null) { FieldData memberData; if (!fieldPool.TryGet(out memberData)) { memberData = new FieldData(); } var created = Create(hierarchy, memberData); created.Setup(parent, fieldInfo, parentType, serializedPropertyPath); return(created); }