public void Setup([NotNull] Type inType, [NotNull] GetSize inGetSize, SetSize inSetSize) { #if DEV_MODE && PI_ASSERTATIONS Debug.Assert(inType != null); Debug.Assert(inGetSize != null); #endif type = inType; getSize = inGetSize; setSize = inSetSize; }
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); }