package
25.1.0+incompatible
Repository: https://github.com/cockroachdb/cockroach.git
Documentation: pkg.go.dev

# Packages

Command evalgen is used to generate interfaces and "visitor" methods for expr and op evaluation.
Package treebin contains the implementation-agnostic information about all binary operators that we support.
Package treecmp contains the implementation-agnostic information about all comparison operators that we support.
Package treewindow contains some constants describing window-function specific options.

# Functions

AdjustValueToType checks that the width (for strings, byte arrays, and bit strings) and scale (decimal).
AnalyzeDoBlockOptions checks the list of DO block options for validity, and returns the code string.
AppendToMaybeNullArray appends an element to an array.
ArrayContains return true if the haystack contains all needles.
ArrayOfFirstNonNullReturnType returns an array type from the first non-null type in the argument list.
ArrayOverlaps return true if there is even one element common between the left and right arrays.
AsDArray attempts to retrieve a *DArray from an Expr, returning a *DArray and a flag signifying whether the assertion was successful.
AsDBitArray attempts to retrieve a *DBitArray from an Expr, returning a *DBitArray and a flag signifying whether the assertion was successful.
AsDBool attempts to retrieve a *DBool from an Expr, returning a *DBool and a flag signifying whether the assertion was successful.
AsDBox2D attempts to retrieve a *DBox2D from an Expr, returning a *DBox2D and a flag signifying whether the assertion was successful.
AsDBytes attempts to convert an Expr into a DBytes, returning a flag indicating whether it was successful.
AsDCollatedString attempts to retrieve a DString from an Expr, returning a AsDCollatedString and a flag signifying whether the assertion was successful.
AsDDate attempts to retrieve a DDate from an Expr, returning a DDate and a flag signifying whether the assertion was successful.
AsDDecimal attempts to retrieve a DDecimal from an Expr, returning a DDecimal and a flag signifying whether the assertion was successful.
AsDEnum attempts to retrieve a DEnum from an Expr, returning a DEnum and a flag signifying whether the assertion was successful.
AsDFloat attempts to retrieve a DFloat from an Expr, returning a DFloat and a flag signifying whether the assertion was successful.
AsDGeography attempts to retrieve a *DGeography from an Expr, returning a *DGeography and a flag signifying whether the assertion was successful.
AsDGeometry attempts to retrieve a *DGeometry from an Expr, returning a *DGeometry and a flag signifying whether the assertion was successful.
AsDInt attempts to retrieve a DInt from an Expr, returning a DInt and a flag signifying whether the assertion was successful.
AsDInterval attempts to retrieve a DInterval from an Expr, returning a DInterval and a flag signifying whether the assertion was successful.
AsDIPAddr attempts to retrieve a *DIPAddr from an Expr, returning a *DIPAddr and a flag signifying whether the assertion was successful.
AsDJSON attempts to retrieve a *DJSON from an Expr, returning a *DJSON and a flag signifying whether the assertion was successful.
AsDOid attempts to retrieve a DOid from an Expr, returning a DOid and a flag signifying whether the assertion was successful.
AsDPGLSN attempts to retrieve a *DPGLSN from an Expr, returning a *DPGLSN and a flag signifying whether the assertion was successful.
AsDPGVector attempts to retrieve a DPGVector from an Expr, returning a DPGVector and a flag signifying whether the assertion was successful.
AsDString attempts to retrieve a DString from an Expr, returning a DString and a flag signifying whether the assertion was successful.
AsDTime attempts to retrieve a DTime from an Expr, returning a DTimestamp and a flag signifying whether the assertion was successful.
AsDTimestamp attempts to retrieve a DTimestamp from an Expr, returning a DTimestamp and a flag signifying whether the assertion was successful.
AsDTimestampTZ attempts to retrieve a DTimestampTZ from an Expr, returning a DTimestampTZ and a flag signifying whether the assertion was successful.
AsDTimeTZ attempts to retrieve a DTimeTZ from an Expr, returning a DTimeTZ and a flag signifying whether the assertion was successful.
AsDTSQuery attempts to retrieve a DTSQuery from an Expr, returning a DTSQuery and a flag signifying whether the assertion was successful.
AsDTSVector attempts to retrieve a DTSVector from an Expr, returning a DTSVector and a flag signifying whether the assertion was successful.
AsDTuple attempts to retrieve a *DTuple from an Expr, returning a *DTuple and a flag signifying whether the assertion was successful.
AsDUuid attempts to retrieve a DUuid from an Expr, returning a DUuid and a flag signifying whether the assertion was successful.
AsJSON converts a datum into our standard json representation.
AsRoutineLanguage converts a string to a RoutineLanguage if applicable.
AsString pretty prints a node to a string.
AsStringWithFlags pretty prints a node to a string given specific flags; only flags that don't require Annotations can be used.
AsStringWithFQNames pretty prints a node to a string with the FmtAlwaysQualifyTableNames flag (which requires annotations).
CanModifySchema returns true if the statement can modify the database schema.
CanWriteData returns true if the statement can modify data.
ChangefeedTargetFromTableExpr returns ChangefeedTarget for the specified table expression.
CheckIsWindowOrAgg returns an error if the function definition is not a window function or an aggregate.
CheckUnsupportedType returns an error if the given type is not supported by the current cluster version.
CmpOpInverse returns the inverse of the comparison operator if it exists.
CompareBools compares the input bools according to the SQL comparison rules.
CompareDecimals compares 2 apd.Decimals according to the SQL comparison rules, making sure that NaNs sort first.
ComputeColNameInternal is the workhorse for GetRenderColName.
ConcatArrays concatenates two arrays.
ContainsVars returns true if the expression contains any variables.
DatumNext returns a datum that is "next" to the given one.
DatumPrev returns a datum that is "previous" to the given one.
DatumTypeSize returns a lower bound on the total size of a Datum of the given type in bytes, including memory that is pointed at (even if shared between Datum instances) but excluding allocation overhead.
DefaultPrettyCfg returns a PrettyCfg with the default configuration.
EqualComparisonFunctionExists looks up an overload of the "=" operator for a given pair of input operand types.
ErrNameString escapes an identifier stored a string to a SQL identifier suitable for printing in error messages.
ErrNameStringP escapes an identifier stored a string to a SQL identifier suitable for printing in error messages, avoiding a heap allocation.
ErrString pretty prints a node to a string.
ExplainFlags returns a map from EXPLAIN flag strings to ExplainFlag.
ExplainModes returns a map from EXPLAIN mode strings to ExplainMode.
ExprDebugString generates a multi-line debug string with one node per line in Go format.
FindBinaryOverload finds the correct type signature overload for the specified binary operator, given the types of its inputs.
FirstNonNullReturnType returns the type of the first non-null argument, or types.Unknown if all arguments are null.
FixedReturnType functions simply return a fixed type, independent of argument types.
FmtAnnotations adds annotations to the FmtCtx.
FmtDataConversionConfig modifies FmtCtx to contain items relevant for the given DataConversionConfig.
FmtIndexedTypeFormat modifies FmtCtx to customize the printing of IDTypeReferences using the provided function.
FmtIndexedVarFormat modifies FmtCtx to customize the printing of IndexedVars using the provided function.
FmtLocation modifies FmtCtx to contain the correct location.
FmtPlaceholderFormat modifies FmtCtx to customize the printing of StarDatums using the provided function.
FmtReformatTableNames modifies FmtCtx to substitute the printing of table naFmtParsable using the provided function.
FoldComparisonExpr folds a given comparison operation and its expressions into an equivalent operation that will hit in the CmpOps map, returning this new operation, along with potentially flipped operands and "flipped" and "not" flags.
FoldComparisonExprWithDatums is the same as FoldComparisonExpr, but receives and returns Datums instead of Exprs.
FormatBitArrayToType formats bit arrays such that they fill the total width if too short, or truncate if too long.
FormatDate writes d into ctx according to the format flags.
FormatDuration writes d into ctx according to the format flags.
FromKVIsoLevel converts an isolation.Level to its SQL semantic equivalent.
GetBool gets DBool or an error (also treats NULL as false, not an error).
GetBuiltinFuncDefinition search for a builtin function given a function name and a search path.
GetBuiltinFuncDefinitionOrFail is similar to GetBuiltinFuncDefinition but returns an error if function is not found.
GetBuiltinFunctionByOIDOrFail retrieves a builtin function by OID.
GetEnumComponentsFromLogicalRep returns the physical and logical components for an enum of the requested type.
GetEnumComponentsFromPhysicalRep returns the physical and logical components for an enum of the requested type.
GetJSONPath is used for the #> and #>> operators.
GetParamsAndReturnType gets the parameters and return type of an overloadImpl.
GetRenderColName computes a name for a result column.
GetRoutineVolatility tries to find a function volatility from the given list of function options.
GetSchemaFeatureNameFromStmt takes a statement and converts it to a schema feature name, which can be enabled or disabled via a feature flag.
GetStaticallyKnownType possibly promotes a ResolvableTypeReference into a *types.T if the reference is a statically known type.
GetTableType returns a string representing the type of table the command is operating on.
HasReturningClause determines if a ReturningClause is present, given a variant of the ReturningClause interface.
IdentityReturnType creates a returnType that is a projection of the idx'th argument type.
InferBinaryType infers the return type of a binary expression, given the type of its inputs.
InferTypes takes a list of strings produced by ParsePath and returns a slice of datum types inferred from the strings.
IntToOid is a helper that turns a DInt into an oid.Oid and checks that the value is in range.
IsAllowedLDRSchemaChange returns true if the schema change statement is allowed to occur while the table is being referenced by a logical data replication job as a destination table.
IsInParamClass returns true if the given parameter class specifies an input parameter (i.e.
IsOutParamClass returns true if the given parameter class specifies an output parameter (i.e.
IsReferenceSerialType returns whether the input reference is a known serial type.
IsSetOrResetSchemaLocked returns true if `n` contains a command to set/reset "schema_locked" storage parameter.
IsUnaryComplement returns whether op is a unary complement operator.
JSONExistsAny return true if any value in dArray is exist in the json.
LimitDecimalWidth limits d's precision (total number of digits) and scale (number of digits after the decimal point).
MakeAllDEnumsInType generates a slice of all values in an enum.
MakeAnnotations allocates an annotations container of the given size.
MakeColumnItem constructs a column item from an already valid TableName.
MakeDBitArray returns a DBitArray.
MakeDBool converts its argument to a *DBool, returning either DBoolTrue or DBoolFalse.
MakeDDate makes a DDate from a pgdate.Date.
MakeDEnumFromLogicalRepresentation creates a DEnum of the input type and input logical representation.
MakeDEnumFromPhysicalRepresentation creates a DEnum of the input type and the input physical representation.
MakeDJSON returns a JSON value given a Go-style representation of JSON.
MakeDOid is a helper routine to create a DOid initialized from a DInt.
MakeDTime creates a DTime from a TimeOfDay.
MakeDTimestamp creates a DTimestamp with specified precision.
MakeDTimestampTZ creates a DTimestampTZ with specified precision.
MakeDTimestampTZFromDate creates a DTimestampTZ from a DDate.
MakeDTuple creates a DTuple with the provided datums.
MakeExplain parses the EXPLAIN option strings and generates an Explain or ExplainAnalyze statement.
MakeIndexedVarHelper initializes an IndexedVarHelper structure.
MakeIndexedVarHelperWithTypes creates an IndexedVarHelper which provides the given types for indexed vars.
MakeParseError returns a parse error using the provided string and type.
MakeQualifiedOverload creates a new QualifiedOverload.
MakeQualifiedRoutineName constructs a RoutineName with the given db and schema name as prefix.
MakeQualifiedTypeName creates a fully qualified type name.
MakeRoleSpecWithRoleName creates a RoleSpec using a RoleName.
MakeRoutineNameFromPrefix returns a RoutineName with the given prefix and function name.
MakeSchemaQualifiedTypeName returns a new type name.
MakeSemaContext initializes a simple SemaContext suitable for "lightweight" type checking such as the one performed for default expressions.
MakeTableNameFromPrefix creates a table name from an unqualified name and a resolved prefix.
MakeTableNameWithSchema creates a new fully qualified table name.
MakeTestingMapTypeResolver creates a TestingMapTypeResolver from a map.
MakeTriggerEventTypeSet creates a TriggerEventTypeSet from a list of TriggerEventType values.
MakeTypeNameWithPrefix creates a type name with the provided prefix.
MakeUnaryOperator creates a UnaryOperator given a symbol.
MakeUnqualifiedTableName creates a new base table name.
MakeUnqualifiedTypeName returns a new type name.
MakeUnresolvedFunctionName returns a new UnresolvedFunctionName containing the give UnresolvedName.
MakeUnresolvedName constructs an UnresolvedName from some strings.
MakeUnresolvedObjectName creates an unresolved object name, verifying that it is well-formed.
MakeUnresolvedProcedureName returns a new UnresolvedProcedureName containing the give UnresolvedName.
MaxDistinctCount returns the maximum number of distinct values between the given datums (inclusive).
MemoizeComparisonExprOp populates the Op field of the ComparisonExpr.
MockNameTypes populates presetTypesForTesting for a test.
MustBeDArray attempts to retrieve a *DArray from an Expr, panicking if the assertion fails.
MustBeDBitArray attempts to retrieve a DBitArray from an Expr, panicking if the assertion fails.
MustBeDBool attempts to retrieve a DBool from an Expr, panicking if the assertion fails.
MustBeDBox2D attempts to retrieve a *DBox2D from an Expr, panicking if the assertion fails.
MustBeDBytes attempts to convert an Expr into a DBytes, panicking if unsuccessful.
MustBeDDate attempts to retrieve a DDate from an Expr, panicking if the assertion fails.
MustBeDDecimal attempts to retrieve a DDecimal from an Expr, panicking if the assertion fails.
MustBeDFloat attempts to retrieve a DFloat from an Expr, panicking if the assertion fails.
MustBeDGeography attempts to retrieve a *DGeography from an Expr, panicking if the assertion fails.
MustBeDGeometry attempts to retrieve a *DGeometry from an Expr, panicking if the assertion fails.
MustBeDInt attempts to retrieve a DInt from an Expr, panicking if the assertion fails.
MustBeDInterval attempts to retrieve a DInterval from an Expr, panicking if the assertion fails.
MustBeDIPAddr attempts to retrieve a DIPAddr from an Expr, panicking if the assertion fails.
MustBeDJSON attempts to retrieve a DJSON from an Expr, panicking if the assertion fails.
MustBeDOid attempts to retrieve a DOid from an Expr, panicking if the assertion fails.
MustBeDPGLSN attempts to retrieve a *DPGLSN from an Expr, panicking if the assertion fails.
MustBeDPGVector attempts to retrieve a DPGVector from an Expr, panicking if the assertion fails.
MustBeDString attempts to retrieve a DString from an Expr, panicking if the assertion fails.
MustBeDStringOrDNull attempts to retrieve a DString or DNull from an Expr, panicking if the assertion fails.
MustBeDTimestamp attempts to retrieve a DTimestamp from an Expr, panicking if the assertion fails.
MustBeDTimestampTZ attempts to retrieve a DTimestampTZ from an Expr, panicking if the assertion fails.
MustBeDTSQuery attempts to retrieve a DTSQuery from an Expr, panicking if the assertion fails.
MustBeDTSVector attempts to retrieve a DTSVector from an Expr, panicking if the assertion fails.
MustBeDTuple attempts to retrieve a *DTuple from an Expr, panicking if the assertion fails.
MustBeDUuid attempts to retrieve a DUuid from an Expr, panicking if the assertion fails.
MustBeStaticallyKnownType does the same thing as GetStaticallyKnownType but panics in the case that the reference is not statically known.
MustMakeDTimestamp wraps MakeDTimestamp but panics if there is an error.
MustMakeDTimestampTZ wraps MakeDTimestampTZ but panics if there is an error.
NameString escapes an identifier stored in a string to a SQL identifier.
NameStringP escapes an identifier stored in a heap string to a SQL identifier, avoiding a heap allocation.
NewAggInAggError creates an error for the case when an aggregate function is contained within another aggregate function.
NewBinExprIfValidOverload constructs a new BinaryExpr if and only if the pair of arguments have a valid implementation for the given BinaryOperator.
NewBytesStrVal constructs a StrVal instance suitable as byte array.
NewCannotMixBitArraySizesError creates an error for the case when a bitwise aggregate function is called on bit arrays with different sizes.
NewColumnItem constructs a column item from an already valid TableName.
NewColumnTableDef constructs a column definition for a CreateTable statement.
NewContextDependentOpsNotAllowedError creates an error for the case when context-dependent operators are not allowed in the given context.
NewDArray returns a DArray containing elements of the specified type.
NewDBitArray returns a DBitArray.
NewDBitArrayFromInt creates a bit array from the specified integer at the specified width.
NewDBox2D returns a new Box2D Datum.
NewDBytes is a helper routine to create a *DBytes initialized from its argument.
NewDCollatedString is a helper routine to create a *DCollatedString.
NewDDate is a helper routine to create a *DDate initialized from its argument.
NewDDateFromTime constructs a *DDate from a time.Time.
NewDefaultDatum returns a default non-NULL datum value for the given type.
NewDEncodedKey is a helper routine to create a *DEncodedKey initialized from its argument.
NewDEnum initializes a new DEnum from its argument.
NewDFloat is a helper routine to create a *DFloat initialized from its argument.
NewDGeography returns a new Geography Datum.
NewDGeometry returns a new Geometry Datum.
NewDInt is a helper routine to create a *DInt initialized from its argument.
NewDInterval creates a new DInterval.
NewDIntVectorFromDArray is a helper routine to create a new *DArray, initialized from an existing *DArray, with the special oid for IntVector.
NewDIPAddr is a helper routine to create a *DIPAddr initialized from its argument.
NewDJSON is a helper routine to create a DJSON initialized from its argument.
NewDName is a helper routine to create a *DName (implemented as a *DOidWrapper) initialized from a string.
NewDNameFromDString is a helper routine to create a *DName (implemented as a *DOidWrapper) initialized from an existing *DString.
NewDOid is a helper routine to create a *DOid initialized from a DInt.
NewDOidVectorFromDArray is a helper routine to create a new *DArray, initialized from an existing *DArray, with the special oid for OidVector.
NewDOidWithType constructs a DOid with the given type and no name.
NewDOidWithTypeAndName constructs a DOid with the given type and name.
NewDPGLSN returns a new PGLSN Datum.
NewDPGVector returns a new PGVector Datum.
NewDRefCursor is a helper routine to create a *DRefCursor (implemented as a *DOidWrapper) initialized from a string.
NewDRefCursorFromDString is a helper routine to create a *DRefCursor (implemented as a *DOidWrapper) initialized from an existing *DString.
NewDString is a helper routine to create a *DString initialized from its argument.
NewDTimeTZ creates a DTimeTZ from a timetz.TimeTZ.
NewDTimeTZFromLocation creates a DTimeTZ from a TimeOfDay and time.Location.
NewDTimeTZFromOffset creates a DTimeTZ from a TimeOfDay and offset.
NewDTimeTZFromTime creates a DTimeTZ from time.Time.
NewDTSQuery is a helper routine to create a DTSQuery initialized from its argument.
NewDTSVector is a helper routine to create a DTSVector initialized from its argument.
NewDTuple creates a *DTuple with the provided datums.
NewDTupleWithLen creates a *DTuple with the provided length.
NewDUuid is a helper routine to create a *DUuid initialized from its argument.
NewFmtCtx creates a FmtCtx; only flags that don't require Annotations can be used.
NewFunctionDefinition allocates a function definition corresponding to the given built-in definition.
NewInvalidFunctionUsageError creates a rejection for a special function.
NewInvalidNestedSRFError creates a rejection for a nested SRF.
NewNoValueProvidedForPlaceholderErr constructs an error indicating a missing placeholder value.
NewNumVal constructs a new NumVal instance.
NewOrdinalReference is a helper routine to create a standalone IndexedVar with the given index value.
NewParseContext constructs a ParseContext that returns the given values.
NewParseContextOptionDateStyle sets the DateStyle for the context.
NewPlaceholder allocates a Placeholder.
NewQualifiedTypeName returns a fully qualified type name.
NewRegexpCache creates a new RegexpCache of the given size.
NewStrVal constructs a StrVal instance.
NewTableNameWithSchema creates a new table name qualified with a given catalog and schema.
NewTimestampExceedsBoundsError returns a new "exceeds supported timestamp bounds" error for the given timestamp, with the correct pgcode.
NewTxnControlExpr returns a new TxnControlExpr that is well-typed.
NewTypedAndExpr returns a new AndExpr that is verified to be well-typed.
NewTypedArray returns an Array that is well-typed.
NewTypedArrayFlattenExpr returns a new ArrayFlattenExpr that is verified to be well-typed.
NewTypedBinaryExpr returns a new BinaryExpr that is well-typed.
NewTypedCaseExpr returns a new CaseExpr that is verified to be well-typed.
NewTypedCastExpr returns a new CastExpr that is verified to be well-typed.
NewTypedCoalesceExpr returns a CoalesceExpr that is well-typed.
NewTypedCollateExpr returns a new CollateExpr that is verified to be well-typed.
NewTypedColumnAccessExpr creates a pre-typed ColumnAccessExpr.
NewTypedComparisonExpr returns a new ComparisonExpr that is verified to be well-typed.
NewTypedComparisonExprWithSubOp returns a new ComparisonExpr that is verified to be well-typed.
NewTypedFuncExpr returns a FuncExpr that is already well-typed and resolved.
NewTypedIfErrExpr returns a new IfErrExpr that is verified to be well-typed.
NewTypedIndirectionExpr returns a new IndirectionExpr that is verified to be well-typed.
NewTypedIsNotNullExpr returns a new IsNotNullExpr that is verified to be well-typed.
NewTypedIsNullExpr returns a new IsNullExpr that is verified to be well-typed.
NewTypedNotExpr returns a new NotExpr that is verified to be well-typed.
NewTypedOrdinalReference returns a new IndexedVar with the given index value that is verified to be well-typed.
NewTypedOrExpr returns a new OrExpr that is verified to be well-typed.
NewTypedRoutineExpr returns a new RoutineExpr that is well-typed.
NewTypedTuple returns a new Tuple that is verified to be well-typed.
NewTypedUnaryExpr returns a new UnaryExpr that is well-typed.
NewTypeIsNotCompositeError generates an error suitable to report when a ColumnAccessExpr or TupleStar is applied to a non-composite type.
NewUnqualifiedTableName creates a new base table name.
NewUnqualifiedTypeName returns a new base type name.
NewUnresolvedName constructs an UnresolvedName from some strings.
NewUnresolvedObjectName creates an unresolved object name, verifying that it is well-formed.
NewWhere creates a WHERE or HAVING clause out of an Expr.
OperatorIsImmutable returns true if the given expression corresponds to a constant operator.
OverrideWindowDef implements the logic to have a base window definition which then gets augmented by a different window definition.
ParseAndRequireString parses s as type t for simple types.
ParseAndRequireStringHandler parses a string and passes values supported by the vector engine directly to a ValueHandler.
ParseBool parses and returns the boolean value represented by the provided string, or an error if parsing is unsuccessful.
ParseDArrayFromString parses the string-form of constructing arrays, handling cases such as `'{1,2,3}'::INT[]`.
ParseDBitArray parses a string representation of binary digits.
ParseDBool parses and returns the *DBool Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDBox2D attempts to pass `str` as a Box2D type.
ParseDByte parses a string representation of hex encoded binary data.
ParseDDate parses and returns the *DDate Datum value represented by the provided string in the provided location, or an error if parsing is unsuccessful.
ParseDDecimal parses and returns the *DDecimal Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDFloat parses and returns the *DFloat Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDGeography attempts to pass `str` as a Geography type.
ParseDGeometry attempts to pass `str` as a Geometry type.
ParseDInt parses and returns the *DInt Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDInterval parses and returns the *DInterval Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDIntervalWithTypeMetadata is like ParseDInterval, but it also takes a types.IntervalTypeMetadata that both specifies the units for unitless, numeric intervals and also specifies the precision of the interval.
ParseDIPAddrFromINetString parses and returns the *DIPAddr Datum value represented by the provided input INet string, or an error.
ParseDJSON takes a string of JSON and returns a DJSON value.
ParseDOidAsInt parses the input and returns it as an OID.
ParseDPGLSN attempts to pass `str` as a PGLSN type.
ParseDPGVector takes a string of PGVector and returns a DPGVector value.
ParseDTime parses and returns the *DTime Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDTimestamp parses and returns the *DTimestamp Datum value represented by the provided string in UTC, or an error if parsing is unsuccessful.
ParseDTimestampTZ parses and returns the *DTimestampTZ Datum value represented by the provided string in the provided location, or an error if parsing is unsuccessful.
ParseDTimeTZ parses and returns the *DTime Datum value represented by the provided string, or an error if parsing is unsuccessful.
ParseDTSQuery takes a string of TSQuery and returns a DTSQuery value.
ParseDTSVector takes a string of TSVector and returns a DTSVector value.
ParseDTupleFromString parses the string-form of constructing tuples, handling cases such as `'(1,2,3)'::record`.
ParseDUuidFromBytes parses and returns the *DUuid Datum value represented by the provided input bytes, or an error.
ParseDUuidFromString parses and returns the *DUuid Datum value represented by the provided input string, or an error.
ParseIntervalWithTypeMetadata is the same as ParseDIntervalWithTypeMetadata but returns a duration.Duration.
ParsePath splits a string of the form "/foo/bar" into strings ["foo", "bar"].
ParseTimestampTZ parses and returns the time.Time value represented by the provided string in the provided location, or an error if parsing is unsuccessful.
PgwireFormatBool returns a single byte representing a boolean according to pgwire encoding.
PgwireFormatFloat returns a []byte representing a float according to pgwire encoding.
PGWireFormatTime formats t into a format lib/pq understands, appending to the provided tmp buffer and reallocating if needed.
PGWireFormatTimestamp formats t into a format lib/pq understands.
PGWireFormatTimeTZ formats t into a format lib/pq understands, appending to the provided tmp buffer and reallocating if needed.
PGWireTypeSize is the size of the type as reported in pg_catalog and over the wire protocol.
PrependToMaybeNullArray prepends an element in the front of an arrray.
Pretty pretty prints stmt with default options.
ProcessPlaceholderAnnotations performs an order-independent global traversal of the provided Statement, annotating all placeholders with a type in either of the following situations: - the placeholder is the subject of an explicit type annotation in at least one of its occurrences.
QualifyBuiltinFunctionDefinition qualified all overloads in a function definition with a schema name.
RandomNullability returns a random valid Nullability, given a random number generator, `rand`.
ResolveBlankPaddedChar pads the given string with spaces if blank padding is required or returns the string unmodified otherwise.
ResolvePolymorphicArgTypes iterates through the list of routine parameters and supplied arguments (including default expressions), and attempts to determine the concrete types for any polymorphic-typed parameters.
ResolveType converts a ResolvableTypeReference into a *types.T.
ReturnsAtMostOneRow returns true if the statement returns either no rows or a single row.
SampleDatum is intended to be a more lightweight version of RandDatum for when you just need one consistent example of a datum.
Serialize pretty prints a node to a string using FmtSerializable; it is appropriate when we store expressions into strings that are stored on disk and may be later parsed back into expressions.
SerializeForDisplay pretty prints a node to a string using FmtParsable.
SimpleStmtVisit is a convenience wrapper for visitors that want to visit all part of a statement, only have VisitPre code and don't return any results except an error.
SimpleVisit is a convenience wrapper for visitors that only have VisitPre code and don't return any results except an error.
StarExpr is a convenience function that represents an unqualified "*".
StarSelectExpr is a convenience function that represents an unqualified "*" in a select expression.
StmtDebugString generates multi-line debug strings in Go format for the expressions that are part of the given statement.
StripMemoizedFuncs strips memoized function references from expression trees.
StripParens strips any parentheses surrounding an expression and returns the inner expression.
StripTableParens strips any parentheses surrounding a selection clause.
TestingEnableFamilyIndexHint enables the use of Family index hint for tests.
TimeFamilyPrecisionToRoundDuration takes in a type's precision, and returns the duration to use to pass into time.Truncate to truncate to that duration.
TimeFromDatumForComparison gets the time from a datum object to use strictly for comparison usage.
TypeCheck performs type checking on the provided expression tree, returning the new typed expression tree, which additionally permits evaluation and type introspection globally and on each sub-tree.
TypeCheckAndRequire performs type checking on the provided expression tree in an identical manner to TypeCheck.
UnwrapDOidWrapper exposes the wrapped datum from a *DOidWrapper.
UserPriorityFromString converts a string into a UserPriority.
ValidateRoutineOptions checks whether there are conflicting or redundant routine options in the given slice.
WalkExpr traverses the nodes in an expression.
WalkExprConst is a variant of WalkExpr for visitors that do not modify the expression.
WalkStmt walks the entire parsed stmt calling WalkExpr on each expression, and replacing each expression with the one returned by WalkExpr.
WrapFunction creates a new ResolvableFunctionReference holding a pre-resolved function from a built-in function name.

# Constants

Ack indicates that the statement does not have a meaningful return.
ActiveSchedules indicates that show schedules should only show those schedules that are currently active.
AggregateClass is a builtin aggregate function.
AllDescriptors table coverage means that backup is guaranteed to have all the relevant data in the cluster.
FuncExpr.Type.
These constants separate the syntax X:::Y from ANNOTATE_TYPE(X, Y).
These constants separate the syntax X:::Y from ANNOTATE_TYPE(X, Y).
AnyObject is used when any object is acceptable.
Direction values.
Asensitive indicates that "the cursor is implementation dependent".
JoinTableExpr.Join.
JoinTableExpr.Join.
JoinTableExpr.Hint.
Where.Type.
JoinTableExpr.Join.
JoinTableExpr.Hint.
JoinTableExpr.Join.
JoinTableExpr.Hint.
JoinTableExpr.Hint.
JoinTableExpr.Join.
JoinTableExpr.Hint.
Where.Type.
AuditModeDisable is the default mode - no audit.
AuditModeReadWrite enables audit on read or write statements.
BackupDefaultDetails identifies a bare SHOW BACKUP statement.
BackupFileDetails identifies a SHOW BACKUP FILES statement.
BackupRangeDetails identifies a SHOW BACKUP RANGES statement.
BackupSchemaDetails identifies a SHOW BACKUP SCHEMAS statement.
BackupValidateDetails identifies a SHOW BACKUP VALIDATION statement.
Base represents a base user defined type.
BuiltinRoutine is a builtin function.
JobCommand values.
The values for ReferenceAction.
These constants separate the syntax X::Y from CAST(X AS Y).
These constants separate the syntax X::Y from CAST(X AS Y).
These constants separate the syntax X::Y from CAST(X AS Y).
ColumnLimit is the max character limit for columns in summarized queries.
Composite represents a composite user defined type.
ConditionalAncestor is temporarily added to ScalarAncestors while type checking condition expressions CASE, COALESCE, and IF.
ConsoleLineWidth is the line width used on the frontend console.
Valid values for CopyFormat.
Valid values for CopyFormat.
Valid values for CopyFormat.
CopyIn indicates a COPY FROM statement.
CopyOut indicates a COPY TO statement.
Keep this list alphabetized so that it is easy to manage.
Keep this list alphabetized so that it is easy to manage.
CreateTableOnCommitPreserveRows indicates that ON COMMIT PRESERVE ROWS was set.
CreateTableOnCommitUnset indicates that ON COMMIT was unset.
CTEMaterializeAlways represents MATERIALIZED.
CTEMaterializeDefault represents an empty materialization clause.
CTEMaterializeNever represents NOT MATERIALIZED.
CurrentUser represents if a RoleSpec is defined using CURRENT_USER.
DataPlacementDefault indicates specified default data placement policy,.
DataPlacementRestricted indicates the database will not use non-voters for REGIONAL BY [TABLE | ROW] tables.
DataPlacementUnspecified indicates an unspecified placement policy.
DDL indicates that the statement mutates the database schema.
Direction values.
DefaultLineWidth is the line width used with the default pretty-printing configuration.
Null order values.
DeferrableMode values.
Direction values.
DiscardModeAll represents a DISCARD ALL statement.
DiscardModeSequences represents a DISCARD SEQUENCES statement.
DiscardModeTemp represents a DISCARD TEMPORARY statement.
FuncExpr.Type.
Domain represents a DOMAIN user defined type.
DropBehavior values.
DropBehavior values.
DropBehavior values.
ScheduleCommand values.
Enum represents an ENUM user defined type.
Union.Type.
ExpandIndexes requests one row per index in the output.
ExpandTables requests one row per table in the output.
ExplainDDL generates a DDL plan diagram for the statement.
ExplainDebug generates a statement diagnostics bundle; only used with EXPLAIN ANALYZE.
ExplainDistSQL shows the physical distsql plan for a query and whether a query would be run in "auto" DISTSQL mode.
Explain flags.
Explain flags.
Explain flags.
Explain flags.
Explain flags.
Explain flags.
Explain flags.
Explain flags.
Explain flags.
ExplainGist generates a plan "gist".
ExplainOpt shows the optimized relational expression (from the cost-based optimizer).
ExplainPlan shows information about the planNode tree for a query.
ExplainVec shows the physical vectorized plan for a query and whether a query would be run in "auto" vectorized mode.
FetchAbsolute represents a FETCH ABSOLUTE statement.
FetchAll represents a FETCH ALL statement.
FetchBackwardAll represents a FETCH BACKWARD ALL statement.
FetchFirst represents a FETCH FIRST statement.
FetchLast represents a FETCH LAST statement.
FetchNormal represents a FETCH statement that doesn't have a special qualifier.
FetchRelative represents a FETCH RELATIVE statement.
FmtAlwaysGroupExprs instructs the pretty-printer to enclose sub-expressions between parentheses.
FmtAlwaysQualifyNames will fully qualify various types of names.
FmtAlwaysQualifyTableNames instructs the pretty-printer to qualify table names, even if originally omitted.
FmtAlwaysQualifyUserDefinedTypeNames instructs the pretty-printer to include the name of user-defined types as a three-part name.
FmtAnonymize instructs the pretty-printer to remove any name.
FmtArrayToString is a special composite flag suitable for the output of array_to_string().
FmtBareIdentifiers instructs the pretty-printer to print identifiers without wrapping quotes in any case.
FmtBareReservedKeywords instructs the pretty-printer to print reserved keywords without wrapping quotes.
FmtBareStrings instructs the pretty-printer to print strings and other values without wrapping quotes.
FmtCheckEquivalence instructs the pretty-printer to produce a representation that can be used to check equivalence of expressions.
FmtCollapseLists instructs the pretty-printer to shorten lists containing only literals, placeholders and/or similar subexpressions of literals/placeholders to their first element (scrubbed) followed by "__more__".
FmtConstantsAsUnderscores instructs the pretty-printer to format constants (literals, placeholders) as underscores.
FmtExport, if set, formats datums in a raw form suitable for EXPORT, e.g.
FmtHideConstants instructs the pretty-printer to produce a representation that does not disclose query-specific data.
FmtMarkRedactionNode instructs the pretty printer to redact datums, constants, and simple names (i.e.
FmtOmitNameRedaction instructs the pretty printer to omit redaction for simple names (i.e.
FmtParsable instructs the pretty-printer to produce a representation that can be parsed into an equivalent expression.
FmtParsableNumerics produces decimal and float representations that are always parsable, even if they require a string representation like -Inf.
FmtPGCatalog is used to produce expressions formatted in a way that's as close as possible to what clients expect to live in pg_catalog (e.g.
FmtPgwireText instructs the pretty-printer to use a pg-compatible conversion to strings.
FmtSerializable instructs the pretty-printer to produce a representation for expressions that can be serialized to disk.
FmtShortenConstants shortens long lists in tuples, VALUES and array expressions.
FmtShowFullURIs instructs the pretty-printer to not sanitize URIs.
FmtShowPasswords instructs the pretty-printer to not suppress passwords.
FmtShowTableAliases reveals the table aliases.
FmtShowTypes instructs the pretty-printer to annotate expressions with their resolved types.
FmtSimple instructs the pretty-printer to produce a straightforward representation.
FmtSummary instructs the pretty printer to produced a summarized version of the query, to pass to the frontend.
FmtSymbolicSubqueries indicates that subqueries must be pretty-printed using numeric notation (@S123).
ForKeyShare represents FOR KEY SHARE.
ForNoKeyUpdate represents FOR NO KEY UPDATE.
ForNone represents the default - no for statement at all.
ForShare represents FOR SHARE.
ForUpdate represents FOR UPDATE.
FuncExprAncestor is temporarily added to ScalarAncestors while type checking the parameters of a function.
GeneralAgg is used for general-purpose aggregate functions.
The values of GeneratedIdentity.GeneratedAsIdentityType.
The values of GeneratedIdentity.GeneratedAsIdentityType.
GeneratorClass is a builtin generator function.
UserPriority values.
Insensitive indicates that the cursor is "insensitive" to subsequent writes, meaning that it sees a snapshot of data from the moment it was declared, and won't see subsequent writes within the transaction.
Union.Type.
InvalidExecutor is a placeholder for an invalid executor type.
LikeTableOptAll is the full LikeTableOpt bitmap.
The values for LikeTableOpt.
The values for LikeTableOpt.
The values for LikeTableOpt.
The values for LikeTableOpt.
LocalityLevelGlobal distributes a table across a global cluster.
LocalityLevelRow implies a table's rows are homed depending on values within the row.
LocalityLevelTable implies a table is homed in a fixed region.
LockDurabilityBestEffort represents the default: make a best-effort attempt to hold the lock until commit while keeping it unreplicated and in-memory on the leaseholder of the locked row.
LockDurabilityGuaranteed guarantees that if the transaction commits, the lock was held until commit, even in the face of lease transfers, range splits, range merges, node failures, memory limits, etc.
LockPredicate represents locking the logical predicate defined by the span(s), preventing modification of existing rows as well as insertion of new rows (phantoms).
LockRecord represents the default: lock existing rows within the specified span(s), which prevents modification of those rows but does not prevent insertion of new rows (phantoms) into the span(s).
LockWaitBlock represents the default - wait for the lock to become available.
LockWaitError represents NOWAIT - raise an error if a row cannot be locked.
LockWaitSkipLocked represents SKIP LOCKED - skip rows that can't be locked.
UserPriority values.
LowerCase transforms case-insensitive strings (like SQL keywords) to lowercase.
The values for CompositeKeyMatchMethod.
Note: PARTIAL not actually supported at this point.
The values for CompositeKeyMatchMethod.
MaxPlaceholderIdx is the maximum allowed value of a PlaceholderIdx.
The values for ReferenceAction.
NoAnnotation is the uninitialized annotation index.
NoColumnIdx is a special value that can be used as a "column index" to indicate that the column is not present.
UserPriority values.
NormalClass is a standard builtin function.
NoScroll represents the NO SCROLL option, which means that the declared cursor can only be moved forward.
DeferrableMode values.
The values for NullType.
The values for NullType.
Null order values.
Null order values.
UnaryExpr.Operator.Symbol.
OrderByColumn is the regular "by expression/column" ORDER BY specification.
OrderByIndex enables the user to specify a given index' columns implicitly.
OrderedSetAgg is used for ordered-set aggregate functions.
PartitionByList indicates a PARTITION BY LIST clause.
PartitionByRange indicates a PARTITION BY LIST clause.
PasswordSubstitution is the string that replaces passwords unless FmtShowPasswords is specified.
PausedSchedules indicates that show schedules should only show those schedules that are currently paused.
JobCommand values.
ScheduleCommand values.
PersistencePermanent indicates a permanent table.
PersistenceTemporary indicates a temporary table.
PersistenceUnlogged indicates an unlogged table.
This block contains all available PG time formats.
This block contains all available PG time formats.
This block contains all available PG time formats.
This block contains all available PG time formats.
This block contains all available PG time formats.
This block contains all available PG time formats.
PolicyCommand values.
PolicyCommand values.
PolicyCommand values.
PolicyCommand values.
PolicyCommand values.
PolicyCommand values.
PolicyType values.
PolicyType values.
PolicyType values.
PrettyAlignAndDeindent does the work of PrettyAlignOnly and also de-indents AND and OR operators.
PrettyAlignAndExtraIndent does the work of PrettyAlignOnly and also extra indents the operands of AND and OR operators so that they appear aligned but also indented.
PrettyAlignOnly aligns sub-clauses only and preserves the hierarchy of logical operators.
PrettyNoAlign disables alignment.
PrimaryRegionNotSpecifiedName is the string denoting the lack of primary region in the locality config.
ProcedureRoutine is a user-defined procedure.
Range represents a RANGE user defined type.
IsolationLevel values.
ReadWriteMode values.
IsolationLevel values.
ReadWriteMode values.
RefreshDataClear refers to the WITH NO DATA option provided to the REFRESH MATERIALIZED VIEW statement.
RefreshDataDefault refers to no option provided to the REFRESH MATERIALIZED VIEW statement.
RefreshDataWithData refers to the WITH DATA option provided to the REFRESH MATERIALIZED VIEW statement.
RegionalByRowRegionDefaultCol is the default name of the REGIONAL BY ROW column name if the AS field is not populated.
RegionalByRowRegionDefaultColName is the same, typed as Name.
RegionalByRowRegionNotSpecifiedName is the string denoting the REGIONAL BY ROW has no AS <col> specified.
RegionEnum is the name of the per-database region enum required for multi-region.
RejectAggregates rejects min(), max(), etc.
RejectGenerators rejects any use of SRFs, e.g "generate_series()".
RejectNestedAggregates rejects any use of aggregates inside the argument list of another function call, which can itself be an aggregate (RejectAggregates notwithstanding).
RejectNestedGenerators rejects any use of SRFs inside the argument list of another function call, which can itself be a SRF (RejectGenerators notwithstanding).
RejectNestedWindowFunctions rejects any use of window functions inside the argument list of another window function.
RejectProcedures rejects procedures in scalar contexts.
RejectSpecial is used in common places like the LIMIT clause.
RejectStableOperators rejects any stable functions or operators (including casts).
RejectSubqueries rejects subqueries in scalar contexts.
RejectVolatileFunctions rejects any volatile functions.
RejectWindowApplications rejects "x() over y", etc.
RelocateLease indicates that leases should be relocated.
RelocateNonVoters indicates that non-voter replicas should be relocated.
RelocateVoters indicates what voter replicas should be relocated.
IsolationLevel values.
Replication indicates a replication protocol statement.
RequestedDescriptors table coverage means that the backup is not guaranteed to have all of the cluster data.
RequiredTableKind options have descriptive names.
RequiredTableKind options have descriptive names.
RequiredTableKind options have descriptive names.
RequiredTableKind options have descriptive names.
RequiredTableKind options have descriptive names.
The values for ReferenceAction.
JobCommand values.
ScheduleCommand values.
RoleName represents if a RoleSpec is defined using an IDENT or unreserved_keyword in the grammar.
RoutineCalledOnNullInput indicates that the routine will be given the chance to execute when presented with NULL input.
RoutineDefiner indicates that the routine is run with the privileges of the user who defined it.
RoutineImmutable represents volatility.Immutable.
RoutineInvoker indicates that the routine is run with the privileges of the user invoking it.
RoutineLangC represents the C language.
RoutineLangPLpgSQL represents the PL/pgSQL procedural language.
RoutineLangSQL represents SQL language.
RoutineLangUnknown represents an unknown language.
RoutineParamDefault indicates that RoutineParamClass was unspecified (in almost all cases it is equivalent to RoutineParamIn).
RoutineParamIn args can only be used as input.
RoutineParamInOut args can be used as both input and output.
RoutineParamOut args can only be used as output.
RoutineParamVariadic args are variadic.
RoutineReturnsNullOnNullInput indicates that the routine will result in NULL given any NULL parameter.
RoutineStable represents volatility.Stable.
RoutineStrict is the same as RoutineReturnsNullOnNullInput.
RoutineVolatile represents volatility.Volatile.
Rows indicates that the statement returns the affected rows after the statement was applied.
RowsAffected indicates that the statement returns the count of affected rows.
ScheduledBackupExecutor is an executor responsible for the execution of the scheduled backups.
ScheduledChangefeedExecutor is an executor responsible for the execution of the scheduled changefeeds.
ScheduledRowLevelTTLExecutor is an executor responsible for the cleanup of rows on row level TTL tables.
ScheduledSchemaTelemetryExecutor is an executor responsible for the logging of schema telemetry.
ScheduledSQLStatsCompactionExecutor is an executor responsible for the execution of the scheduled SQL Stats compaction.
Scroll represents the SCROLL option.
ScrubDatabase describes the SCRUB operation SCRUB DATABASE.
ScrubTable describes the SCRUB operation SCRUB TABLE.
SecondaryRegionNotSpecifiedName is the string denoting the lack of secondary regionin the locality config.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
Names of options on CREATE SEQUENCE.
IsolationLevel values.
SessionUser represents if a RoleSpec is defined using SESSION_USER.
The values for ReferenceAction.
The values for ReferenceAction.
Shell represents a shell user defined type.
ShowCreateModeDatabase represents SHOW CREATE DATABASE.
ShowCreateModeIndexes represents SHOW CREATE INDEXES FROM.
ShowCreateModeSecondaryIndexes represents SHOW CREATE SECONDARY INDEXES FROM.
ShowCreateModeSequence represents SHOW CREATE SEQUENCE.
ShowCreateModeTable represents SHOW CREATE TABLE.
ShowCreateModeView represents SHOW CREATE VIEW.
SHOW CLUSTER RANGES.
SHOW RANGES FROM CURRENT_CATALOG.
SHOW RANGES FROM DATABASE.
SHOW RANGES FROM INDEX.
SHOW RANGES FROM TABLE.
ShowRegionsFromAllDatabases represents SHOW REGIONS FROM ALL DATABASES.
ShowRegionsFromCluster represents SHOW REGIONS FROM CLUSTER.
ShowRegionsFromDatabase represents SHOW REGIONS FROM DATABASE.
ShowRegionsFromDefault represents SHOW REGIONS.
ShowSuperRegionsFromDatabase represents SHOW SUPER REGIONS FROM DATABASE.
A list of the SHOW TRACE variants.
A list of the SHOW TRACE variants.
A list of the SHOW TRACE variants.
The values for NullType.
IsolationLevel values.
SpecifiedSchedules indicates that show schedules should only show subset of schedules.
SQLClass is a builtin function that executes a SQL statement as a side effect of the function call.
StmtFingerprintPlaceholder is the char that replaces all literals and placeholders in a query when computing its fingerprint.
Keep this list alphabetized so that it is easy to manage.
SurvivalGoalDefault indicates default survive behavior.
SurvivalGoalRegionFailure indicates a database being able to withstand an entire region failure.
SurvivalGoalZoneFailure indicates a database being able to withstand a failure of an availibility zone.
SystemUsers coverage indicates that only the system.users table will be restored from the backup.
TableLimit is the max character limit for tables in summarized queries.
TableObject is used when a table-like object is desired from resolution.
TableRLSMode values.
TableRLSMode values.
TableRLSMode values.
TableRLSMode values.
TenantStartServiceExternal encodes START SERVICE EXTERNAL.
TenantStartServiceExternal encodes START SERVICE SHARED.
TenantStartServiceExternal encodes STOP SERVICE.
DCL (Data Control Language) deals with commands such as GRANT and mostly concerned with rights, permissions and other controls of the database system.
DDL (Data Definition Language) deals with database schemas and descriptions.
DML (Data Manipulation Language) deals with data manipulation and it is used to store, modify, retrieve, delete and update data in a database.
TypeObject is used when a type-like object is desired from resolution.
TCL (Transaction Control Language) deals with a transaction within a database.
UDFRoutine is a user-defined function.
UnaryExpr.Operator.Symbol.
UnaryExpr.Operator.Symbol.
UnaryExpr.Operator.Symbol.
UnaryExpr.Operator.Symbol.
UnaryExpr.Operator.Symbol.
Union.Type.
UniqueRanges tells to use just 1 row per range in the output.
Unknown indicates that the statement does not have a known return style at the time of parsing.
UnknownOidName represents the 0 oid value as '-' for types other than T_oid in the oid family, which matches the Postgres representation.
UnknownOidValue is the 0 (unknown) oid value.
DeferrableMode values.
IsolationLevel values.
ReadWriteMode values.
UnspecifiedScroll represents no SCROLL option having been given.
UnspecifiedSensitivity indicates that no sensitivity was specified.
UserPriority values.
UpperCase transforms case-insensitive strings (like SQL keywords) to uppercase.
ValidationDefault is the default validation behavior (immediate).
ValidationSkip skips validation of any existing data.
WindowClass is a builtin window function.
WindowFuncAncestor is temporarily added to ScalarAncestors while type checking the parameters of a window function in order to reject nested window functions.

# Variables

AbsentReturningClause is a ReturningClause variant representing the absence of a RETURNING clause.
BinOps contains the binary operations indexed by operation type.
CmpOps contains the comparison operations indexed by operation type.
CompositeKeyMatchMethodType allows the conversion from a ForeignKeyReference_Match to a tree.ReferenceCompositeKeyMatchMethod.
CompositeKeyMatchMethodValue allows the conversion from a tree.ReferenceCompositeKeyMatchMethod to a ForeignKeyReference_Match.
DBoolFalse is a pointer to the DBool(false) value and can be used in comparisons against Datum types.
DBoolTrue is a pointer to the DBool(true) value and can be used in comparisons against Datum types.
DecimalCtx is the default context for decimal operations.
DecimalOne represents the constant 1 as DECIMAL.
DMaxIPAddr is the max DIPaddr.
DMaxTimeTZ is the max TimeTZ.
DMaxUUID is the max UUID.
DMinIPAddr is the min DIPAddr.
DMinTimeTZ is the min TimeTZ.
DMinUUID is the min UUID.
DNaNDecimal is the decimal constant 'NaN'.
DNaNFloat is the DFloat for NaN.
DNegInfDecimal is the decimal constant '-inf'.
DNegInfFloat is the DFloat for negative infinity.
DNull is the NULL Datum.
DPosInfDecimal is the decimal constant 'inf'.
DPosInfFloat is the DFloat for positive infinity.
DTimeMaxTimeRegex is a compiled regex for parsing the 24:00 time value.
DVoidDatum is an instance of the DVoid datum.
DZero is the zero-valued integer Datum.
DZeroDecimal is the decimal constant '0'.
DZeroFloat is the DFloat for zero.
DZeroTimestamp is the zero-valued DTimestamp.
DZeroTimestampTZ is the zero-valued DTimestampTZ.
EmptySearchPath is a SearchPath with no members.
ErrAsOfSpecifiedWithReadWrite is returned when a statement attempts to set a historical query to READ WRITE which conflicts with its implied READ ONLY mode.
ErrCharOutOfRange is reported when int cast to ASCII byte overflows.
ErrConflictingRoutineOption indicates that there are conflicting or redundant function options from user input to either create or alter a function.
ErrDecOutOfRange is reported when decimal arithmetic overflows.
ErrDivByZero is reported on a division by zero.
ErrFloatOutOfRange is reported when float arithmetic overflows.
ErrInt2OutOfRange is reported when casting to INT2 overflows.
ErrInt4OutOfRange is reported when casting to INT4 overflows.
ErrIntOutOfRange is reported when integer arithmetic overflows.
ErrRoutineUndefined indicates that the required function is not found.
ErrShiftArgOutOfRange is reported when a shift argument is out of range.
ErrSqrtOfNegNumber is reported when taking the sqrt of a negative number.
ExactCtx is a decimal context with exact precision.
ForeignKeyReferenceActionType allows the conversion between a tree.ReferenceAction and a ForeignKeyReference_Action.
ForeignKeyReferenceActionValue allows the conversion between a semenumpb.ForeignKeyAction_Action and a tree.ReferenceAction.
FunDefs holds pre-allocated FunctionDefinition instances for every builtin function.
HighPrecisionCtx is a decimal context with high precision.
IntermediateCtx is a decimal context with additional precision for intermediate calculations to protect against order changes that can happen in dist SQL.
IsolationLevelMap is a map from string isolation level name to isolation level, in the lowercase format that set isolation_level supports.
JobCommandToStatement translates a job command integer to a statement prefix.
294276-12-31 23:59:59.999999.
4714-11-24 00:00:00+00 BC.
NumValAvailDecimalNoFraction is the set of available integral numeric types.
NumValAvailDecimalNoFractionNoOid is the set of available integral numeric types except for OID.
NumValAvailDecimalWithFraction is the set of available fractional numeric types.
NumValAvailInteger is the set of available integer types.
NumValAvailIntegerNoOid is the set of available integer types except for OID.
OidToBuiltinName contains a map from the hashed OID of all builtin functions to their name.
OidToQualifiedBuiltinOverload is a map from builtin function OID to an qualified overload.
OnCastTypeCheck is a map of CastCounterTypes to their hook.
OnTypeCheck* functions are hooks which get called if not nil and the type checking of the relevant function is made.
OnTypeCheck* functions are hooks which get called if not nil and the type checking of the relevant function is made.
OnTypeCheck* functions are hooks which get called if not nil and the type checking of the relevant function is made.
OnTypeCheck* functions are hooks which get called if not nil and the type checking of the relevant function is made.
OnTypeCheck* functions are hooks which get called if not nil and the type checking of the relevant function is made.
ResolvedBuiltinFuncDefs holds pre-allocated ResolvedFunctionDefinition instances.
ReturningNothingClause is a shared instance to avoid unnecessary allocations.
RoundCtx is a decimal context with high precision and RoundHalfEven rounding.
ShowLastQueryStatisticsDefaultColumns is the default list of columns when the USING clause is not specified.
StrValAvailAllParsable is the set of parsable string types.
StrValAvailBytes is the set of types convertible to byte array.
TriggerActionTimeFromTree allows the conversion from a semenumpb.TriggerActionTime to a tree.TriggerActionTime.
TriggerActionTimeToTree allows the conversion from a tree.TriggerActionTime to a semenumpb.TriggerActionTime.
TriggerEventTypeFromTree allows the conversion from a tree.TriggerEventType to a semenumpb.TriggerEventType.
TriggerEventTypeToTree allows the conversion from a semenumpb.TriggerEventType to a tree.TriggerEventType.
UnaryOpName is the mapping of unary operators to names.
UnaryOps contains the unary operations indexed by operation type.
UnknownReturnType is returned from ReturnTypers when the arguments provided are not sufficient to determine a return type.

# Structs

AbbreviatedGrant represents the GRANT part of an ALTER DEFAULT PRIVILEGES statement.
AbbreviatedRevoke represents the REVOKE part of an ALTER DEFAULT PRIVILEGES statement.
AliasClause represents an alias, optionally with a column def list: "AS name", "AS name(col1, col2)", or "AS name(col1 INT, col2 STRING)".
AliasedTableExpr represents a table expression coupled with an optional alias.
AllColumnsSelector corresponds to a selection of all columns in a table when used in a SELECT clause.
AllTablesSelector corresponds to a selection of all tables in a database, e.g.
AlterBackup represents an ALTER BACKUP statement.
AlterBackupKMS represents a possible alter_backup_cmd option.
AlterBackupSchedule represents an ALTER BACKUP SCHEDULE statement.
AlterBackupScheduleRunNow represents a RUN NOW command.
AlterBackupScheduleSetFullBackup represents an SET FULL BACKUP <recurrence> command.
AlterBackupScheduleSetInto represents a SET <destinations> command.
AlterBackupScheduleSetLabel represents an ADD <label> command.
AlterBackupScheduleSetRecurring represents an SET RECURRING <recurrence> command.
AlterBackupScheduleSetScheduleOption represents an SET SCHEDULE OPTION <kv_options> command.
AlterBackupScheduleSetWith represents an SET <options> command.
AlterChangefeed represents an ALTER CHANGEFEED statement.
AlterChangefeedAddTarget represents an ADD <targets> command.
AlterChangefeedDropTarget represents an DROP <targets> command.
AlterChangefeedSetOptions represents an SET <options> command.
AlterChangefeedUnsetOptions represents an UNSET <options> command.
AlterDatabaseAddRegion represents a ALTER DATABASE ADD REGION statement.
AlterDatabaseAddSuperRegion represents a ALTER DATABASE ADD SUPER REGION ..
AlterDatabaseAlterSuperRegion represents a ALTER DATABASE ADD SUPER REGION ..
AlterDatabaseDropRegion represents a ALTER DATABASE DROP REGION statement.
AlterDatabaseDropSecondaryRegion represents a ALTER DATABASE DROP SECONDARY REGION statement.
AlterDatabaseDropSuperRegion represents a ALTER DATABASE DROP SUPER REGION ..
AlterDatabaseOwner represents a ALTER DATABASE OWNER TO statement.
AlterDatabasePlacement represents a ALTER DATABASE PLACEMENT statement.
AlterDatabasePrimaryRegion represents a ALTER DATABASE PRIMARY REGION ..
AlterDatabaseSecondaryRegion represents a ALTER DATABASE SET SECONDARY REGION ..
AlterDatabaseSetZoneConfigExtension represents a ALTER DATABASE ..
AlterDatabaseSurvivalGoal represents a ALTER DATABASE SURVIVE ..
AlterDefaultPrivileges represents an ALTER DEFAULT PRIVILEGES statement.
AlterFunctionDepExtension represents the ALTER FUNCTION...DEPENDS ON statement.
AlterFunctionOptions represents a ALTER FUNCTION...action statement.
AlterIndex represents an ALTER INDEX statement.
AlterIndexPartitionBy represents an ALTER INDEX PARTITION BY command.
AlterIndexVisible represents a ALTER INDEX ..
AlterJobOwner represents an ALTER JOB OWNER TO statement.
AlterPolicy is a tree struct for the ALTER POLICY DDL statement.
AlterRole represents an `ALTER ROLE ..
AlterRoleSet represents an `ALTER ROLE ..
AlterRoutineRename represents a ALTER FUNCTION...RENAME or ALTER PROCEDURE...RENAME statement.
AlterRoutineSetOwner represents the ALTER FUNCTION...OWNER TO or ALTER PROCEDURE...OWNER TO statement.
AlterRoutineSetSchema represents a ALTER FUNCTION...SET SCHEMA or ALTER PROCEDURE...SET SCHEMA statement.
AlterSchema represents an ALTER SCHEMA statement.
AlterSchemaOwner represents an ALTER SCHEMA OWNER TO command.
AlterSchemaRename represents an ALTER SCHEMA RENAME command.
AlterSequence represents an ALTER SEQUENCE statement, except in the case of ALTER SEQUENCE <seqName> RENAME TO <newSeqName>, which is represented by a RenameTable node.
AlterTable represents an ALTER TABLE statement.
AlterTableAddColumn represents an ADD COLUMN command.
AlterTableAddConstraint represents an ADD CONSTRAINT command.
AlterTableAddIdentity represents commands to alter a column to an identity.
AlterTableAlterColumnType represents an ALTER TABLE ALTER COLUMN TYPE command.
AlterTableAlterPrimaryKey represents an ALTER TABLE ALTER PRIMARY KEY command.
AlterTableDropColumn represents a DROP COLUMN command.
AlterTableDropConstraint represents a DROP CONSTRAINT command.
AlterTableDropIdentity represents an ALTER COLUMN DROP IDENTITY [ IF EXISTS ].
AlterTableDropNotNull represents an ALTER COLUMN DROP NOT NULL command.
AlterTableDropStored represents an ALTER COLUMN DROP STORED command to remove the computed-ness from a column.
AlterTableIdentity represents commands to alter a column identity sequence options.
AlterTableInjectStats represents an ALTER TABLE INJECT STATISTICS statement.
AlterTableLocality represents an ALTER TABLE LOCALITY command.
AlterTableOwner represents an ALTER TABLE OWNER TO command.
AlterTablePartitionByTable represents an ALTER TABLE PARTITION [ALL] BY command.
AlterTableRenameColumn represents an ALTER TABLE RENAME [COLUMN] command.
AlterTableRenameConstraint represents an ALTER TABLE RENAME CONSTRAINT command.
AlterTableResetStorageParams represents a ALTER TABLE RESET command.
AlterTableSetAudit represents an ALTER TABLE AUDIT SET statement.
AlterTableSetDefault represents an ALTER COLUMN SET DEFAULT or DROP DEFAULT command.
AlterTableSetIdentity represents commands to alter a column identity type.
AlterTableSetNotNull represents an ALTER COLUMN SET NOT NULL command.
AlterTableSetOnUpdate represents an ALTER COLUMN ON UPDATE SET or DROP ON UPDATE command.
AlterTableSetRLSMode represents the following alter table command: {ENABLE | DISABLE | FORCE | NO FORCE} ROW LEVEL SECURITY.
AlterTableSetSchema represents an ALTER TABLE SET SCHEMA command.
AlterTableSetStorageParams represents a ALTER TABLE SET command.
AlterTableSetVisible represents an ALTER COLUMN SET VISIBLE or NOT VISIBLE command.
AlterTableValidateConstraint represents a VALIDATE CONSTRAINT command.
AlterTenantCapability represents an ALTER VIRTUAL CLUSTER CAPABILITY statement.
AlterTenantRename represents an ALTER VIRTUAL CLUSTER RENAME statement.
AlterTenantReplication represents an ALTER VIRTUAL CLUSTER REPLICATION statement.
AlterTenantReset represents an ALTER VIRTUAL CLUSTER RESET statement.
AlterTenantService represents an ALTER VIRTUAL CLUSTER START/STOP SERVICE statement.
AlterTenantSetClusterSetting represents an ALTER VIRTUAL CLUSTER SET CLUSTER SETTING statement.
AlterType represents an ALTER TYPE statement.
AlterTypeAddValue represents an ALTER TYPE ADD VALUE command.
AlterTypeAddValuePlacement represents the placement clause for an ALTER TYPE ADD VALUE command ([BEFORE | AFTER] value).
AlterTypeDropValue represents an ALTER TYPE DROP VALUE command.
AlterTypeOwner represents an ALTER TYPE OWNER TO command.
AlterTypeRename represents an ALTER TYPE RENAME command.
AlterTypeRenameValue represents an ALTER TYPE RENAME VALUE command.
AlterTypeSetSchema represents an ALTER TYPE SET SCHEMA command.
Analyze represents an ANALYZE statement.
AndExpr represents an AND expression.
AnnotatedNode is embedded in AST nodes that have an annotation.
AnnotateTypeExpr represents a ANNOTATE_TYPE(expr, type) expression.
AppendToMaybeNullArrayOp is a BinaryEvalOp.
Array represents an array constructor.
ArrayFlatten represents a subquery array constructor.
ArraySubscript corresponds to the syntax `<name>[ ..
ArrayTypeReference represents an array of possibly unknown type references.
AsOfClause represents an as of time.
Backup represents a BACKUP statement.
BackupKMS represents possible options used when altering a backup KMS.
BackupOptions describes options for the BACKUP execution.
BackupTargetList represents a list of targets.
Batch represents a BATCH clause.
BeginTransaction represents a BEGIN statement.
BinaryExpr represents a binary value expression.
BinOp is a binary operator.
BinOpOverloads is an overloaded set of binary operator implementations.
BlockState is shared state between all routines that make up a PLpgSQL block.
Call represents a CALL statement to invoke a procedure.
CancelQueries represents a CANCEL QUERIES statement.
CancelSessions represents a CANCEL SESSIONS statement.
CannedOptPlan is used as the AST for a PREPARE .
CaseExpr represents a CASE expression.
CastCounterType represents a cast from one family to another.
CastExpr represents a CAST(expr AS type) expression.
ChangefeedTarget represents a database object to be watched by a changefeed.
CheckConstraintTableDef represents a check constraint within a CREATE TABLE statement.
CloseCursor represents a CLOSE statement.
CmpOp is a comparison operator.
CmpOpOverloads is an overloaded set of comparison operator implementations.
CoalesceExpr represents a COALESCE or IFNULL expression.
CollateExpr represents an (expr COLLATE locale) expression.
CollationEnvironment stores the state needed by NewDCollatedString to construct collation keys efficiently.
ColumnAccessExpr represents (E).x expressions.
ColumnCheckConstraint represents either a check on a column.
ColumnComputedDef represents the description of a computed column.
ColumnDef represents a column definition in the context of a record type alias, like in select * from json_to_record(...) AS foo(a INT, b INT).
ColumnDefault represents a DEFAULT clause for a column.
ColumnFamilyConstraint represents FAMILY on a column.
ColumnFKConstraint represents a FK-constaint on a column.
ColumnItem corresponds to the name of a column in an expression.
ColumnOnUpdate represents a ON UPDATE clause for a column.
ColumnTableDef represents a column definition within a CREATE TABLE statement.
ColumnTableDefCheckExpr represents a check constraint on a column definition within a CREATE TABLE statement.
CommentOnColumn represents an COMMENT ON COLUMN statement.
CommentOnConstraint represents a COMMENT ON CONSTRAINT statement.
CommentOnDatabase represents an COMMENT ON DATABASE statement.
CommentOnIndex represents a COMMENT ON INDEX statement.
CommentOnSchema represents an COMMENT ON SCHEMA statement.
CommentOnTable represents an COMMENT ON TABLE statement.
CommentOnType represents a COMMENT ON TYPE statement.
CommitPrepared represents a COMMIT PREPARED <transaction-id> statement, used for the second phase of a two-phase commit.
CommitTransaction represents a COMMIT statement.
CompareBox2DOp is a BinaryEvalOp.
CompareScalarOp is a BinaryEvalOp.
CompareTupleOp is a BinaryEvalOp.
ComparisonExpr represents a two-value comparison expression.
CompositeTypeElem is a single element in a composite type definition.
ConcatArraysOp is a BinaryEvalOp.
ConcatOp is a BinaryEvalOp.
ContainedByArrayOp is a BinaryEvalOp.
ContainedByJsonbOp is a BinaryEvalOp.
ContainsArrayOp is a BinaryEvalOp.
ContainsJsonbOp is a BinaryEvalOp.
ControlJobs represents a PAUSE/RESUME/CANCEL JOBS statement.
ControlJobsForSchedules represents PAUSE/RESUME/CANCEL clause which applies job command to the jobs matching specified schedule(s).
ControlJobsOfType represents PAUSE/RESUME/CANCEL clause which applies the job command to the job matching a specified type.
ControlSchedules represents PAUSE/RESUME SCHEDULE statement.
CopyFrom represents a COPY FROM statement.
CopyOptions describes options for COPY execution.
CopyTo represents a COPY TO statement.
CreateChangefeed represents a CREATE CHANGEFEED statement.
CreateDatabase represents a CREATE DATABASE statement.
CreateExtension represents a CREATE EXTENSION statement.
CreateExternalConnection represents a CREATE EXTERNAL CONNECTION statement.
CreateIndex represents a CREATE INDEX statement.
CreatePolicy is a tree struct for the CREATE POLICY DDL statement.
CreateRole represents a CREATE ROLE statement.
CreateRoutine represents a CREATE FUNCTION or CREATE PROCEDURE statement.
CreateSchema represents a CREATE SCHEMA statement.
CreateSequence represents a CREATE SEQUENCE statement.
CreateStats represents a CREATE STATISTICS statement.
CreateStatsOptions contains options for CREATE STATISTICS.
CreateTable represents a CREATE TABLE statement.
CreateTenant represents a CREATE VIRTUAL CLUSTER statement.
CreateTenantFromReplication represents a CREATE VIRTUAL CLUSTER...FROM REPLICATION statement.
CreateType represents a CREATE TYPE statement.
CreateView represents a CREATE VIEW statement.
CTE represents a common table expression inside of a WITH clause.
CursorStmt represents the shared structure between a FETCH and MOVE statement.
DArray is the array Datum.
DatumAlloc provides batch allocation of datum pointers, amortizing the cost of the allocations.
DBitArray is the BIT/VARBIT Datum.
DBox2D is the Datum representation of the Box2D type.
DCollatedString is the Datum for strings with a locale.
DDate is the date Datum represented as the number of days after the Unix epoch.
DDecimal is the decimal Datum.
Deallocate represents a DEALLOCATE statement.
DeclareCursor represents a DECLARE statement.
DefaultVal represents the DEFAULT expression.
Delete represents a DELETE statement.
DEnum represents an ENUM value.
DGeography is the Geometry Datum.
DGeometry is the Geometry Datum.
DInterval is the interval Datum.
DIPAddr is the IPAddr Datum.
Discard represents a DISCARD statement.
DJSON is the JSON Datum.
DoBlock represents a SQL DO statement.
DOid is the Postgres OID datum.
DOidWrapper is a Datum implementation which is a wrapper around a Datum, allowing custom Oid values to be attached to the Datum and its types.T.
DPGVector is the Datum representation of the PGVector type.
DropDatabase represents a DROP DATABASE statement.
DropExternalConnection represents a DROP EXTERNAL CONNECTION statement.
DropIndex represents a DROP INDEX statement.
DropOwnedBy represents a DROP OWNED BY command.
DropPolicy is a tree struct for the DROP POLICY DDL statement.
DropRole represents a DROP ROLE statement.
DropRoutine represents a DROP FUNCTION or DROP PROCEDURE statement.
DropSchema represents a DROP SCHEMA command.
DropSequence represents a DROP SEQUENCE statement.
DropTable represents a DROP TABLE statement.
DropTenant represents a DROP VIRTUAL CLUSTER command.
DropTrigger represents a DROP TRIGGER statement.
DropType represents a DROP TYPE command.
DropView represents a DROP VIEW statement.
DTimestamp is the timestamp Datum.
DTimestampTZ is the timestamp Datum that is rendered with session offset.
DTimeTZ is the time with time zone Datum.
DTSQuery is the tsquery Datum.
DTSVector is the tsvector Datum.
DTuple is the tuple Datum.
DUuid is the UUID Datum.
DVoid represents a void type.
Execute represents an EXECUTE statement.
Explain represents an EXPLAIN statement.
ExplainAnalyze represents an EXPLAIN ANALYZE statement.
ExplainOptions contains information about the options passed to an EXPLAIN statement.
Export represents a EXPORT statement.
FamilyTableDef represents a family definition within a CREATE TABLE statement.
FetchCursor represents a FETCH statement.
FmtCtx is suitable for passing to Format() methods.
ForeignKeyConstraintTableDef represents a FOREIGN KEY constraint in the AST.
From represents a FROM clause.
FullBackupClause describes the frequency of full backups.
FuncExpr represents a function call.
FunctionDefinition implements a reference to the (possibly several) overloads for a built-in function.
FunctionProperties defines the properties of the built-in functions that are common across all overloads.
GeneratedAlwaysAsIdentity represents a column generated always as identity.
GeneratedByDefAsIdentity represents a column generated by default as identity.
Grant represents a GRANT statement.
GrantRole represents a GRANT <role> statement.
GrantTargetList represents a list of targets.
HiddenConstraint represents HIDDEN on a column.
HomogeneousType is a TypeList implementation that accepts any arguments, as long as all are the same type or NULL.
IfErrExpr represents an IFERROR expression.
IfExpr represents an IF expression.
Import represents a IMPORT statement.
IndexedVar is a VariableExpr that can be used as a leaf in expressions; it represents a dynamic value.
IndexedVarHelper wraps an IndexedVarContainer (an interface) and creates IndexedVars bound to that container.
IndexElem represents a column with a direction in a CREATE INDEX statement.
IndexFlags represents "@<index_name|index_id>" or "@{param[,param]}" where param is one of: - FORCE_INDEX=<index_name|index_id> - ASC / DESC - NO_INDEX_JOIN - NO_ZIGZAG_JOIN - NO_FULL_SCAN - AVOID_FULL_SCAN - IGNORE_FOREIGN_KEYS - FORCE_INVERTED_INDEX - FORCE_ZIGZAG - FORCE_ZIGZAG=<index_name|index_id>* - FAMILY=[family_id] It is used optionally after a table name in SELECT statements.
IndexLookupFlags is the flag struct used for resolver.ResolveIndex() only.
IndexTableDef represents an index definition within a CREATE TABLE statement.
IndirectionExpr represents a subscript expression.
Insert represents an INSERT statement.
InTupleOp is a BinaryEvalOp.
IsNotNullExpr represents an IS NOT NULL expression.
IsNullExpr represents an IS NULL expression.
IsOfTypeExpr represents an IS {,NOT} OF (type_list) expression.
JoinTableExpr represents a TableExpr that's a JOIN operation.
JSONAllExistsOp is a BinaryEvalOp.
JSONExistsOp is a BinaryEvalOp.
JSONFetchTextPathOp is a BinaryEvalOp.
JSONFetchValPathOp is a BinaryEvalOp.
JSONSomeExistsOp is a BinaryEvalOp.
KVOption is a key-value option.
LabelSpec describes the labeling specification for an object.
LikeTableDef represents a LIKE table declaration on a CREATE TABLE statement.
LikeTableOption represents an individual INCLUDING / EXCLUDING statement on a LIKE table declaration.
Limit represents a LIMIT clause.
ListPartition represents a PARTITION definition within a PARTITION BY LIST.
LiteralValuesClause is like ValuesClause but values have been typed checked and evaluated and are assumed to be ready to use Datums.
Locality defines the locality for a given table.
LockingItem represents a single locking item in a locking clause.
MatchLikeOp is a BinaryEvalOp.
MatchRegexpOp is a BinaryEvalOp.
MoveCursor represents a MOVE statement.
MultipleResultsError is returned by QueryRow when more than one result is encountered.
NamedColumnQualification wraps a NamedColumnQualification with a name.
NaturalJoinCond represents a NATURAL join condition.
NoReturningClause represents the absence of a RETURNING clause.
NotExpr represents a NOT expression.
NotNullConstraint represents NOT NULL on a column.
NullConstraint represents NULL on a column.
NullIfExpr represents a NULLIF expression.
NumVal represents a constant numeric value.
ObjectLookupFlags is the flag struct suitable for GetObjectByName().
ObjectNamePrefix corresponds to the path prefix of an object name.
OIDTypeReference is a reference to a type directly by its stable ID.
OnConflict represents an `ON CONFLICT (columns) WHERE arbiter DO UPDATE SET exprs WHERE where` clause.
OnJoinCond represents an ON join condition.
Order represents an ordering expression.
OrExpr represents an OR expression.
OverlapsArrayOp is a BinaryEvalOp.
OverlapsINetOp is a BinaryEvalOp.
Overload is one of the overloads of a built-in function.
ParamType encapsulate a function parameter name and type.
ParenExpr represents a parenthesized expression.
ParenSelect represents a parenthesized SELECT/UNION/VALUES statement.
ParenTableExpr represents a parenthesized TableExpr.
PartitionBy represents an PARTITION BY definition within a CREATE/ALTER TABLE/INDEX statement or within a subpartition statement.
PartitionByIndex represents a PARTITION BY definition within a CREATE/ALTER INDEX statement.
PartitionByTable represents a PARTITION [ALL] BY definition within a CREATE/ALTER TABLE statement.
PartitionMaxVal represents the MAXVALUE expression.
PartitionMinVal represents the MINVALUE expression.
Placeholder represents a named placeholder.
PlaceholderInfo defines the interface to SQL placeholders.
PlaceholderTypesInfo encapsulates typing information for placeholders.
Prepare represents a PREPARE statement.
PrepareTransaction represents a PREPARE TRANSACTION <transaction-id> statement, used for the first phase of a two-phase commit.
PrependToMaybeNullArrayOp is a BinaryEvalOp.
PrettyCfg holds configuration for pretty printing statements.
PrimaryKeyConstraint represents PRIMARY KEY on a column.
QualifiedOverload is a wrapper of Overload prefixed with a schema name.
RangeCond represents a BETWEEN [SYMMETRIC] or a NOT BETWEEN [SYMMETRIC] expression.
RangePartition represents a PARTITION definition within a PARTITION BY RANGE.
ReassignOwnedBy represents a REASSIGN OWNED BY <name> TO <name> statement.
ReferenceActions contains the actions specified to maintain referential integrity through foreign keys for different operations.
RefreshMaterializedView represents a REFRESH MATERIALIZED VIEW statement.
A RegexpCache is a cache used to store compiled regular expressions.
ReleaseSavepoint represents a RELEASE SAVEPOINT <name> statement.
Relocate represents an `ALTER TABLE/INDEX .
RelocateRange represents an `ALTER RANGE .
RenameColumn represents a RENAME COLUMN statement.
RenameDatabase represents a RENAME DATABASE statement.
RenameIndex represents a RENAME INDEX statement.
RenameTable represents a RENAME TABLE or RENAME VIEW or RENAME SEQUENCE statement.
ReparentDatabase represents a database reparenting as a schema operation.
ReplicationCutoverTime represent the user-specified cutover time.
ResolvableFunctionReference implements the editable reference call of a FuncExpr.
ResolvedFunctionDefinition is similar to FunctionDefinition but with all the overloads qualified with schema name.
Restore represents a RESTORE statement.
RestoreOptions describes options for the RESTORE execution.
ReturningNothing represents RETURNING NOTHING.
Revoke represents a REVOKE statement.
RevokeRole represents a REVOKE <role> statement.
RoleSpec represents a role.
RollbackPrepared represents a ROLLBACK PREPARED <transaction-id> statement, used for the second phase of a two-phase rollback.
RollbackToSavepoint represents a ROLLBACK TO SAVEPOINT <name> statement.
RollbackTransaction represents a ROLLBACK statement.
RoutineBody represent a list of statements in a UDF body.
RoutineExceptionHandler encapsulates the information needed to match and handle errors for the exception block of a routine defined with PLpgSQL.
RoutineExpr represents sequential execution of multiple statements.
RoutineName represent a function name in a UDF relevant statement, either DDL or DML statement.
RoutineObj represents a routine (function or procedure) object in DROP, GRANT, and REVOKE statements.
RoutineOpenCursor stores the information needed to correctly open a cursor with the output of a routine.
RoutineParam represents a parameter in a UDF signature.
RoutineReturn represent a RETURN statement in a UDF body.
RoutineReturnType represent the return type of UDF.
RowsFromExpr represents a ROWS FROM(...) expression.
Savepoint represents a SAVEPOINT <name> statement.
ScalarProperties contains the properties of the current scalar expression discovered during semantic analysis.
Scatter represents an `ALTER TABLE/INDEX .
ScheduledBackup represents scheduled backup job.
ScheduledChangefeed represents scheduled changefeed job.
Scrub represents a SCRUB statement.
ScrubOptionConstraint represents a CONSTRAINT scrub check.
ScrubOptionIndex represents an INDEX scrub check.
ScrubOptionPhysical represents a PHYSICAL scrub check.
Select represents a SelectStatement with an ORDER and/or LIMIT.
SelectClause represents a SELECT statement.
SelectExpr represents a SELECT expression.
SemaContext defines the context in which to perform semantic analysis on an expression syntax tree.
SemaProperties is a holder for required and derived properties during semantic analysis.
SequenceOption represents an option on a CREATE SEQUENCE statement.
SetClusterSetting represents a SET CLUSTER SETTING statement.
SetSessionAuthorizationDefault represents a SET SESSION AUTHORIZATION DEFAULT statement.
SetSessionCharacteristics represents a SET SESSION CHARACTERISTICS AS TRANSACTION statement.
SetTracing represents a SET TRACING statement.
SetTransaction represents a SET TRANSACTION statement.
SetVar represents a SET or RESET statement.
SetZoneConfig represents an ALTER DATABASE/TABLE..
ShardedIndexDef represents a hash sharded secondary index definition within a CREATE TABLE or CREATE INDEX statement.
ShardedPrimaryKeyConstraint represents `PRIMARY KEY .
ShowBackup represents a SHOW BACKUP statement.
ShowChangefeedJobs represents a SHOW CHANGEFEED JOBS statement.
ShowClusterSetting represents a SHOW CLUSTER SETTING statement.
ShowClusterSettingList represents a SHOW [ALL|PUBLIC] CLUSTER SETTINGS statement.
ShowColumns represents a SHOW COLUMNS statement.
ShowCommitTimestamp represents a SHOW COMMIT TIMESTAMP statement.
ShowCompletions represents a SHOW COMPLETIONS statement.
ShowConstraints represents a SHOW CONSTRAINTS statement.
ShowCreate represents a SHOW CREATE statement.
ShowCreateAllSchemas represents a SHOW CREATE ALL SCHEMAS statement.
ShowCreateAllTables represents a SHOW CREATE ALL TABLES statement.
ShowCreateAllTypes represents a SHOW CREATE ALL TYPES statement.
ShowCreateExternalConnections represents a SHOW CREATE EXTERNAL CONNECTION statement.
ShowCreateRoutine represents a SHOW CREATE FUNCTION or SHOW CREATE PROCEDURE statement.
ShowCreateSchedules represents a SHOW CREATE SCHEDULE statement.
ShowCreateTrigger represents a SHOW CREATE TRIGGER statement.
ShowDatabaseIndexes represents a SHOW INDEXES FROM DATABASE statement.
ShowDatabases represents a SHOW DATABASES statement.
ShowDefaultPrivileges represents a SHOW DEFAULT PRIVILEGES statement.
ShowDefaultSessionVariablesForRole represents a SHOW DEFAULT SESSION VARIABLES FOR ROLE <name> statement.
ShowEnums represents a SHOW ENUMS statement.
ShowExternalConnections represents a SHOW EXTERNAL CONNECTIONS statement.
ShowFingerprintOptions describes options for the SHOW EXPERIMENTAL_FINGERPINT execution.
ShowFingerprints represents a SHOW EXPERIMENTAL_FINGERPRINTS statement.
ShowFullTableScans represents a SHOW FULL TABLE SCANS statement.
ShowGrants represents a SHOW GRANTS statement.
ShowHistogram represents a SHOW HISTOGRAM statement.
ShowIndexes represents a SHOW INDEX statement.
ShowJobOptions describes options for the SHOW JOB execution.
ShowJobs represents a SHOW JOBS statement.
ShowLastQueryStatistics represents a SHOW LAST QUERY STATS statement.
ShowLogicalReplicationJobs represents a SHOW LOGICAL REPLICATION JOBS statement.
ShowLogicalReplicationJobsOptions represents the WITH clause in SHOW LOGICAL REPLICATION JOBS.
ShowPartitions represents a SHOW PARTITIONS statement.
ShowPolicies represents a SHOW POLICIES statement.
ShowQueries represents a SHOW STATEMENTS statement.
ShowRangeForRow represents a SHOW RANGE FOR ROW statement.
ShowRanges represents a SHOW RANGES statement.
ShowRangesOptions represents the WITH clause in SHOW RANGES.
ShowRegions represents a SHOW REGIONS statement.
ShowRoleGrants represents a SHOW GRANTS ON ROLE statement.
ShowRoles represents a SHOW ROLES statement.
ShowRoutines represents a SHOW FUNCTIONS or SHOW PROCEDURES statement.
ShowSavepointStatus represents a SHOW SAVEPOINT STATUS statement.
ShowSchedules represents a SHOW SCHEDULES statement.
ShowSchemas represents a SHOW SCHEMAS statement.
ShowSequences represents a SHOW SEQUENCES statement.
ShowSessions represents a SHOW SESSIONS statement.
ShowSurvivalGoal represents a SHOW SURVIVAL GOAL statement.
ShowSyntax represents a SHOW SYNTAX statement.
ShowTables represents a SHOW TABLES statement.
ShowTableStats represents a SHOW STATISTICS FOR TABLE statement.
ShowTenant represents a SHOW VIRTUAL CLUSTER statement.
ShowTenantClusterSetting represents a SHOW CLUSTER SETTING ..
ShowTenantClusterSettingList represents a SHOW CLUSTER SETTINGS FOR VIRTUAL CLUSTER statement.
ShowTenantOptions represents the WITH clause in SHOW VIRTUAL CLUSTER.
ShowTraceForSession represents a SHOW TRACE FOR SESSION statement.
ShowTransactions represents a SHOW TRANSACTIONS statement.
ShowTransactionStatus represents a SHOW TRANSACTION STATUS statement.
ShowTransferState represents a SHOW TRANSFER STATE statement.
ShowTriggers represents a SHOW TRIGGERS statement.
ShowTypes represents a SHOW TYPES statement.
ShowUsers represents a SHOW USERS statement.
ShowVar represents a SHOW statement.
ShowZoneConfig represents a SHOW ZONE CONFIGURATION statement.
SimilarToOp is a BinaryEvalOp.
SizeBatchParam represents a BATCH (SIZE size) parameter.
Split represents an `ALTER TABLE/INDEX .
StatementSource encapsulates one of the other statements as a data source.
StorageParam is a key-value parameter for table storage.
StrVal represents a constant string value.
Subquery represents a subquery.
TableAttrs saves the table petterns and a bool field SequenceOnly that shows if all tables are sequences.
TableIndexName refers to a table index.
TableName corresponds to the name of a table in a FROM clause, INSERT or UPDATE statement, etc.
TableRef represents a numeric table reference.
TenantCapability is a key-value parameter representing a tenant capability.
TenantID represents a tenant ID that can be pretty-printed.
TenantReplicationOptions options for the CREATE/ALTER VIRTUAL CLUSTER FROM REPLICATION command.
TenantSpec designates a tenant for the ALTER VIRTUAL CLUSTER statements.
TestingMapTypeResolver is a fake type resolver for testing purposes.
TransactionModes holds the transaction modes for a transaction.
Truncate represents a TRUNCATE statement.
TSMatchesQueryVectorOp is a BinaryEvalOp.
TSMatchesVectorQueryOp is a BinaryEvalOp.
Tuple represents a parenthesized list of expressions.
TupleStar represents (E).* expressions.
TxnControlExpr implements PL/pgSQL COMMIT and ROLLBACK statements.
TypeCollectorVisitor is an expression visitor that collects all explicit OID type references in an expression.
TypedDummy is a dummy expression that represents a dummy value with a specified type.
TypeName corresponds to the name of a type in a CREATE TYPE statement, in an expression, or column type etc.
UDFDisallowanceVisitor is used to determine if a type checked expression contains any UDF function sub-expression.
UnaryExpr represents a unary value expression.
UnaryNoop is a UnaryEvalOp.
UnaryOp is a unary operator.
UnaryOperator represents a unary operator used in a UnaryExpr.
UnaryOpOverloads is an overloaded set of unary operator implementations.
UnionClause represents a UNION statement.
UniqueConstraint represents UNIQUE on a column.
UniqueConstraintTableDef represents a unique constraint within a CREATE TABLE statement.
Unlisten represents a UNLISTEN statement.
UnqualifiedStar corresponds to a standalone '*' in a scalar expression.
UnresolvedFunctionName is an unresolved function name.
UnresolvedName corresponds to an unresolved qualified name.
UnresolvedObjectName is an unresolved qualified name for a database object (table, view, etc).
UnresolvedProcedureName is an unresolved procedure name.
UnspecifiedObjectName is an object name correspond to any object type.
Unsplit represents an `ALTER TABLE/INDEX .
UnsupportedError is an error object which is returned by some unimplemented SQL statements.
Update represents an UPDATE statement.
UpdateExpr represents an update expression.
UsingJoinCond represents a USING join condition.
ValuesClause represents a VALUES clause.
VariadicType is a TypeList implementation which accepts a fixed number of arguments at the beginning and an arbitrary number of homogenous arguments at the end.
VectorRows lets us store a Batch in a tree.LiteralValuesClause.
When represents a WHEN sub-expression.
Where represents a WHERE or HAVING clause.
WindowDef represents a single window definition expression.
WindowFrame represents static state of window frame over which calculations are made.
WindowFrameBound specifies the offset and the type of boundary.
WindowFrameBounds specifies boundaries of the window frame.
With represents a WITH statement.
ZoneConfigSettings represents info needed for zone config setting.
ZoneSpecifier represents a reference to a configurable zone of the keyspace.

# Interfaces

AggregateOverload is an opaque type which is used to box an eval.AggregateOverload.
AlterBackupCmd represents a backup modification operation.
AlterBackupScheduleCmd represents a changefeed modification operation.
AlterChangefeedCmd represents a changefeed modification operation.
AlterIndexCmd represents an index modification operation.
AlterSchemaCmd represents a schema modification operation.
AlterTableCmd represents a table modification operation.
AlterTypeCmd represents a type modification operation.
BinaryEvalOp is a binary operation which can be evaluated.
UnaryOpEvaluator knows how to evaluate BinaryEvalOps.
CCLOnlyStatement is a marker interface for statements that require a CCL binary for successful planning or execution.
ColumnMutationCmd is the subset of AlterTableCmds that modify an existing column.
ColumnQualification represents a constraint on a column.
CompareContext represents the dependencies used to evaluate comparisons between datums.
CompositeDatum is a Datum that may require composite encoding in indexes.
Constant is an constant literal expression which may be resolved to more than one type.
ConstraintTableDef represents a constraint definition within a CREATE TABLE statement.
Datum represents a SQL value.
DoBlockBody represents the fully parsed code body of a DO statement.
DoBlockOption is an interface representing DO statement properties.
Expr represents an expression.
ExprContainer represents an abstract container of Exprs.
ExprEvaluator is used to evaluate TypedExpr expressions.
FnOverload is an opaque type used to box an eval.FnOverload.
FnWithExprsOverload is an opaque type used to box an eval.FnWithExprsOverload.
FunctionReference is the common interface to UnresolvedName and QualifiedFunctionName.
FunctionReferenceResolver is the interface that provides the ability to resolve built-in or user-defined function definitions from unresolved names.
GeneratorOverload is an opaque type used to box an eval.GeneratorOverload.
GeneratorWithExprsOverload is an opaque type used to box an eval.GeneratorWithExprsOverload.
HiddenFromShowQueries is a pseudo-interface to be implemented by statements that should not show up in SHOW QUERIES (and are hence not cancellable using CANCEL QUERIES either).
IndexedVarContainer provides type-checking for an IndexedVar.
JoinCond represents a join condition.
NodeFormatter is implemented by nodes that can be pretty-printed.
ObjectName is a common interface for qualified object names.
ObserverStatement is a marker interface for statements which are allowed to run regardless of the current transaction state: statements other than rollback are generally rejected if the session is in a failed transaction state, but it's convenient to allow some statements (e.g.
Operator is used to identify Operators; used in sql.y.
OpEvaluator is an evaluator for UnaryEvalOp and BinaryEvalOp operations.
ParseContext provides the information necessary for parsing dates.
QualifiedNameResolver is the helper interface to resolve qualified table names given an ID and the required table kind, as well as the current database to determine whether or not to include the database in the qualification.
RegexpCacheKey allows cache keys to take the form of different types, as long as they are comparable and can produce a pattern when needed for regexp compilation.
ResolvableTypeReference represents a type that is possibly unknown until type-checking/type name resolution is performed.
ReturningClause represents the returning clause on a statement.
RoutineExecFactory is a factory used to build optimizer expressions into execution plans for statements within a RoutineExpr.
RoutineOption is an interface representing UDF properties.
RoutinePlan represents a plan for a statement in a routine.
ScrubOption represents a scrub option.
SearchPath encapsulates the ordered list of schemas in the current database to search during name resolution.
SelectStatement represents any SELECT statement.
SQLFnOverload is an opaque type used to box an eval.SQLFnOverload.
Statement represents a statement.
StoredProcContinuation represents the plan for a CALL statement that resumes execution of a stored procedure that paused in order to execute a COMMIT or ROLLBACK statement.
SubqueryExpr is an interface used to identify an expression as a subquery.
TableDef represents a column, index or constraint definition within a CREATE TABLE statement.
TableExpr represents a table expression.
TablePattern is the common interface to UnresolvedName, TableName and AllTablesSelector.
TypedExpr represents a well-typed expression.
TypeList is a list of types representing a function parameter list.
TypeReferenceResolver is the interface that will provide the ability to actually look up type metadata and transform references into *types.T's.
UnaryEvalOp is a unary operation which can be evaluated.
UnaryOpEvaluator knows how to evaluate UnaryEvalOps.
UnresolvedRoutineName is an unresolved function or procedure name.
UnsupportedTypeChecker is used to check that a type is supported by the current cluster version.
ValueHandler is an interface to allow raw types to be extracted from strings.
VariableExpr is an Expr that may change per row.
VarName occurs inside scalar expressions.
Visitor defines methods that are called for nodes during an expression or statement walk.
WindowOverload is an opaque type which is used to box an eval.WindowOverload.

# Type aliases

AggType specifies the type of aggregation.
AlterBackupCmds is an array of type AlterBackupCmd.
AlterBackupScheduleCmds represents a list of changefeed alterations.
AlterChangefeedCmds represents a list of changefeed alterations.
AlterIndexCmds represents a list of index alterations.
AlterTableCmds represents a list of table alterations.
AnnotationIdx is the 1-based index of an annotation.
Annotations is a container for AST annotations.
ArraySubscripts represents a sequence of one or more array subscripts.
AuditMode represents a table audit mode.
CaseMode directs which casing mode to use.
ChangefeedTargets represents a list of database objects to be watched by a changefeed.
ColumnCollation represents a COLLATE clause for a column.
ColumnDefList represents a list of ColumnDefs.
ColumnID is a custom type for ColumnDescriptor IDs.
CompareAnyTupleOp is a BinaryEvalOp.
CompositeKeyMatchMethod is the algorithm use when matching composite keys.
CopyFormat identifies a COPY data format.
CreateTableOnCommitSetting represents the CREATE TABLE ..
CreateTypeVariety represents a particular variety of user defined types.
CTEMaterializeClause represents either MATERIALIZED, NOT MATERIALIZED, or an empty materialization clause.
CursorScrollOption represents the scroll option, if one was given, for a DECLARE statement.
CursorSensitivity represents the "sensitivity" of a cursor, which describes whether it sees writes that occur within the transaction after it was declared.
DataPlacement represents the desired data placement strategy for a given database.
Datums is a slice of Datum values.
DBool is the boolean Datum.
DBytes is the bytes Datum.
DeferrableMode holds the deferrable mode for a transaction.
DEncodedKey is a special Datum of types.EncodedKey type, used to pass through encoded key data.
DescriptorCoverage specifies the subset of descriptors that are requested during a backup or a restore.
DesiredObjectKind represents what kind of object is desired in a name resolution attempt.
DFloat is the float Datum.
DInt is the int Datum.
Direction for ordering results.
DiscardMode is an enum of the various discard modes.
DistinctOn represents a DISTINCT ON clause.
DoBlockOptions represent a list of options for a DO statement.
DropBehavior represents options for dropping schema elements.
DString is the string Datum.
DTime is the time Datum.
EnumValue represents a single enum value.
EnumValueList represents a list of enum values.
ExplainFlag is a modifier in an EXPLAIN statement (like VERBOSE).
ExplainMode indicates the mode of the explain.
Exprs represents a list of value expressions.
FamilyID is a custom type for column family ID.
FetchType represents the type of a FETCH (or MOVE) statement.
FmtCtxOption is an option to pass into NewFmtCtx.
FmtFlags carries options for the pretty-printer.
FunctionClass specifies the class of the builtin function.
GeneratedIdentityType represents either GENERATED ALWAYS AS IDENTITY or GENERATED BY DEFAULT AS IDENTITY.
GroupBy represents a GROUP BY clause.
ID is a custom type for {Database,Table}Descriptor IDs.
IndexElemList is list of IndexElem.
IndexID is a custom type for IndexDescriptor IDs.
IsolationLevel holds the isolation level for a transaction.
JobCommand determines which type of action to effect on the selected job(s).
KVOptions is a list of KVOptions.
LikeTableOpt represents one of the types of things that can be included or excluded in a LIKE table declaration.
LineWidthMode directs which mode of line width to use.
LocalityLevel is a defined locality.
LockingClause represents a locking clause, like FOR UPDATE.
LockingDurability represents the durability of a lock.
LockingForm represents the form of locking to use, record locking or predicate locking.
LockingStrength represents the possible row-level lock modes for a SELECT statement.
LockingWaitPolicy represents the possible policies for handling conflicting locks held by other active transactions when attempting to lock rows due to FOR UPDATE/SHARE clauses (i.e.
A Name is an SQL identifier.
A NameList is a list of identifiers.
NameParts is the array of strings that composes the path in an UnresolvedName.
NewParseContextOption is an option to NewParseContext.
Nullability represents either NULL, NOT NULL or an unspecified value (silent NULL).
NullsOrder for specifying ordering of NULLs.
ObjectNamePrefixList is a list of ObjectNamePrefix.
OrderBy represents an ORDER BY clause.
OrderType indicates which type of expression is used in ORDER BY.
OverloadPreference is used to disambiguate between eligible overload candidates during type-checking.
ParamTypes is a list of function parameter names and their types.
PartitionByType is an enum of each type of partitioning (LIST/RANGE).
Persistence defines the persistence strategy for a given table.
PlaceholderIdx is the 0-based index of a placeholder.
PlaceholderTypes stores placeholder types (or type hints), one per PlaceholderIdx.
PolicyCommand represents the type of commands a row-level security policy will apply against.
PolicyType represents the type of the row-level security policy.
PrettyAlignMode directs which alignment mode to use.
QueryArguments stores query arguments, one per PlaceholderIdx.
RawRows exposes a [][]TypedExpr as an ExprContainer.
ReadWriteMode holds the read write mode for a transaction.
ReferenceAction is the method used to maintain referential integrity through foreign keys.
RefreshDataOption corresponds to arguments for the REFRESH MATERIALIZED VIEW statement.
RelocateSubject indicates what replicas of a range should be relocated.
RequiredTableKind controls what kind of TableDescriptor backed object is requested to be resolved.
ReturningExprs represents RETURNING expressions.
ReturnTyper defines the type-level function in which a builtin function's return type is determined.
RoleSpecList is a list of RoleSpec.
RoleSpecType represents whether the RoleSpec is represented by string name or if the spec is CURRENT_USER or SESSION_USER.
RoutineBodyStr is a string containing all statements in a UDF body.
RoutineLanguage indicates the language of the statements in the routine body.
RoutineLeakproof indicates whether a function is leakproof or not.
RoutineNullInputBehavior represent the UDF property on null parameters.
RoutineObjs is a slice of RoutineObj.
RoutineOptions represent a list of routine options.
RoutineParamClass indicates what type of argument an arg is.
RoutineParams represents a list of RoutineParam.
RoutinePlanGeneratedFunc is the function type that is called for each plan enumerated by a RoutinePlanGenerator.
RoutinePlanGenerator generates a plan for the execution of each statement within a routine.
RoutineSecurity indicates the mode of security that the routine will be executed with.
RoutineType specifies the type of routine represented by an overload.
RoutineVolatility represent UDF volatility property.
ScalarAncestors provides context for the current scalar expression during semantic analysis.
ScheduleCommand determines which type of action to effect on the selected job(s).
ScheduledJobExecutorType is a type identifying the names of the supported scheduled job executors.
ScheduleState describes what kind of schedules to display.
SchemaExprContext indicates in which schema change context an expression is being used in.
SchemaFeatureName feature name for a given statement, which can be used to detect via the feature check functions if the schema change is allowed.
ScrubOptions corresponds to a comma-delimited list of scrub options.
ScrubType describes the SCRUB statement operation.
SelectExprs represents SELECT expressions.
SemaRejectFlags contains flags to filter out certain kinds of expressions.
SequenceOptions represents a list of sequence options.
ShowBackupDetails represents the type of details to display for a SHOW BACKUP statement.
ShowCreateMode denotes what kind of SHOW CREATE should be used.
ShowRangesMode represents the WITH clause in SHOW RANGES.
ShowRangesSource represents the source of a SHOW RANGES statement.
ShowRegionsFrom denotes what kind of SHOW REGIONS command is being used.
ShowTraceType is an enum of SHOW TRACE variants.
SimpleVisitFn is a function that is run for every node in the VisitPre stage; see SimpleVisit.
SpecializedVectorizedBuiltin is used to map overloads to the vectorized operator that is specific to that implementation of the builtin function.
StatementReturnType is the enumerated type for Statement return styles on the wire.
Statements represent a list of statements.
StatementType is the enumerated type for Statement type return.
StorageParams is a list of StorageParams.
StoredProcTxnOp indicates whether a stored procedure has requested that the current transaction be committed or aborted.
StringOrPlaceholderOptList is a list of strings or placeholders.
SurvivalGoal represents the desired survivability level for a given database.
TableDefs represents a list of table definitions.
TableExprs represents a list of table expressions.
TableIndexNames is a list of indexes.
TableNames represents a comma separated list (see the Format method) of table names.
TablePatterns implement a comma-separated list of table patterns.
TableRLSMode represents different modes that the table can be in for row-level security.
TenantServiceCmd represents a parameter to ALTER VIRTUAL CLUSTER.
TriggerEventTypeSet is a set of TriggerEventType values, used to conveniently check for the presence of a given event type in a trigger definition.
TxnControlPlanGenerator builds the plan for a StoredProcContinuation.
TypedExprs represents a list of well-typed value expressions.
UnaryOperatorSymbol represents a unary operator.
UnionType represents one of the three set operations in sql.
An UnrestrictedName is a Name that does not need to be escaped when it matches a reserved keyword.
UpdateExprs represents a list of update expressions.
UserPriority holds the user priority for a transaction.
ValidationBehavior specifies whether or not a constraint is validated.
Window represents a WINDOW clause.