internal Enumerator(TreeList <T> .Enumerator enumerator) { _enumerator = enumerator; }
public TreeQueue(int branchingFactor) { _treeList = new TreeList <T>(branchingFactor); }
internal Enumerator(TreeList <T> list) : this(list, list._root.Span) { }
internal override TreeList <TOutput> .Node ConvertAll <TOutput>(Func <T, TOutput> converter, TreeList <TOutput> .Node convertedNextNode) { var result = new TreeList <TOutput> .IndexNode(_nodes.Length); TreeList <TOutput> .Node convertedNextChild = convertedNextNode?.FirstChild; for (int i = _nodeCount - 1; i >= 0; i--) { convertedNextChild = _nodes[i].ConvertAll(converter, convertedNextChild); result._nodes[i] = convertedNextChild; } Array.Copy(_offsets, result._offsets, _nodeCount); result._next = (TreeList <TOutput> .IndexNode)convertedNextNode; result._count = _count; result._nodeCount = _nodeCount; return(result); }
public TreeQueue() { _treeList = new TreeList <T>(); }
public TreeStack() { _treeList = new TreeList <T>(); }
public TreeStack(int branchingFactor) { _treeList = new TreeList <T>(branchingFactor); }
public SortedTreeList(int branchingFactor, IComparer <T> comparer) { _comparer = comparer ?? Comparer <T> .Default; _treeList = new TreeList <T>(branchingFactor); }
public SortedTreeList(IComparer <T> comparer) { _comparer = comparer ?? Comparer <T> .Default; _treeList = new TreeList <T>(); }
internal override TreeList <TOutput> .Node ConvertAll <TOutput>(Func <T, TOutput> converter, TreeList <TOutput> .Node convertedNextNode) { var result = new TreeList <TOutput> .LeafNode(_data.Length); for (int i = _count - 1; i >= 0; i--) { result._data[i] = converter(_data[i]); } result._next = (TreeList <TOutput> .LeafNode)convertedNextNode; result._count = _count; return(result); }
internal override TreeList <TOutput> .Node ConvertAll <TOutput>(Func <T, TOutput> converter, TreeList <TOutput> .Node convertedNextNode) { return(TreeList <TOutput> .Node.Empty); }
internal abstract TreeList <TOutput> .Node ConvertAll <TOutput>(Func <T, TOutput> converter, TreeList <TOutput> .Node convertedNextNode);