Skip to content

Commit

Permalink
Move array based value implementation to values/impl (#63)
Browse files Browse the repository at this point in the history
  • Loading branch information
xichen2020 committed Jan 9, 2019
1 parent 53fb062 commit 0fa364d
Show file tree
Hide file tree
Showing 22 changed files with 623 additions and 581 deletions.
4 changes: 2 additions & 2 deletions index/bool_field.go
Original file line number Diff line number Diff line change
Expand Up @@ -113,14 +113,14 @@ func (f *boolField) Close() {

type builderOfBoolField struct {
dsb docIDSetBuilder
svb boolValuesBuilder
svb values.BoolValuesBuilder

closed bool
}

func newBoolFieldBuilder(
dsb docIDSetBuilder,
svb boolValuesBuilder,
svb values.BoolValuesBuilder,
) *builderOfBoolField {
return &builderOfBoolField{dsb: dsb, svb: svb}
}
Expand Down
106 changes: 0 additions & 106 deletions index/bool_values.go

This file was deleted.

15 changes: 6 additions & 9 deletions index/docs_field.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"fmt"

"github.com/xichen2020/eventdb/document/field"
"github.com/xichen2020/eventdb/values/impl"
"github.com/xichen2020/eventdb/x/pool"

"github.com/pilosa/pilosa/roaring"
Expand Down Expand Up @@ -653,7 +654,7 @@ func (b *docsFieldBuilder) addNull(docID int32) error {
func (b *docsFieldBuilder) addBool(docID int32, v bool) error {
if b.bfb == nil {
docIDsBuilder := b.newDocIDSetBuilder()
boolValuesBuilder := newArrayBasedBoolValues(b.opts.BoolArrayPool())
boolValuesBuilder := impl.NewArrayBasedBoolValues(b.opts.BoolArrayPool())
b.bfb = newBoolFieldBuilder(docIDsBuilder, boolValuesBuilder)
}
return b.bfb.Add(docID, v)
Expand All @@ -662,7 +663,7 @@ func (b *docsFieldBuilder) addBool(docID int32, v bool) error {
func (b *docsFieldBuilder) addInt(docID int32, v int) error {
if b.bfb == nil {
docIDsBuilder := b.newDocIDSetBuilder()
intValuesBuilder := newArrayBasedIntValues(b.opts.IntArrayPool())
intValuesBuilder := impl.NewArrayBasedIntValues(b.opts.IntArrayPool())
b.ifb = newIntFieldBuilder(docIDsBuilder, intValuesBuilder)
}
return b.ifb.Add(docID, v)
Expand All @@ -671,7 +672,7 @@ func (b *docsFieldBuilder) addInt(docID int32, v int) error {
func (b *docsFieldBuilder) addDouble(docID int32, v float64) error {
if b.dfb == nil {
docIDsBuilder := b.newDocIDSetBuilder()
doubleValuesBuilder := newArrayBasedDoubleValues(b.opts.DoubleArrayPool())
doubleValuesBuilder := impl.NewArrayBasedDoubleValues(b.opts.DoubleArrayPool())
b.dfb = newDoubleFieldBuilder(docIDsBuilder, doubleValuesBuilder)
}
return b.dfb.Add(docID, v)
Expand All @@ -680,7 +681,7 @@ func (b *docsFieldBuilder) addDouble(docID int32, v float64) error {
func (b *docsFieldBuilder) addString(docID int32, v string) error {
if b.sfb == nil {
docIDsBuilder := b.newDocIDSetBuilder()
stringValuesBuilder := newArrayBasedStringValues(b.opts.StringArrayPool())
stringValuesBuilder := impl.NewArrayBasedStringValues(b.opts.StringArrayPool())
b.sfb = newStringFieldBuilder(docIDsBuilder, stringValuesBuilder)
}
return b.sfb.Add(docID, v)
Expand All @@ -689,16 +690,12 @@ func (b *docsFieldBuilder) addString(docID int32, v string) error {
func (b *docsFieldBuilder) addTime(docID int32, v int64) error {
if b.tfb == nil {
docIDsBuilder := b.newDocIDSetBuilder()
timeValuesBuilder := newArrayBasedTimeValues(b.opts.Int64ArrayPool())
timeValuesBuilder := impl.NewArrayBasedTimeValues(b.opts.Int64ArrayPool())
b.tfb = newTimeFieldBuilder(docIDsBuilder, timeValuesBuilder)
}
return b.tfb.Add(docID, v)
}

const (
defaultInitialFieldValuesCapacity = 64
)

// DocsFieldBuilderOptions provide a set of options for the field builder.
type DocsFieldBuilderOptions struct {
boolArrayPool *pool.BucketizedBoolArrayPool
Expand Down
4 changes: 2 additions & 2 deletions index/double_field.go
Original file line number Diff line number Diff line change
Expand Up @@ -113,14 +113,14 @@ func (f *doubleField) Close() {

type builderOfDoubleField struct {
dsb docIDSetBuilder
svb doubleValuesBuilder
svb values.DoubleValuesBuilder

closed bool
}

func newDoubleFieldBuilder(
dsb docIDSetBuilder,
svb doubleValuesBuilder,
svb values.DoubleValuesBuilder,
) *builderOfDoubleField {
return &builderOfDoubleField{dsb: dsb, svb: svb}
}
Expand Down
114 changes: 0 additions & 114 deletions index/double_values.go

This file was deleted.

4 changes: 2 additions & 2 deletions index/int_field.go
Original file line number Diff line number Diff line change
Expand Up @@ -113,14 +113,14 @@ func (f *intField) Close() {

type builderOfIntField struct {
dsb docIDSetBuilder
svb intValuesBuilder
svb values.IntValuesBuilder

closed bool
}

func newIntFieldBuilder(
dsb docIDSetBuilder,
svb intValuesBuilder,
svb values.IntValuesBuilder,
) *builderOfIntField {
return &builderOfIntField{dsb: dsb, svb: svb}
}
Expand Down
Loading

0 comments on commit 0fa364d

Please sign in to comment.