MCPcopy Create free account
hub / github.com/auxten/postgresql-parser / Eval

Method Eval

pkg/sql/sem/tree/eval.go:4362–4379  ·  view source on GitHub ↗

Eval implements the TypedExpr interface.

(ctx *EvalContext)

Source from the content-addressed store, hash-verified

4360
4361// Eval implements the TypedExpr interface.
4362func (t *ArrayFlatten) Eval(ctx *EvalContext) (Datum, error) {
4363 array, err := arrayOfType(t.ResolvedType())
4364 if err != nil {
4365 return nil, err
4366 }
4367
4368 d, err := t.Subquery.(TypedExpr).Eval(ctx)
4369 if err != nil {
4370 return nil, err
4371 }
4372
4373 tuple, ok := d.(*DTuple)
4374 if !ok {
4375 return nil, errors.AssertionFailedf("array subquery result (%v) is not DTuple", d)
4376 }
4377 array.Array = tuple.D
4378 return array, nil
4379}
4380
4381// Eval implements the TypedExpr interface.
4382func (t *DBitArray) Eval(_ *EvalContext) (Datum, error) {

Callers

nothing calls this directly

Calls 3

arrayOfTypeFunction · 0.85
ResolvedTypeMethod · 0.65
EvalMethod · 0.65

Tested by

no test coverage detected