github.com/cellofellow/gopkg@v0.0.0-20140722061823-eec0544a62ad/database/leveldb.chai2010/include/table/merger.h (about)

     1  // Copyright (c) 2011 The LevelDB Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style license that can be
     3  // found in the LICENSE file. See the AUTHORS file for names of contributors.
     4  
     5  #ifndef STORAGE_LEVELDB_TABLE_MERGER_H_
     6  #define STORAGE_LEVELDB_TABLE_MERGER_H_
     7  
     8  namespace leveldb {
     9  
    10  class Comparator;
    11  class Iterator;
    12  
    13  // Return an iterator that provided the union of the data in
    14  // children[0,n-1].  Takes ownership of the child iterators and
    15  // will delete them when the result iterator is deleted.
    16  //
    17  // The result does no duplicate suppression.  I.e., if a particular
    18  // key is present in K child iterators, it will be yielded K times.
    19  //
    20  // REQUIRES: n >= 0
    21  extern Iterator* NewMergingIterator(
    22      const Comparator* comparator, Iterator** children, int n);
    23  
    24  }  // namespace leveldb
    25  
    26  #endif  // STORAGE_LEVELDB_TABLE_MERGER_H_