示例#1
0
        public static LinkedMemberInfo CreateForCollectionResizer(LinkedMemberHierarchy hierarchy, [NotNull] LinkedMemberInfo parent, [NotNull] Type type, GetSize getSizeDelegate, SetSize setSizeDelegate)
        {
                        #if DEV_MODE && PI_ASSERTATIONS
            Debug.Assert(parent != null, " CreateForCollectionResizer was called with null parent!");
            Debug.Assert(type != null, " CreateForCollectionResizer was called with null type!");
                        #endif

            CollectionResizerData memberData;
            if (!resizerPool.TryGet(out memberData))
            {
                memberData = new CollectionResizerData();
            }
            var created = Create(hierarchy, memberData);
            created.SetupCollectionResizer(parent, type, getSizeDelegate, setSizeDelegate);
            return(created);
        }
示例#2
0
 public static void Dispose(CollectionResizerData memberData)
 {
     resizerPool.Dispose(ref memberData);
 }