Enhanced C#
Language of your choice: library documentation
Classes | Enumerations
Loyc.Collections.Impl Namespace Reference

Contains helper classes and base classes for implementing collections (Loyc.Collections.Impl.InternalList<T>, Loyc.Collections.Impl.ListExBase<T>, Loyc.Collections.Impl.ListSourceBase<T>, etc.) Also contains the AList and CPTrie node classes, which perhaps should not be public... More...

Classes

class  AListIndexer
 Observes changes and builds a table of items in the tree. More...
 
class  AListInnerBase
 Internal implementation class. Shared base class of internal nodes for AList<T>, SparseAList<T>, BList<T>, BMultiMap<K,V> and BDictionary<K,V>. More...
 
class  AListLeaf
 Internal implementation class. Shared code of non-sparse AList leaf nodes. More...
 
class  AListNode
 Internal implementation class. Base class for tree nodes in a list class derived from AListBase<T>. These nodes basically form an in-memory B+tree, not necessarily sorted, but structured like a B+tree. That means there are two node types: leaf and inner (internal) nodes. More...
 
class  AListTreeObserverExt
 Helper methods for IAListTreeObserver<K,T>. More...
 
class  BaseDictionary
 A base class for user-defined dictionaries that want to implement both IDictionary(K,V) and IReadOnlyDictionary(K, V). More...
 
class  BListLeaf
 Internal implementation class. Leaf node of BList<T> and BDictionary<K,V>. More...
 
class  CPByteTrie
 A compact patricia trie that uses byte arrays as keys. More...
 
class  CPEnumerator
 Traverses a CPTrie<T>. Returned by CPTrie<T>.ValueEnumerator(). More...
 
class  CPIntTrie
 A trie that supports signed and unsigned keys with sizes up to 64 bits. Special encodings are used to preserve the sort order among integers of different sizes while using variable-length keys. More...
 
class  EnumeratorFrame
 A standard base class for enumerator frames used by NestedEnumerator{EnumeratorFrame{T},T}. More...
 
interface  IAListTreeObserver
 An interface that is called to notify observers when items or nodes in the tree of a class derived from AListBase<K,T> (e.g. AList or BList) are added or removed. More...
 
interface  IEnumeratorFrame
 Helper interface for NestedEnumerator<Frame, T>. More...
 
struct  InternalDList
 A compact auto-enlarging deque structure that is intended to be used within other data structures. It should only be used internally in "private" or "protected" members of low-level code. In most cases, you should use DList<T> instead. More...
 
class  InternalList
 A compact auto-enlarging array structure that is intended to be used within other data structures. It should only be used internally in "private" or "protected" members of low-level code. More...
 
struct  InternalSet
 A hash-trie data structure for use inside other data structures. More...
 
struct  InternalSetStats
 Statistics returned from InternalSet<T>.CountMemory. More...
 
class  KeylessHashtable
 A fairly obscure space-saving hashtable that offers no built-in way to store keys, only values. Because there are no keys, the hashtable cannot be rehashed when it is full, and searching for a given key finds all values in the same bucket, some of which may be unrelated. More...
 
class  KeylessHashtableTests
 
struct  KeyWalker
 Internal implementation class. Represents a pointer to a location within a byte array. More...
 
class  ListExBase
 A base class for classes that wish to implement IListEx<T>. Provides default implementations for most of the methods. More...
 
class  ListSourceBase
 A base class for read-only collections that wish to implement IList<T> and IListSource<T>. Provides default implementations for most of the methods. More...
 
class  ReadOnlyCollectionBase
 Helps you implement read-only collections by providing default implementations for most methods of ICollection<T> and IReadOnlyCollection<T>. More...
 
struct  SCell
 Standard cell, used to encode keys in a CPSNode More...
 
class  SparseAListLeaf
 Internal implementation class. Leaf node of SparseAList<T>. More...
 
class  TestHelpers
 Helpers methods for unit tests, especially used by Loyc collection classes but sometimes useful in other cases. More...
 

Enumerations

enum  CPMode {
  Create = 1, Set = 2, Find = 0,
  FixedStructure = 4
}
 

Detailed Description

Contains helper classes and base classes for implementing collections (Loyc.Collections.Impl.InternalList<T>, Loyc.Collections.Impl.ListExBase<T>, Loyc.Collections.Impl.ListSourceBase<T>, etc.) Also contains the AList and CPTrie node classes, which perhaps should not be public...