本文整理匯總了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
}