MCPcopy Create free account
hub / github.com/dolthub/doltgresql / TypeCheck

Method TypeCheck

postgres/parser/sem/tree/type_check.go:561–577  ·  view source on GitHub ↗

TypeCheck implements the Expr interface.

(
	ctx context.Context, semaCtx *SemaContext, desired *types.T,
)

Source from the content-addressed store, hash-verified

559
560// TypeCheck implements the Expr interface.
561func (expr *TupleStar) TypeCheck(
562 ctx context.Context, semaCtx *SemaContext, desired *types.T,
563) (TypedExpr, error) {
564 subExpr, err := expr.Expr.TypeCheck(ctx, semaCtx, desired)
565 if err != nil {
566 return nil, err
567 }
568 expr.Expr = subExpr
569 resolvedType := subExpr.ResolvedType()
570
571 // We need to ensure the expression is a tuple.
572 if resolvedType.Family() != types.TupleFamily {
573 return nil, NewTypeIsNotCompositeError(resolvedType)
574 }
575
576 return subExpr, err
577}
578
579// ResolvedType implements the TypedExpr interface.
580func (expr *TupleStar) ResolvedType() *types.T {

Callers

nothing calls this directly

Calls 4

FamilyMethod · 0.80
TypeCheckMethod · 0.65
ResolvedTypeMethod · 0.65

Tested by

no test coverage detected