private static void AddSegmentItem(ref BufferSegment segment, ref TSize count, T item) { if (segment.IsFull) { Size.AddWith(ref count, segment.Count); int segmentCapacity = CalculateNextNodeCapacity(segment.Capacity); segment.NextSegment = new BufferSegment(segmentCapacity); segment = segment.NextSegment; } segment.Add(item); }