segment

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 5, 2018 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MaxVarintSize = 9

	// IntMin is chosen such that the range of int tags does not overlap the
	// ascii character set that is frequently used in testing.
	IntMin = 0x80 // 128

	// IntMax is the maximum int tag value.
	IntMax = 0xfd // 253
)

Variables

This section is empty.

Functions

func DecodeUvarintAscending

func DecodeUvarintAscending(b []byte) ([]byte, uint64, error)

DecodeUvarintAscending decodes a varint encoded uint64 from the input buffer. The remainder of the input buffer and the decoded uint64 are returned.

func EncodeUvarintAscending

func EncodeUvarintAscending(b []byte, v uint64) []byte

EncodeUvarintAscending encodes the uint64 value using a variable length (length-prefixed) representation. The length is encoded as a single byte indicating the number of encoded bytes (-8) to follow. See EncodeVarintAscending for rationale. The encoded bytes are appended to the supplied buffer and the final buffer is returned.

Types

type DictionaryIterator

type DictionaryIterator interface {
	Next() (*index.DictEntry, error)
}

type DocumentFieldTermVisitable

type DocumentFieldTermVisitable interface {
	VisitDocumentFieldTerms(localDocNum uint64, fields []string,
		visitor index.DocumentFieldTermVisitor) error
}

DocumentFieldTermVisitable is implemented by various scorch segment implementations to provide the un inverting of the postings or other indexed values.

type DocumentFieldValueVisitor

type DocumentFieldValueVisitor func(field string, typ byte, value []byte, pos []uint64) bool

DocumentFieldValueVisitor defines a callback to be visited for each stored field value. The return value determines if the visitor should keep going. Returning true continues visiting, false stops.

type EmptyDictionary

type EmptyDictionary struct{}

func (*EmptyDictionary) Iterator

func (e *EmptyDictionary) Iterator() DictionaryIterator

func (*EmptyDictionary) PostingsList

func (e *EmptyDictionary) PostingsList(term string,
	except *roaring.Bitmap) (PostingsList, error)

func (*EmptyDictionary) PrefixIterator

func (e *EmptyDictionary) PrefixIterator(prefix string) DictionaryIterator

func (*EmptyDictionary) RangeIterator

func (e *EmptyDictionary) RangeIterator(start, end string) DictionaryIterator

type EmptyDictionaryIterator

type EmptyDictionaryIterator struct{}

func (*EmptyDictionaryIterator) Next

type EmptyPostingsIterator

type EmptyPostingsIterator struct{}

func (*EmptyPostingsIterator) Next

func (e *EmptyPostingsIterator) Next() (Posting, error)

type EmptyPostingsList

type EmptyPostingsList struct{}

func (*EmptyPostingsList) Count

func (e *EmptyPostingsList) Count() uint64

func (*EmptyPostingsList) Iterator

func (e *EmptyPostingsList) Iterator() PostingsIterator

type EmptySegment

type EmptySegment struct{}

func (*EmptySegment) AddRef

func (e *EmptySegment) AddRef()

func (*EmptySegment) Close

func (e *EmptySegment) Close() error

func (*EmptySegment) Count

func (e *EmptySegment) Count() uint64

func (*EmptySegment) DecRef

func (e *EmptySegment) DecRef() error

func (*EmptySegment) Dictionary

func (e *EmptySegment) Dictionary(field string) (TermDictionary, error)

func (*EmptySegment) DocNumbers

func (e *EmptySegment) DocNumbers([]string) (*roaring.Bitmap, error)

func (*EmptySegment) Fields

func (e *EmptySegment) Fields() []string

func (*EmptySegment) VisitDocument

func (e *EmptySegment) VisitDocument(num uint64, visitor DocumentFieldValueVisitor) error

type Location

type Location interface {
	Field() string
	Start() uint64
	End() uint64
	Pos() uint64
	ArrayPositions() []uint64
}

type Posting

type Posting interface {
	Number() uint64

	Frequency() uint64
	Norm() float64

	Locations() []Location
}

type PostingsIterator

type PostingsIterator interface {
	// The caller is responsible for copying whatever it needs from
	// the returned Posting instance before calling Next(), as some
	// implementations may return a shared instance to reduce memory
	// allocations.
	Next() (Posting, error)
}

type PostingsList

type PostingsList interface {
	Iterator() PostingsIterator

	Count() uint64
}

type Segment

type Segment interface {
	Dictionary(field string) (TermDictionary, error)

	VisitDocument(num uint64, visitor DocumentFieldValueVisitor) error
	Count() uint64

	DocNumbers([]string) (*roaring.Bitmap, error)

	Fields() []string

	Close() error

	SizeInBytes() uint64

	AddRef()
	DecRef() error
}

type TermDictionary

type TermDictionary interface {
	PostingsList(term string, except *roaring.Bitmap) (PostingsList, error)

	Iterator() DictionaryIterator
	PrefixIterator(prefix string) DictionaryIterator
	RangeIterator(start, end string) DictionaryIterator
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL