Esempio n. 1
0
        public Memory(IEnumerable <TElement> datasource, Func <TElement, TKey> indexSelector, bool rootMemory)
        {
            KeyTupleComparerRegister.RegisterDynamic <TKey>();

            var comparer = MasterMemoryComparer <TKey> .Default;

            this.comparers     = MasterMemoryComparer <TKey> .DefaultArray;
            this.orderedData   = FastSort(datasource, indexSelector, comparer);
            this.indexSelector = indexSelector;
            this.rootMemory    = rootMemory;
        }
Esempio n. 2
0
        internal Memory(byte[] bytes, int offset, DirtyTracker tracker, Func <TElement, TKey> indexSelector)
        {
            KeyTupleComparerRegister.RegisterDynamic <TKey>();

            var formatter = ZeroFormatter.Formatters.Formatter <DefaultResolver, IList <TElement> > .Default;
            int size;

            this.orderedData   = formatter.Deserialize(ref bytes, offset, tracker, out size);
            this.indexSelector = indexSelector;
            this.comparers     = MasterMemoryComparer <TKey> .DefaultArray;
            this.rootMemory    = true;
        }