本文整理汇总了Golang中github.com/couchbase/query/expression.Expression.String方法的典型用法代码示例。如果您正苦于以下问题:Golang Expression.String方法的具体用法?Golang Expression.String怎么用?Golang Expression.String使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/couchbase/query/expression.Expression
的用法示例。
在下文中一共展示了Expression.String方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: minimalIndexes
func minimalIndexes(sargables map[datastore.Index]*indexEntry, pred expression.Expression) (
map[datastore.Index]*indexEntry, error) {
for s, se := range sargables {
for t, te := range sargables {
if t == s {
continue
}
if narrowerOrEquivalent(se, te) {
delete(sargables, t)
}
}
}
minimals := make(map[datastore.Index]*indexEntry, len(sargables))
for s, se := range sargables {
spans, err := SargFor(pred, se.sargKeys, len(se.keys))
if err != nil || len(spans) == 0 {
logging.Errorp("Sargable index not sarged", logging.Pair{"pred", pred},
logging.Pair{"sarg_keys", se.sargKeys}, logging.Pair{"error", err})
return nil, errors.NewPlanError(nil, fmt.Sprintf("Sargable index not sarged; pred=%v, sarg_keys=%v, error=%v",
pred.String(), se.sargKeys.String(), err))
return nil, err
}
se.spans = spans
minimals[s] = se
}
return minimals, nil
}
示例2: NewPair
/*
Create a key value pair using the operands of the input
expression Array construct and return.
*/
func NewPair(expr expression.Expression) (*Pair, error) {
array, ok := expr.(*expression.ArrayConstruct)
if !ok {
return nil, fmt.Errorf("Invalid VALUES expression %s", expr.String())
}
operands := array.Operands()
if len(operands) != 2 {
return nil, fmt.Errorf("Invalid VALUES expression %s", expr.String())
}
pair := &Pair{
Key: operands[0],
Value: operands[1],
}
return pair, nil
}