예제 #1
0
        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);
        }
예제 #2
0
        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);
        }
예제 #3
0
        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);
        }
예제 #4
0
        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);
        }