Commit d4da2a21 authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 863312bc
...@@ -50,7 +50,7 @@ sed \ ...@@ -50,7 +50,7 @@ sed \
-e "s/\bbucketState\b/${kind}bucketState/g" \ -e "s/\bbucketState\b/${kind}bucketState/g" \
-e "s/\b_KeyMin\b/_${KEYKIND}KeyMin/g" \ -e "s/\b_KeyMin\b/_${KEYKIND}KeyMin/g" \
-e "s/\b_KeyMax\b/_${KEYKIND}KeyMax/g" \ -e "s/\b_KeyMax\b/_${KEYKIND}KeyMax/g" \
-e "s/\bKeyRange\b/_${KEYKIND}KeyRange/g" \ -e "s/\bKeyRange\b/${KEYKIND}KeyRange/g" \
-e "s/\bkmin\b/${keykind}kmin/g" \ -e "s/\bkmin\b/${keykind}kmin/g" \
-e "s/\bkmax\b/${keykind}kmax/g" \ -e "s/\bkmax\b/${keykind}kmax/g" \
-e "s/\bkstr\b/${keykind}kstr/g" \ -e "s/\bkstr\b/${keykind}kstr/g" \
......
...@@ -174,14 +174,14 @@ func (t *IOBTree) Get(ctx context.Context, key int32) (_ interface{}, _ bool, er ...@@ -174,14 +174,14 @@ func (t *IOBTree) Get(ctx context.Context, key int32) (_ interface{}, _ bool, er
// VGet is like Get but also calls visit while traversing the tree. // VGet is like Get but also calls visit while traversing the tree.
// //
// Visit is called with node being activated. // Visit is called with node being activated.
func (t *IOBTree) VGet(ctx context.Context, key int32, visit func(node IONode, keycov _IKeyRange)) (_ interface{}, _ bool, err error) { func (t *IOBTree) VGet(ctx context.Context, key int32, visit func(node IONode, keycov IKeyRange)) (_ interface{}, _ bool, err error) {
defer xerr.Contextf(&err, "btree(%s): get %v", t.POid(), key) defer xerr.Contextf(&err, "btree(%s): get %v", t.POid(), key)
err = t.PActivate(ctx) err = t.PActivate(ctx)
if err != nil { if err != nil {
return nil, false, err return nil, false, err
} }
keycov := _IKeyRange{Lo: _IKeyMin, Hi_: _IKeyMax} keycov := IKeyRange{Lo: _IKeyMin, Hi_: _IKeyMax}
if visit != nil { if visit != nil {
visit(t, keycov) visit(t, keycov)
} }
...@@ -674,19 +674,19 @@ func init() { ...@@ -674,19 +674,19 @@ func init() {
// XXX place // XXX place
// _IKeyRange represents [lo,hi) key range. // IKeyRange represents [lo,hi) key range.
type _IKeyRange struct { type IKeyRange struct {
Lo int32 Lo int32
Hi_ int32 // NOTE _not_ hi) to avoid overflow at ∞; hi = hi_ + 1 Hi_ int32 // NOTE _not_ hi) to avoid overflow at ∞; hi = hi_ + 1
} }
// Has returns whether key k belongs to the range. // Has returns whether key k belongs to the range.
func (r *_IKeyRange) Has(k int32) bool { func (r *IKeyRange) Has(k int32) bool {
return (r.Lo <= k && k <= r.Hi_) return (r.Lo <= k && k <= r.Hi_)
} }
// Empty returns whether key range is empty. // Empty returns whether key range is empty.
func (r *_IKeyRange) Empty() bool { func (r *IKeyRange) Empty() bool {
hi := r.Hi_ hi := r.Hi_
if hi == _IKeyMax { if hi == _IKeyMax {
// [x,∞] cannot be empty because max x is ∞ and [∞,∞] has one element: ∞ // [x,∞] cannot be empty because max x is ∞ and [∞,∞] has one element: ∞
...@@ -696,7 +696,7 @@ func (r *_IKeyRange) Empty() bool { ...@@ -696,7 +696,7 @@ func (r *_IKeyRange) Empty() bool {
return r.Lo >= hi return r.Lo >= hi
} }
func (r _IKeyRange) String() string { func (r IKeyRange) String() string {
var shi string var shi string
if r.Hi_ == _IKeyMax { if r.Hi_ == _IKeyMax {
shi = ikstr(r.Hi_) // ∞ shi = ikstr(r.Hi_) // ∞
......
...@@ -174,14 +174,14 @@ func (t *LOBTree) Get(ctx context.Context, key int64) (_ interface{}, _ bool, er ...@@ -174,14 +174,14 @@ func (t *LOBTree) Get(ctx context.Context, key int64) (_ interface{}, _ bool, er
// VGet is like Get but also calls visit while traversing the tree. // VGet is like Get but also calls visit while traversing the tree.
// //
// Visit is called with node being activated. // Visit is called with node being activated.
func (t *LOBTree) VGet(ctx context.Context, key int64, visit func(node LONode, keycov _LKeyRange)) (_ interface{}, _ bool, err error) { func (t *LOBTree) VGet(ctx context.Context, key int64, visit func(node LONode, keycov LKeyRange)) (_ interface{}, _ bool, err error) {
defer xerr.Contextf(&err, "btree(%s): get %v", t.POid(), key) defer xerr.Contextf(&err, "btree(%s): get %v", t.POid(), key)
err = t.PActivate(ctx) err = t.PActivate(ctx)
if err != nil { if err != nil {
return nil, false, err return nil, false, err
} }
keycov := _LKeyRange{Lo: _LKeyMin, Hi_: _LKeyMax} keycov := LKeyRange{Lo: _LKeyMin, Hi_: _LKeyMax}
if visit != nil { if visit != nil {
visit(t, keycov) visit(t, keycov)
} }
...@@ -674,19 +674,19 @@ func init() { ...@@ -674,19 +674,19 @@ func init() {
// XXX place // XXX place
// _LKeyRange represents [lo,hi) key range. // LKeyRange represents [lo,hi) key range.
type _LKeyRange struct { type LKeyRange struct {
Lo int64 Lo int64
Hi_ int64 // NOTE _not_ hi) to avoid overflow at ∞; hi = hi_ + 1 Hi_ int64 // NOTE _not_ hi) to avoid overflow at ∞; hi = hi_ + 1
} }
// Has returns whether key k belongs to the range. // Has returns whether key k belongs to the range.
func (r *_LKeyRange) Has(k int64) bool { func (r *LKeyRange) Has(k int64) bool {
return (r.Lo <= k && k <= r.Hi_) return (r.Lo <= k && k <= r.Hi_)
} }
// Empty returns whether key range is empty. // Empty returns whether key range is empty.
func (r *_LKeyRange) Empty() bool { func (r *LKeyRange) Empty() bool {
hi := r.Hi_ hi := r.Hi_
if hi == _LKeyMax { if hi == _LKeyMax {
// [x,∞] cannot be empty because max x is ∞ and [∞,∞] has one element: ∞ // [x,∞] cannot be empty because max x is ∞ and [∞,∞] has one element: ∞
...@@ -696,7 +696,7 @@ func (r *_LKeyRange) Empty() bool { ...@@ -696,7 +696,7 @@ func (r *_LKeyRange) Empty() bool {
return r.Lo >= hi return r.Lo >= hi
} }
func (r _LKeyRange) String() string { func (r LKeyRange) String() string {
var shi string var shi string
if r.Hi_ == _LKeyMax { if r.Hi_ == _LKeyMax {
shi = lkstr(r.Hi_) // ∞ shi = lkstr(r.Hi_) // ∞
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment