github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/syndtr/goleveldb/leveldb/filter.go (about)

     1  // Copyright (c) 2012, Suryandaru Triandana <syndtr@gmail.com>
     2  // All rights reserved.
     3  //
     4  // Use of this source code is governed by a BSD-style license that can be
     5  // found in the LICENSE file.
     6  
     7  package leveldb
     8  
     9  import (
    10  	"github.com/insionng/yougam/libraries/syndtr/goleveldb/leveldb/filter"
    11  )
    12  
    13  type iFilter struct {
    14  	filter.Filter
    15  }
    16  
    17  func (f iFilter) Contains(filter, key []byte) bool {
    18  	return f.Filter.Contains(filter, internalKey(key).ukey())
    19  }
    20  
    21  func (f iFilter) NewGenerator() filter.FilterGenerator {
    22  	return iFilterGenerator{f.Filter.NewGenerator()}
    23  }
    24  
    25  type iFilterGenerator struct {
    26  	filter.FilterGenerator
    27  }
    28  
    29  func (g iFilterGenerator) Add(key []byte) {
    30  	g.FilterGenerator.Add(internalKey(key).ukey())
    31  }