Versions in this module Expand all Collapse all v0 v0.11.776 Oct 9, 2026 v0.11.775 Oct 8, 2026 v0.11.774 Oct 7, 2026 v0.11.773 Oct 6, 2026 v0.11.772 Oct 6, 2026 Changes in this version + const HIVE_DATEINT_FORMAT + const HIVE_DATE_FORMAT + const HIVE_TIME_FORMAT + const Loc_POST_ALIAS + const Loc_POST_CREATE + const Loc_POST_EXPRESSION + const Loc_POST_INDEX + const Loc_POST_NAME + const Loc_POST_SCHEMA + const Loc_POST_WITH + const Loc_UNSUPPORTED + const NormCaseInsensitive + const NormCaseInsensitiveUpper + const NormCaseSensitive + const NormLowercase + const NormUppercase + const UNSUPPORTED_TEMPLATE + var ALL_FUNCTIONS = []Kind + var ALL_JSON_PATH_PARTS = newKindSet(allJSONPathPartKinds) + var BIGINT_EXTRACT_DATE_PARTS = newStrSet("EPOCH_SECOND", "EPOCH_MILLISECOND", "EPOCH_MICROSECOND", "EPOCH_NANOSECOND", ...) + var COLUMN_PARTS = []string + var DataType_ARRAY_TYPES = newDTypeSet(DT_ARRAY, DT_LIST) + var DataType_FLOAT_TYPES = newDTypeSet(DT_DOUBLE, DT_FLOAT) + var DataType_INTEGER_TYPES = newDTypeSet(DT_BIGINT, DT_BIT, DT_INT, DT_INT128, DT_INT256, DT_MEDIUMINT, DT_SMALLINT, ...) + var DataType_NESTED_TYPES = newDTypeSet(DT_ARRAY, DT_FILE, DT_LIST, DT_MAP, DT_NESTED, DT_OBJECT, DT_STRUCT, DT_UNION) + var DataType_NUMERIC_TYPES = newDTypeSet(DT_BIGDECIMAL, DT_BIGINT, DT_BIT, DT_DECFLOAT, DT_DECIMAL, DT_DECIMAL128, ...) + var DataType_REAL_TYPES = newDTypeSet(DT_BIGDECIMAL, DT_DECFLOAT, DT_DECIMAL, DT_DECIMAL128, DT_DECIMAL256, ...) + var DataType_SIGNED_INTEGER_TYPES = newDTypeSet(DT_BIGINT, DT_INT, DT_INT128, DT_INT256, DT_MEDIUMINT, DT_SMALLINT, DT_TINYINT) + var DataType_STRUCT_TYPES = newDTypeSet(DT_FILE, DT_NESTED, DT_OBJECT, DT_STRUCT, DT_UNION) + var DataType_TEMPORAL_TYPES = newDTypeSet(DT_DATE, DT_DATE32, DT_DATETIME, DT_DATETIME2, DT_DATETIME64, DT_SMALLDATETIME, ...) + var DataType_TEXT_TYPES = newDTypeSet(DT_CHAR, DT_NAME, DT_NCHAR, DT_NVARCHAR, DT_TEXT, DT_VARCHAR) + var DataType_UNSIGNED_INTEGER_TYPES = newDTypeSet(DT_UBIGINT, DT_UINT, DT_UINT128, DT_UINT256, DT_UMEDIUMINT, DT_USMALLINT, ...) + var DefaultOptimizerRules = []OptimizerRule + var FUNCTION_BY_NAME = map[string]Kind + var HIVE_NON_PADDED_TIME_FORMATS = []string + var JSON_PATH_PART_TRANSFORMS = map[Kind]GenFunc + var Logger = func(msg string) + var NAME_TO_PROPERTY = map[string]Kind + var PROPERTY_TO_NAME = map[Kind]string + var PropertiesLocations = []string + var QUERY_MODIFIERS = []string + var SAFE_IDENTIFIER_RE = regexp.MustCompile(`^[_a-zA-Z][\p{L}\p{N}_]*\n?$`) + var STRICT_TIME_FORMATS = [][2]string + var TABLE_PARTS = []string + var WEEK_START_DAY_TO_DOW = map[string]int + func DataTypeIsType(dt *Expr, dtypes []any, checkNullable bool) bool + func ExprString(e *Expr) string + func FindAllInScope(expression *Expr, kinds ...Kind) iter.Seq[*Expr] + func JoinCondition(join *Expr) ([]*Expr, []*Expr, *Expr) + func LineageAll(expression *Expr, opts LineageOptions) (names []string, nodes map[string]*LineageNode, err error) + func NormalizationDistance(expression *Expr, dnf bool, maxDistance int) int + func Normalized(expression *Expr, dnf bool) bool + func PivotOutputColumns(p *Expr, prePivotColumns []string) *omap[string] + func PushdownCTEAliasColumns(scope *Scope) + func PyLower(s string) string + func PyRepr(s string) string + func PyUpper(s string) string + func QualifyOutputs(expression *Expr, dialect *Dialect) + func QualifyOutputsScope(scope *Scope, dialect *Dialect) + func ReplaceChildren(expression *Expr, fn func(*Expr) any) + func WalkInScope(expression *Expr, prune func(*Expr) bool) iter.Seq[*Expr] + type AnnotateOptions struct + CoercesTo map[DType]DTypeSet + Dialect *Dialect + ExpressionMetadata ExprMetadataType + OverwriteTypes *bool + Schema *MappingSchema + SchemaMap *SchemaMap + type DType uint16 + const DT_AGGREGATEFUNCTION + const DT_ARRAY + const DT_BIGDECIMAL + const DT_BIGINT + const DT_BIGNUM + const DT_BIGSERIAL + const DT_BINARY + const DT_BIT + const DT_BLOB + const DT_BOOLEAN + const DT_BPCHAR + const DT_CHAR + const DT_CHARACTER_SET + const DT_DATE + const DT_DATE32 + const DT_DATEMULTIRANGE + const DT_DATERANGE + const DT_DATETIME + const DT_DATETIME2 + const DT_DATETIME64 + const DT_DECFLOAT + const DT_DECIMAL + const DT_DECIMAL128 + const DT_DECIMAL256 + const DT_DECIMAL32 + const DT_DECIMAL64 + const DT_DOUBLE + const DT_DYNAMIC + const DT_ENUM + const DT_ENUM16 + const DT_ENUM8 + const DT_FILE + const DT_FIXEDSTRING + const DT_FLOAT + const DT_GEOGRAPHY + const DT_GEOGRAPHYPOINT + const DT_GEOMETRY + const DT_HLLSKETCH + const DT_HSTORE + const DT_IMAGE + const DT_INET + const DT_INT + const DT_INT128 + const DT_INT256 + const DT_INT4MULTIRANGE + const DT_INT4RANGE + const DT_INT8MULTIRANGE + const DT_INT8RANGE + const DT_INTERVAL + const DT_IPADDRESS + const DT_IPPREFIX + const DT_IPV4 + const DT_IPV6 + const DT_JSON + const DT_JSONB + const DT_LINESTRING + const DT_LIST + const DT_LONGBLOB + const DT_LONGTEXT + const DT_LOWCARDINALITY + const DT_MAP + const DT_MEDIUMBLOB + const DT_MEDIUMINT + const DT_MEDIUMTEXT + const DT_MONEY + const DT_MULTILINESTRING + const DT_MULTIPOLYGON + const DT_NAME + const DT_NCHAR + const DT_NESTED + const DT_NONE + const DT_NOTHING + const DT_NULL + const DT_NUMMULTIRANGE + const DT_NUMRANGE + const DT_NVARCHAR + const DT_OBJECT + const DT_POINT + const DT_POLYGON + const DT_RANGE + const DT_RING + const DT_ROWVERSION + const DT_SERIAL + const DT_SET + const DT_SIMPLEAGGREGATEFUNCTION + const DT_SMALLDATETIME + const DT_SMALLINT + const DT_SMALLMONEY + const DT_SMALLSERIAL + const DT_STRUCT + const DT_SUPER + const DT_TDIGEST + const DT_TEXT + const DT_TIME + const DT_TIMESTAMP + const DT_TIMESTAMPLTZ + const DT_TIMESTAMPNTZ + const DT_TIMESTAMPTZ + const DT_TIMESTAMP_MS + const DT_TIMESTAMP_NS + const DT_TIMESTAMP_S + const DT_TIMETZ + const DT_TIME_NS + const DT_TINYBLOB + const DT_TINYINT + const DT_TINYTEXT + const DT_TSMULTIRANGE + const DT_TSRANGE + const DT_TSTZMULTIRANGE + const DT_TSTZRANGE + const DT_UBIGINT + const DT_UDECIMAL + const DT_UDOUBLE + const DT_UINT + const DT_UINT128 + const DT_UINT256 + const DT_UMEDIUMINT + const DT_UNION + const DT_UNKNOWN + const DT_USERDEFINED + const DT_USMALLINT + const DT_UTINYINT + const DT_UUID + const DT_VARBINARY + const DT_VARCHAR + const DT_VARIANT + const DT_VECTOR + const DT_XML + const DT_YEAR + type DTypeSet struct + func (s DTypeSet) Has(t DType) bool + func (s DTypeSet) Items() []DType + func (s DTypeSet) Union(o DTypeSet) DTypeSet + func (s DTypeSet) With(types ...DType) DTypeSet + type Dialect struct + ClassName string + G *GeneratorSettings + Name string + NormalizationStrategy string + P *ParserSettings + S *DialectSettings + Settings map[string]any + T *TokenizerSettings + Version [3]int + func GetDialect(spec string) (*Dialect, error) + func MustDialect(name string) *Dialect + func (d *Dialect) CanQuote(id *Expr, identify string) bool + func (d *Dialect) CaseSensitive(text string) bool + func (d *Dialect) Generate(e *Expr, opts *GenerateOptions) (string, error) + func (d *Dialect) GenerateOwned(e *Expr, opts *GenerateOptions) (string, error) + func (d *Dialect) Is(name string) bool + func (d *Dialect) NewGenerator(opts *GenerateOptions) *Generator + func (d *Dialect) NewParser(opts *ParseOptions) *Parser + func (d *Dialect) NormalizeIdentifier(e *Expr) *Expr + func (d *Dialect) Parse(sql string, opts *ParseOptions) ([]*Expr, error) + func (d *Dialect) ParseOne(sql string, opts *ParseOptions) (*Expr, error) + func (d *Dialect) ParseOneInto(kind Kind, sql string, opts *ParseOptions) (*Expr, error) + func (d *Dialect) QuoteIdentifier(e *Expr, identify bool) *Expr + func (d *Dialect) Tokenize(sql string) ([]*Token, error) + func (d *Dialect) TokenizeScript(sql string) ([]*Token, error) + type DialectSettings struct + ALIAS_POST_TABLESAMPLE bool + ALIAS_POST_VERSION bool + ALTER_TABLE_ADD_REQUIRED_FOR_EACH_COLUMN bool + ALTER_TABLE_SUPPORTS_CASCADE bool + ANNOTATE_ALL_SCOPES bool + ARRAY_AGG_INCLUDES_NULLS Tri + ARRAY_FUNCS_PROPAGATES_NULLS bool + BIT_END string + BIT_START string + BYTE_END string + BYTE_START string + BYTE_STRINGS_SUPPORT_ESCAPED_SEQUENCES bool + BYTE_STRING_IS_BYTES_TYPE bool + COALESCE_COMPARISON_NON_STANDARD bool + CONCAT_COALESCE bool + CONCAT_WS_COALESCE bool + CONVERT_FORMAT_MAPPING map[string]string + COPY_PARAMS_ARE_CSV bool + CREATABLE_KIND_MAPPING map[string]string + DATEINT_FORMAT string + DATE_FORMAT string + DATE_PART_MAPPING map[string]string + DEFAULT_FUNCTIONS_COLUMN_NAMES map[Kind]string + DEFAULT_NULL_TYPE DType + DISABLES_ALIAS_REF_EXPANSION bool + DPIPE_IS_STRING_CONCAT bool + ESCAPED_SEQUENCES map[string]string + EXCLUDES_PSEUDOCOLUMNS_FROM_STAR bool + EXPAND_ONLY_GROUP_ALIAS_REF bool + FORCE_EARLY_ALIAS_REF_EXPANSION bool + FORMAT_MAPPING map[string]string + FORMAT_TIME_MAPPING map[string]string + HAS_DISTINCT_ARRAY_CONSTRUCTORS bool + HEX_END string + HEX_LOWERCASE bool + HEX_START string + HEX_STRING_IS_INTEGER_TYPE bool + IDENTIFIERS_CAN_START_WITH_DIGIT bool + IDENTIFIER_END string + IDENTIFIER_START string + INDEX_OFFSET int + INITCAP_DEFAULT_DELIMITER_CHARS string + INITCAP_SUPPORTS_CUSTOM_DELIMITERS bool + INVERSE_CREATABLE_KIND_MAPPING map[string]string + INVERSE_FORMAT_MAPPING map[string]string + INVERSE_TIME_MAPPING map[string]string + INVERSE_VECTOR_TYPE_ALIASES map[string]string + JSON_EXTRACT_SCALAR_SCALAR_ONLY bool + JSON_PATH_SINGLE_DOT_IS_WILDCARD bool + LEAST_GREATEST_IGNORES_NULLS bool + LOCKING_READS_SUPPORTED bool + LOG_BASE_FIRST Tri + NORMALIZATION_STRATEGY string + NORMALIZE_FUNCTIONS string + NULL_ORDERING string + NUMBERS_CAN_BE_UNDERSCORE_SEPARATED bool + ON_CONDITION_EMPTY_BEFORE_ERROR bool + PREFER_CTE_ALIAS_COLUMN bool + PRESERVE_ORIGINAL_NAMES bool + PRIORITIZE_NON_LITERAL_TYPES bool + PROJECTION_ALIASES_SHADOW_SOURCE_NAMES bool + PROMOTE_TO_INFERRED_DATETIME_TYPE bool + PSEUDOCOLUMNS StrSet + QUERY_RESULTS_ARE_STRUCTS bool + QUOTE_END string + QUOTE_START string + REGEXP_EXTRACT_DEFAULT_GROUP int + REGEXP_EXTRACT_POSITION_OVERFLOW_RETURNS_NULL bool + REQUIRES_PARENTHESIZED_STRUCT_ACCESS bool + SAFE_DIVISION bool + SAFE_TO_ELIMINATE_DOUBLE_NEGATION bool + SET_OP_DISTINCT_BY_DEFAULT map[Kind]Tri + STRICT_JSON_PATH_SYNTAX bool + STRICT_STRING_CONCAT bool + STRINGS_SUPPORT_ESCAPED_SEQUENCES bool + SUPPORTED_SETTINGS StrSet + SUPPORTS_ALIAS_REFS_IN_JOIN_CONDITIONS bool + SUPPORTS_COLUMN_JOIN_MARKS bool + SUPPORTS_FIXED_SIZE_ARRAYS bool + SUPPORTS_LIMIT_ALL bool + SUPPORTS_NULL_TYPE bool + SUPPORTS_ORDER_BY_ALL bool + SUPPORTS_STRUCT_STAR_EXPANSION bool + SUPPORTS_USER_DEFINED_TYPES bool + SUPPORTS_VALUES_DEFAULT bool + TABLESAMPLE_SIZE_IS_PERCENT bool + TABLES_REFERENCEABLE_AS_COLUMNS bool + TIME_FORMAT string + TIME_MAPPING map[string]string + TRY_CAST_REQUIRES_STRING Tri + TYPED_DIVISION bool + UNESCAPED_SEQUENCES map[string]string + UNICODE_END string + UNICODE_START string + UNNEST_COLUMN_ONLY bool + UUID_IS_STRING_TYPE bool + VALID_INTERVAL_UNITS StrSet + WEEK_OFFSET int + type ErrorLevel int + const ErrorLevelIgnore + const ErrorLevelImmediate + const ErrorLevelRaise + const ErrorLevelWarn + type Expr struct + func AliasExpr(expression *Expr, alias any, quoted *bool, copy bool) *Expr + func AliasTableExpr(expression *Expr, alias any, columns []any, quoted *bool, copy bool) *Expr + func AliasWithQuote(e *Expr, name string, quoted bool) *Expr + func AndExpr(expressions ...*Expr) *Expr + func AndExprOpts(expressions []*Expr, copy bool, wrap bool) *Expr + func AnnotateTypes(expression *Expr, o AnnotateOptions) *Expr + func ArrayExpr(expressions []*Expr, copy bool) *Expr + func Boolean(b bool) *Expr + func Canonicalize(expression *Expr, d *Dialect) *Expr + func CaseExpr(expression *Expr, copy bool) *Expr + func CastExpr(expression *Expr, to any, copy bool, d *Dialect) *Expr + func CastToType(e *Expr, typ string) *Expr + func ColumnExpr(col any, table, db, catalog any, fields []any, quoted *bool, copy bool) *Expr + func ConditionExpr(expression *Expr, copy bool) *Expr + func DataTypeBuild(dtype any, d *Dialect, udt bool, copy bool) *Expr + func DataTypeFromStr(dtype string, dialect *Dialect, udt bool) *Expr + func DotBuild(exprs []*Expr) *Expr + func EliminateCTEs(expression *Expr) *Expr + func EliminateJoins(expression *Expr) *Expr + func EliminateSubqueries(expression *Expr) *Expr + func ExceptExpr(expressions []*Expr, distinct bool, copy bool) *Expr + func FindInScope(expression *Expr, kinds ...Kind) *Expr + func FromArgList(kind Kind, args []*Expr) *Expr + func FromExpr(expression *Expr) *Expr + func IntersectExpr(expressions []*Expr, distinct bool, copy bool) *Expr + func IsolateTableSelects(expression *Expr, schema *MappingSchema, d *Dialect) *Expr + func LiteralInt(i int) *Expr + func LiteralNumber(s string) *Expr + func LiteralString(s string) *Expr + func MaybeParse(sql string, into Kind, prefix string, d *Dialect) *Expr + func MergeCTEs(expression *Expr, leaveTablesIsolated bool) *Expr + func MergeDerivedTables(expression *Expr, leaveTablesIsolated bool) *Expr + func MergeSubqueries(expression *Expr, leaveTablesIsolated bool) *Expr + func New(kind Kind, kv ...any) *Expr + func NewCTE(body *Expr, name string) *Expr + func NewDataType(d DType) *Expr + func NormalizeCNF(expression *Expr, dnf bool, maxDistance int) *Expr + func NormalizeIdentifiers(e *Expr, d *Dialect) *Expr + func NormalizeIdentifiersFull(e *Expr, d *Dialect, storeOriginalColumnIdentifiers bool) *Expr + func NormalizeIdentifiersStr(name string, d *Dialect) *Expr + func NotExpr(expression *Expr, copy bool) *Expr + func Null() *Expr + func Optimize(e *Expr, schema *MappingSchema, d *Dialect, rules []OptimizerRule) *Expr + func OptimizeJoins(expression *Expr) *Expr + func OptimizeSafe(e *Expr, schema *SchemaMap, d *Dialect, rules []OptimizerRule) (out *Expr, err error) + func OptimizeWith(e *Expr, ctx *OptimizeContext, rules []OptimizerRule) *Expr + func OrExpr(expressions ...*Expr) *Expr + func OrExprOpts(expressions []*Expr, copy bool, wrap bool) *Expr + func Paren(e *Expr) *Expr + func ParenExpr(expression *Expr, copy bool) *Expr + func PushdownPredicates(expression *Expr, d *Dialect) *Expr + func PushdownProjections(expression *Expr, schema *MappingSchema, removeUnusedSelections bool, ...) *Expr + func Qualify(expression *Expr, o QualifyOptions) *Expr + func QualifyColumns(expression *Expr, schema *MappingSchema, expandAliasRefs, expandStars bool, ...) *Expr + func QualifyDerivedTableOutputsTSQL(expression *Expr) *Expr + func QualifyTables(expression *Expr, db, catalog string, onQualify func(table *Expr), d *Dialect, ...) *Expr + func QueryLimitBuild(q *Expr, n int, d *Dialect) (out *Expr, err error) + func QueryLimitBuildOwned(q *Expr, n int, d *Dialect) (out *Expr, err error) + func QueryWithBuild(q *Expr, name, sql string, d *Dialect) (out *Expr, err error) + func QuoteIdentifiers(expression *Expr, d *Dialect, identify bool) *Expr + func ReorderJoins(expression *Expr) *Expr + func ReplaceTree(expression *Expr, fn func(*Expr) *Expr, prune func(*Expr) bool) *Expr + func SelectExpr(expressions ...*Expr) *Expr + func SelectReplaceProjections(sel *Expr, projection *Expr) *Expr + func Simplify(e *Expr, o SimplifyOptions) *Expr + func SimplifyParens(expression *Expr, d *Dialect) *Expr + func Star() *Expr + func SubqueryExpr(expression *Expr, alias any, copy bool) *Expr + func TableExpr(table, db, catalog any, quoted *bool, alias any) *Expr + func ToIdentifier(name string, quoted *bool) *Expr + func ToIdentifierAny(name any, quoted *bool, copy bool) *Expr + func TupleExpr(expressions []*Expr, copy bool) *Expr + func UnionExpr(expressions []*Expr, distinct bool, copy bool) *Expr + func UnnestSubqueries(expression *Expr) *Expr + func ValidateQualifyColumns(expression *Expr, sql string) *Expr + func VarChecked(name string) *Expr + func VarExpr(name string) *Expr + func VarOf(e *Expr) *Expr + func WithValidateArgs(e *Expr, args []*Expr) *Expr + func XorExpr(expressions ...*Expr) *Expr + func XorExprOpts(expressions []*Expr, copy bool, wrap bool) *Expr + func (e *Expr) AddComments(comments []string, prepend bool) + func (e *Expr) Alias() string + func (e *Expr) AliasColumnNames() []string + func (e *Expr) AliasOrName() string + func (e *Expr) Append(key string, value *Expr) + func (e *Expr) Arg(key string) any + func (e *Expr) ArgB(key string) bool + func (e *Expr) ArgE(key string) *Expr + func (e *Expr) ArgKey() string + func (e *Expr) ArgKeys() []string + func (e *Expr) ArgL(key string) []*Expr + func (e *Expr) ArgS(key string) string + func (e *Expr) BFS(prune func(*Expr) bool) iter.Seq[*Expr] + func (e *Expr) CTEs() []*Expr + func (e *Expr) CatalogName() string + func (e *Expr) Comments() []string + func (e *Expr) Copy() *Expr + func (e *Expr) DFS(prune func(*Expr) bool) iter.Seq[*Expr] + func (e *Expr) DTypeOf() DType + func (e *Expr) DbName() string + func (e *Expr) DeleteArg(key string) any + func (e *Expr) Depth() int + func (e *Expr) Equal(o *Expr) bool + func (e *Expr) ErrorMessages(args []*Expr) []string + func (e *Expr) ExprAnd(expressions []*Expr, copy bool, wrap bool) *Expr + func (e *Expr) ExprAs(alias any, quoted *bool, copy bool) *Expr + func (e *Expr) ExprNot(copy bool) *Expr + func (e *Expr) ExprOr(expressions []*Expr, copy bool, wrap bool) *Expr + func (e *Expr) Expression() *Expr + func (e *Expr) Expressions() []*Expr + func (e *Expr) Find(kinds ...Kind) *Expr + func (e *Expr) FindAll(kinds ...Kind) iter.Seq[*Expr] + func (e *Expr) FindAllDFS(kinds ...Kind) iter.Seq[*Expr] + func (e *Expr) FindAllList(kinds ...Kind) []*Expr + func (e *Expr) FindAncestor(kinds ...Kind) *Expr + func (e *Expr) Flatten(unnest bool) []*Expr + func (e *Expr) HasArgKey(key string) bool + func (e *Expr) Hash() uint64 + func (e *Expr) Index() int + func (e *Expr) Is(kind Kind) bool + func (e *Expr) IsA(kinds ...Kind) bool + func (e *Expr) IsInt() bool + func (e *Expr) IsLeaf() bool + func (e *Expr) IsNumber() bool + func (e *Expr) IsSemiOrAntiJoin() bool + func (e *Expr) IsStar() bool + func (e *Expr) IsString() bool + func (e *Expr) IsTypeOf(dtypes ...any) bool + func (e *Expr) IsWrapper() bool + func (e *Expr) IterExpressions(reverse bool) []*Expr + func (e *Expr) JoinOn(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) JoinUsing(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) Key() string + func (e *Expr) Kind() Kind + func (e *Expr) KindText() string + func (e *Expr) Left() *Expr + func (e *Expr) Meta() map[string]any + func (e *Expr) MetaGet(key string) any + func (e *Expr) MethodText() string + func (e *Expr) Name() string + func (e *Expr) NamedSelects() []string + func (e *Expr) OutputName() string + func (e *Expr) Own() *Expr + func (e *Expr) Parent() *Expr + func (e *Expr) ParentSelect() *Expr + func (e *Expr) Parts() []*Expr + func (e *Expr) Pop() *Expr + func (e *Expr) PopComments() []string + func (e *Expr) QueryExcept(expressions []*Expr, distinct bool, copy bool) *Expr + func (e *Expr) QueryIntersect(expressions []*Expr, distinct bool, copy bool) *Expr + func (e *Expr) QueryLimit(expression *Expr, copy bool) *Expr + func (e *Expr) QueryOffset(expression *Expr, copy bool) *Expr + func (e *Expr) QueryOrderBy(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) QuerySelect(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) QuerySubquery(alias any, copy bool) *Expr + func (e *Expr) QueryUnion(expressions []*Expr, distinct bool, copy bool) *Expr + func (e *Expr) QueryWhere(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) QueryWith(alias, as *Expr, recursive, materialized any, appendMode bool, copy bool, ...) *Expr + func (e *Expr) RawType() *Expr + func (e *Expr) Replace(expression *Expr) *Expr + func (e *Expr) ReplaceWithList(list []*Expr) + func (e *Expr) Right() *Expr + func (e *Expr) Root() *Expr + func (e *Expr) SQL(dialect string, opts *GenerateOptions) (string, error) + func (e *Expr) SameParent() bool + func (e *Expr) SelectClusterBy(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) SelectDistinct(ons []*Expr, distinct bool, copy bool) *Expr + func (e *Expr) SelectFrom(expression *Expr, copy bool) *Expr + func (e *Expr) SelectGroupBy(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) SelectHaving(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) SelectHint(hints []*Expr, copy bool) *Expr + func (e *Expr) SelectJoin(expression *Expr, on []*Expr, using []*Expr, appendMode bool, joinType string, ...) *Expr + func (e *Expr) SelectLateral(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) SelectLock(update bool, copy bool) *Expr + func (e *Expr) SelectQualify(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) SelectSortBy(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) SelectWindow(expressions []*Expr, appendMode bool, copy bool) *Expr + func (e *Expr) Selects() []*Expr + func (e *Expr) Set(key string, value any) + func (e *Expr) SetArgRaw(key string, value any) + func (e *Expr) SetComments(c []string) + func (e *Expr) SetIndex(key string, value any, index int, overwrite bool) + func (e *Expr) SetKwargs(kv ...any) *Expr + func (e *Expr) SetType(dt *Expr) + func (e *Expr) SetTypeAny(dtype any) + func (e *Expr) SetTypeD(d DType) + func (e *Expr) SideText() string + func (e *Expr) TableAliasColumns() []*Expr + func (e *Expr) TableName() string + func (e *Expr) Text(key string) string + func (e *Expr) This() *Expr + func (e *Expr) ThisS() string + func (e *Expr) ToDot(includeDots bool) *Expr + func (e *Expr) Transform(fn func(*Expr) *Expr, copy bool) *Expr + func (e *Expr) Type() *Expr + func (e *Expr) Unalias() *Expr + func (e *Expr) Unnest() *Expr + func (e *Expr) UnnestOperands() []*Expr + func (e *Expr) UnnestSubquery() *Expr + func (e *Expr) UnnestSubqueryOrParen() *Expr + func (e *Expr) Unwrap() *Expr + func (e *Expr) Walk(bfs bool, prune func(*Expr) bool) iter.Seq[*Expr] + type ExprMetadata struct + Annotator func(a *TypeAnnotator, e *Expr) + Returns any + type ExprMetadataType map[Kind]*ExprMetadata + type FuncBuilder func(args []*Expr, d *Dialect) *Expr + type GenFunc func(g *Generator, e *Expr) string + type GenerateOptions struct + Identify string + Indent int + LeadingComma bool + MaxTextWidth int + MaxUnsupported int + NoComments bool + Normalize bool + NormalizeFunctions *string + Pad int + Pretty bool + UnsupportedLevel *ErrorLevel + type Generator struct + func (g *Generator) Generate(e *Expr, copy bool) (out string, err error) + type GeneratorData struct + ALTER_SET_TYPE string + ALTER_SET_WRAPPED bool + ALTER_TABLE_INCLUDE_COLUMN_KEYWORD bool + ARRAY_CONCAT_IS_VAR_LEN bool + ARRAY_SIZE_DIM_REQUIRED Tri + ARRAY_SIZE_NAME string + CAN_IMPLEMENT_ARRAY_ANY bool + CAST_MAPPING map[DType]string + CHAR_CAST_MAPPING map[DType]string + COLLATE_IS_FUNC bool + COMPUTED_COLUMN_WITH_TYPE bool + COPY_HAS_INTO_KEYWORD bool + COPY_PARAMS_ARE_WRAPPED bool + COPY_PARAMS_EQ_REQUIRED bool + CREATE_FUNCTION_RETURN_AS bool + CTE_RECURSIVE_KEYWORD_REQUIRED bool + DATA_TYPE_SPECIFIERS_ALLOWED bool + DECLARE_DEFAULT_ASSIGNMENT string + DIRECTED_JOINS bool + DUPLICATE_KEY_UPDATE_WITH_SET bool + ENSURE_BOOLS bool + EXCEPT_INTERSECT_SUPPORT_ALL_CLAUSE bool + EXCLUDE_COMMENTS []Kind + EXPRESSIONS_WITHOUT_NESTED_CTES KindSet + EXPRESSION_PRECEDES_PROPERTIES_CREATABLES StrSet + EXTRACT_ALLOWS_QUOTES bool + EXTRACT_EPOCH_MAPPINGS map[string]string + EXTRACT_STRFTIME_MAPPINGS OptionsType + GROUPINGS_SEP string + HEX_FUNC string + HISTORICAL_DATA_POST_ALIAS bool + IGNORE_NULLS_BEFORE_ORDER bool + IGNORE_NULLS_FUNCS []Kind + IGNORE_NULLS_IN_FUNC bool + IGNORE_RESPECT_NULLS_WINDOW_FUNCTIONS []Kind + INDEX_ON string + INOUT_SEPARATOR string + INSERT_OVERWRITE string + INTERVAL_ALLOWS_PLURAL_FORM bool + IS_BOOL_ALLOWED bool + JOIN_HINTS bool + JSON_KEY_VALUE_PAIR_SEP string + JSON_PATH_BRACKETED_KEY_SUPPORTED bool + JSON_PATH_KEY_QUOTED_FORCES_BRACKETS bool + JSON_PATH_SINGLE_QUOTE_ESCAPE bool + JSON_TYPE_REQUIRED_FOR_EXTRACTION bool + LAST_DAY_SUPPORTS_DATE_PART bool + LIKE_PROPERTY_INSIDE_SCHEMA bool + LIMIT_FETCH string + LIMIT_IS_TOP bool + LIMIT_ONLY_LITERALS bool + LOCKING_READS_SUPPORTED bool + MATCHED_BY_SOURCE bool + MATCH_AGAINST_TABLE_PREFIX any + MULTI_ARG_DISTINCT bool + NAMED_PLACEHOLDER_TOKEN string + NON_NULLABLE_TYPES DTypeSet + NORMALIZE_EXTRACT_DATE_PARTS bool + NULL_ORDERING_SUPPORTED Tri + NVL2_SUPPORTED bool + ON_CLUSTER_TARGETS StrSet + PAD_FILL_PATTERN_IS_REQUIRED bool + PARAMETERIZABLE_TEXT_TYPES DTypeSet + PARAMETER_TOKEN string + PARSE_JSON_NAME string + PROPERTIES_LOCATION map[Kind]string + QUERY_HINTS bool + QUERY_HINT_SEP string + QUOTE_JSON_PATH bool + RENAME_TABLE_WITH_DB bool + RESERVED_KEYWORDS StrSet + RESPECT_IGNORE_NULLS_UNSUPPORTED_EXPRESSIONS []Kind + RETURNING_END bool + SELECT_KINDS []string + SEMI_ANTI_JOIN_WITH_SIDE bool + SENTINEL_LINE_BREAK string + SET_ASSIGNMENT_REQUIRES_VARIABLE_KEYWORD bool + SET_OP_MODIFIERS bool + SIGNED_CAST_MAPPING map[DType]string + SINGLE_STRING_INTERVAL bool + SQL_SECURITY_VIEW_LOCATION string + STAR_EXCEPT string + STAR_EXCLUDE_REQUIRES_DERIVED_TABLE bool + STRING_TYPE_MAPPING map[DType]string + STRUCT_DELIMITER []string + SUPPORTED_JSON_PATH_PARTS KindSet + SUPPORTS_BETWEEN_FLAGS bool + SUPPORTS_CHANGE_COLUMN bool + SUPPORTS_CONVERT_TIMEZONE bool + SUPPORTS_CREATE_TABLE_LIKE bool + SUPPORTS_DECODE_CASE bool + SUPPORTS_DROP_ALTER_ICEBERG_PROPERTY bool + SUPPORTS_EXPLODING_PROJECTIONS bool + SUPPORTS_LIKE_QUANTIFIERS bool + SUPPORTS_MEDIAN bool + SUPPORTS_MERGE_WHERE bool + SUPPORTS_MODIFY_COLUMN bool + SUPPORTS_NAMED_CTE_COLUMNS bool + SUPPORTS_SELECT_INTO bool + SUPPORTS_SINGLE_ARG_CONCAT bool + SUPPORTS_TABLE_ALIAS_COLUMNS bool + SUPPORTS_TABLE_COPY bool + SUPPORTS_TO_NUMBER bool + SUPPORTS_UESCAPE bool + SUPPORTS_UNIX_SECONDS bool + SUPPORTS_UNLOGGED_TABLES bool + SUPPORTS_WINDOW_EXCLUDE bool + TABLESAMPLE_KEYWORDS string + TABLESAMPLE_REQUIRES_PARENS bool + TABLESAMPLE_SEED_KEYWORD string + TABLESAMPLE_SIZE_IS_ROWS bool + TABLESAMPLE_WITH_METHOD bool + TABLE_HINTS bool + TIMESTAMP_FUNC_TYPES DTypeSet + TIMESTAMP_TYPE_MAPPING map[DType]string + TIME_PART_SINGULARS map[string]string + TOKEN_MAPPING map[TokenType]string + TRY_SUPPORTED bool + TS_OR_DS_EXPRESSIONS []Kind + TS_OR_DS_TYPES []Kind + TYPE_MAPPING map[DType]string + TYPE_PARAM_SETTINGS map[DType][][]int + TZ_TO_WITH_TIME_ZONE bool + UNICODE_SUBSTITUTE any + UNNEST_WITH_ORDINALITY bool + UNPIVOT_ALIASES_ARE_IDENTIFIERS bool + UNSIGNED_TYPE_MAPPING map[DType]string + UNSUPPORTED_TYPES StrSet + UNSUPPORTED_VALUES_EXPRESSIONS KindSet + UNWRAPPED_INTERVAL_VALUES []Kind + UPDATE_STATEMENT_SUPPORTS_FROM bool + VALUES_AS_TABLE bool + VARCHAR_REQUIRES_SIZE bool + WINDOW_FUNCS_WITH_NULL_ORDERING []Kind + WITH_PROPERTIES_PREFIX string + WITH_SEPARATED_COMMENTS []Kind + WRAP_DERIVED_VALUES bool + type GeneratorSettings struct + AFTER_HAVING_MODIFIER_TRANSFORMS map[string]GenFunc + AFTER_HAVING_MODIFIER_TRANSFORMS_KEYS []string + TRANSFORMS map[Kind]GenFunc + UNICODE_SUBSTITUTE func(g *Generator, match string) string + type Kind uint16 + const KAIAgg + const KAIClassify + const KAIEmbed + const KAIForecast + const KAIGenerate + const KAISimilarity + const KAISummarizeAgg + const KAbs + const KAcos + const KAcosh + const KAdd + const KAddConstraint + const KAddMonths + const KAddPartition + const KAdjacent + const KAggFunc + const KAlgorithmProperty + const KAlias + const KAliases + const KAll + const KAllowedValuesProperty + const KAlter + const KAlterColumn + const KAlterDistStyle + const KAlterIndex + const KAlterModifySqlSecurity + const KAlterRename + const KAlterSession + const KAlterSet + const KAlterSortKey + const KAnalyze + const KAnalyzeColumns + const KAnalyzeDelete + const KAnalyzeHistogram + const KAnalyzeListChainedRows + const KAnalyzeSample + const KAnalyzeStatistics + const KAnalyzeValidate + const KAnalyzeWith + const KAnd + const KAnonymous + const KAnonymousAggFunc + const KAny + const KAnyValue + const KApiProperty + const KApplicationProperty + const KApply + const KApproxDistinct + const KApproxPercentileAccumulate + const KApproxPercentileCombine + const KApproxPercentileEstimate + const KApproxQuantile + const KApproxQuantiles + const KApproxTopK + const KApproxTopKAccumulate + const KApproxTopKCombine + const KApproxTopKEstimate + const KApproxTopSum + const KApproximateSimilarity + const KArgMax + const KArgMin + const KArray + const KArrayAgg + const KArrayAll + const KArrayAny + const KArrayAppend + const KArrayCompact + const KArrayConcat + const KArrayConcatAgg + const KArrayConstructCompact + const KArrayContainedBy + const KArrayContains + const KArrayContainsAll + const KArrayDistinct + const KArrayExcept + const KArrayFilter + const KArrayFirst + const KArrayInsert + const KArrayIntersect + const KArrayLast + const KArrayMax + const KArrayMin + const KArrayOverlaps + const KArrayPosition + const KArrayPrepend + const KArrayRemove + const KArrayRemoveAt + const KArrayReverse + const KArraySize + const KArraySlice + const KArraySort + const KArraySum + const KArrayToString + const KArrayUnionAgg + const KArrayUniqueAgg + const KArraysZip + const KAscii + const KAsin + const KAsinh + const KAssumeColumnConstraint + const KAtIndex + const KAtTimeZone + const KAtan + const KAtan2 + const KAtanh + const KAttach + const KAttachOption + const KAutoIncrementColumnConstraint + const KAutoIncrementProperty + const KAutoRefreshProperty + const KAvg + const KBackupProperty + const KBase64DecodeBinary + const KBase64DecodeString + const KBase64Encode + const KBetween + const KBinary + const KBitLength + const KBitString + const KBitmapBitPosition + const KBitmapBucketNumber + const KBitmapConstructAgg + const KBitmapCount + const KBitmapOrAgg + const KBitwiseAnd + const KBitwiseAndAgg + const KBitwiseCount + const KBitwiseLeftShift + const KBitwiseNot + const KBitwiseOr + const KBitwiseOrAgg + const KBitwiseRightShift + const KBitwiseXor + const KBitwiseXorAgg + const KBlock + const KBlockCompressionProperty + const KBooland + const KBoolean + const KBoolnot + const KBoolor + const KBoolxorAgg + const KBracket + const KBuildProperty + const KByteLength + const KByteString + const KCTE + const KCache + const KCalledOnNullInputProperty + const KCase + const KCaseSpecificColumnConstraint + const KCast + const KCastToStrType + const KCatalogProperty + const KCbrt + const KCeil + const KChanges + const KCharacterSet + const KCharacterSetColumnConstraint + const KCharacterSetProperty + const KCheck + const KCheckColumnConstraint + const KCheckJson + const KCheckXml + const KChecksumProperty + const KChr + const KCityHash64 + const KClone + const KCluster + const KClusterProperty + const KClusteredByProperty + const KClusteredColumnConstraint + const KCoalesce + const KCodePointsToBytes + const KCodePointsToString + const KCollate + const KCollateColumnConstraint + const KCollateProperty + const KCollation + const KColumn + const KColumnConstraint + const KColumnConstraintKind + const KColumnDef + const KColumnPosition + const KColumnPrefix + const KColumns + const KCombinedAggFunc + const KCombinedParameterizedAgg + const KCommand + const KComment + const KCommentColumnConstraint + const KCommit + const KComprehension + const KCompress + const KCompressColumnConstraint + const KComputeProperty + const KComputedColumnConstraint + const KConcat + const KConcatWs + const KCondition + const KConditionalInsert + const KConnect + const KConnectByRoot + const KConnector + const KConstraint + const KContains + const KConvert + const KConvertTimezone + const KConvertToCharset + const KCopy + const KCopyGrantsProperty + const KCopyParameter + const KCorr + const KCos + const KCosh + const KCosineDistance + const KCot + const KCoth + const KCount + const KCountIf + const KCovarPop + const KCovarSamp + const KCreate + const KCredentials + const KCredentialsProperty + const KCsc + const KCsch + const KCube + const KCumeDist + const KCurrentAccount + const KCurrentAccountName + const KCurrentAvailableRoles + const KCurrentCatalog + const KCurrentClient + const KCurrentDatabase + const KCurrentDate + const KCurrentDatetime + const KCurrentIpAddress + const KCurrentOrganizationName + const KCurrentOrganizationUser + const KCurrentRegion + const KCurrentRole + const KCurrentRoleType + const KCurrentSchema + const KCurrentSchemas + const KCurrentSecondaryRoles + const KCurrentSession + const KCurrentStatement + const KCurrentTime + const KCurrentTimestamp + const KCurrentTimestampLTZ + const KCurrentTimezone + const KCurrentTransaction + const KCurrentUser + const KCurrentUserId + const KCurrentVersion + const KCurrentWarehouse + const KDDL + const KDML + const KDPipe + const KDataBlocksizeProperty + const KDataDeletionProperty + const KDataType + const KDataTypeParam + const KDatabaseProperty + const KDate + const KDateAdd + const KDateBin + const KDateDiff + const KDateFormatColumnConstraint + const KDateFromParts + const KDateFromUnixDate + const KDateStrToDate + const KDateSub + const KDateToDateStr + const KDateToDi + const KDateTrunc + const KDatetime + const KDatetimeAdd + const KDatetimeDiff + const KDatetimeSub + const KDatetimeTrunc + const KDay + const KDayOfMonth + const KDayOfWeek + const KDayOfWeekIso + const KDayOfYear + const KDayname + const KDeclare + const KDeclareItem + const KDecode + const KDecodeCase + const KDecompressBinary + const KDecompressString + const KDecrypt + const KDecryptRaw + const KDefaultColumnConstraint + const KDefinerProperty + const KDegrees + const KDelete + const KDenseRank + const KDerivedTable + const KDescribe + const KDetach + const KDiToDate + const KDictProperty + const KDictRange + const KDictSubProperty + const KDirectory + const KDirectoryStage + const KDistKeyProperty + const KDistStyleProperty + const KDistance + const KDistanceNd + const KDistinct + const KDistribute + const KDistributedByProperty + const KDiv + const KDot + const KDotProduct + const KDrop + const KDropPartition + const KDropPrimaryKey + const KDuplicateKeyProperty + const KDynamicIdentifier + const KDynamicProperty + const KEQ + const KElt + const KEmptyProperty + const KEncode + const KEncodeColumnConstraint + const KEncodeProperty + const KEncrypt + const KEncryptRaw + const KEndStatement + const KEndsWith + const KEngineProperty + const KEnviromentProperty + const KEphemeralColumnConstraint + const KEqualNull + const KEscape + const KEuclideanDistance + const KExcept + const KExcludeColumnConstraint + const KExecute + const KExecuteAsProperty + const KExecuteSql + const KExists + const KExp + const KExplode + const KExplodeOuter + const KExplodingGenerateSeries + const KExport + const KExpr + const KExpression + const KExtendsLeft + const KExtendsRight + const KExternalProperty + const KExtract + const KFactorial + const KFallbackProperty + const KFarmFingerprint + const KFeaturesAtTime + const KFetch + const KFileFormatProperty + const KFilter + const KFinal + const KFirst + const KFirstValue + const KFlatten + const KFloat64 + const KFloor + const KForClause + const KForIn + const KForceProperty + const KForeignKey + const KFormat + const KFormatJson + const KFormatPhrase + const KFreespaceProperty + const KFrom + const KFromBase + const KFromBase32 + const KFromBase64 + const KFromISO8601Date + const KFromISO8601Timestamp + const KFromISO8601TimestampNanos + const KFromTimeZone + const KFunc + const KGT + const KGTE + const KGapFill + const KGenerateBool + const KGenerateDateArray + const KGenerateDouble + const KGenerateEmbedding + const KGenerateInt + const KGenerateSeries + const KGenerateTable + const KGenerateText + const KGenerateTimestampArray + const KGeneratedAsIdentityColumnConstraint + const KGeneratedAsRowColumnConstraint + const KGenerator + const KGet + const KGetExtract + const KGetIgnoreCase + const KGetbit + const KGlob + const KGlobalProperty + const KGrant + const KGrantPrincipal + const KGrantPrivilege + const KGreatest + const KGroup + const KGroupConcat + const KGrouping + const KGroupingId + const KGroupingSets + const KHandlerProperty + const KHashAgg + const KHaving + const KHavingMax + const KHeapProperty + const KHeredoc + const KHex + const KHexDecodeString + const KHexString + const KHint + const KHistoricalData + const KHll + const KHost + const KHour + const KHybridProperty + const KILike + const KIcebergProperty + const KIdentifier + const KIf + const KIfBlock + const KIgnoreNulls + const KIn + const KInOutColumnConstraint + const KIncludeProperty + const KIndex + const KIndexColumnConstraint + const KIndexConstraintOption + const KIndexParameters + const KIndexTableHint + const KInheritsProperty + const KInitcap + const KInline + const KInlineLengthColumnConstraint + const KInputModelProperty + const KInputOutputFormat + const KInsert + const KInstall + const KInt64 + const KIntDiv + const KIntersect + const KInterval + const KIntervalOp + const KIntervalSpan + const KInto + const KIntroducer + const KInvisibleColumnConstraint + const KIs + const KIsArray + const KIsAscii + const KIsInf + const KIsNan + const KIsNullValue + const KIsolatedLoadingProperty + const KJSON + const KJSONArray + const KJSONArrayAgg + const KJSONArrayAppend + const KJSONArrayContains + const KJSONArrayInsert + const KJSONBContains + const KJSONBContainsAllTopKeys + const KJSONBContainsAnyTopKeys + const KJSONBDeleteAtPath + const KJSONBExists + const KJSONBExtract + const KJSONBExtractScalar + const KJSONBObjectAgg + const KJSONBPathExists + const KJSONBool + const KJSONCast + const KJSONColumnDef + const KJSONExists + const KJSONExtract + const KJSONExtractArray + const KJSONExtractQuote + const KJSONExtractScalar + const KJSONFormat + const KJSONKeyValue + const KJSONKeys + const KJSONKeysAtDepth + const KJSONObject + const KJSONObjectAgg + const KJSONPath + const KJSONPathFilter + const KJSONPathKey + const KJSONPathPart + const KJSONPathRecursive + const KJSONPathRoot + const KJSONPathScript + const KJSONPathSelector + const KJSONPathSlice + const KJSONPathSubscript + const KJSONPathUnion + const KJSONPathWildcard + const KJSONRemove + const KJSONSchema + const KJSONSet + const KJSONStripNulls + const KJSONTable + const KJSONType + const KJSONValue + const KJSONValueArray + const KJarowinklerSimilarity + const KJoin + const KJoinHint + const KJournalProperty + const KJustifyDays + const KJustifyHours + const KJustifyInterval + const KKill + const KKurtosis + const KKwarg + const KLT + const KLTE + const KLag + const KLambda + const KLanguageProperty + const KLast + const KLastDay + const KLastValue + const KLateral + const KLaxBool + const KLaxFloat64 + const KLaxInt64 + const KLaxString + const KLead + const KLeast + const KLeft + const KLength + const KLevenshtein + const KLike + const KLikeProperty + const KLimit + const KLimitOptions + const KList + const KLiteral + const KLn + const KLoadData + const KLocaltime + const KLocaltimestamp + const KLocationProperty + const KLock + const KLockProperty + const KLockingProperty + const KLockingStatement + const KLog + const KLogProperty + const KLogicalAnd + const KLogicalOr + const KLower + const KLowerHex + const KMD5 + const KMD5Digest + const KMD5NumberLower64 + const KMD5NumberUpper64 + const KMLForecast + const KMLTranslate + const KMacroOverload + const KMacroOverloads + const KMakeInterval + const KManhattanDistance + const KMap + const KMapCat + const KMapContainsKey + const KMapDelete + const KMapFromEntries + const KMapInsert + const KMapKeys + const KMapPick + const KMapSize + const KMaskingPolicyColumnConstraint + const KMaskingProperty + const KMatch + const KMatchAgainst + const KMatchRecognize + const KMatchRecognizeMeasure + const KMaterializedProperty + const KMax + const KMedian + const KMerge + const KMergeBlockRatioProperty + const KMergeTreeTTL + const KMergeTreeTTLAction + const KMin + const KMinhash + const KMinhashCombine + const KMinute + const KMod + const KMode + const KModelAttribute + const KModifyColumn + const KModuleProperty + const KMonth + const KMonthname + const KMonthsBetween + const KMul + const KMultitableInserts + const KNEQ + const KNational + const KNeg + const KNestedJSONSelect + const KNetFunc + const KNetworkProperty + const KNextDay + const KNextValueFor + const KNoPrimaryIndexProperty + const KNonClusteredColumnConstraint + const KNone + const KNormal + const KNormalize + const KNot + const KNotForReplicationColumnConstraint + const KNotNullColumnConstraint + const KNthValue + const KNtile + const KNull + const KNullSafeEQ + const KNullSafeNEQ + const KNullif + const KNumberToStr + const KNvl2 + const KObjectAgg + const KObjectId + const KObjectIdentifier + const KObjectInsert + const KObjectTransform + const KOffset + const KOnCluster + const KOnCommitProperty + const KOnCondition + const KOnConflict + const KOnProperty + const KOnUpdateColumnConstraint + const KOpclass + const KOpenJSON + const KOpenJSONColumnDef + const KOperator + const KOr + const KOrder + const KOrdered + const KOutputModelProperty + const KOverflowTruncateBehavior + const KOverlaps + const KOverlay + const KPad + const KParameter + const KParameterStyleProperty + const KParameterizedAgg + const KParen + const KParseBignumeric + const KParseDatetime + const KParseIp + const KParseJSON + const KParseNumeric + const KParseTime + const KParseUrl + const KPartition + const KPartitionBoundSpec + const KPartitionByListProperty + const KPartitionByRangeProperty + const KPartitionByRangePropertyDynamic + const KPartitionByTruncate + const KPartitionId + const KPartitionList + const KPartitionRange + const KPartitionedByBucket + const KPartitionedByProperty + const KPartitionedOfProperty + const KPathColumnConstraint + const KPercentRank + const KPercentileCont + const KPercentileDisc + const KPeriodForSystemTimeConstraint + const KPi + const KPivot + const KPivotAlias + const KPivotAny + const KPlaceholder + const KPosexplode + const KPosexplodeOuter + const KPositionalColumn + const KPow + const KPragma + const KPreWhere + const KPredicate + const KPredict + const KPreviousDay + const KPrimaryKey + const KPrimaryKeyColumnConstraint + const KPrior + const KProjectionDef + const KProjectionPolicyColumnConstraint + const KProperties + const KProperty + const KPropertyEQ + const KPseudoType + const KPseudocolumn + const KPut + const KQualify + const KQuantile + const KQuarter + const KQuery + const KQueryBand + const KQueryOption + const KQueryTransform + const KRadians + const KRand + const KRandn + const KRandstr + const KRangeBucket + const KRangeN + const KRank + const KRawString + const KReadCSV + const KReadParquet + const KRecursiveWithSearch + const KReduce + const KReference + const KRefresh + const KRefreshTriggerProperty + const KRegDomain + const KRegexpCount + const KRegexpExtract + const KRegexpExtractAll + const KRegexpFullMatch + const KRegexpILike + const KRegexpInstr + const KRegexpLike + const KRegexpReplace + const KRegexpSplit + const KRegexpSubstr + const KRegrAvgx + const KRegrAvgy + const KRegrCount + const KRegrIntercept + const KRegrR2 + const KRegrSlope + const KRegrSxx + const KRegrSxy + const KRegrSyy + const KRegrValx + const KRegrValy + const KRemoteWithConnectionModelProperty + const KRenameColumn + const KRenameIndex + const KRepeat + const KReplace + const KReplacePartition + const KRespectNulls + const KReturn + const KReturning + const KReturnsProperty + const KReverse + const KRevoke + const KRight + const KRint + const KRollback + const KRollup + const KRollupIndex + const KRollupProperty + const KRound + const KRowAccessProperty + const KRowFormatDelimitedProperty + const KRowFormatProperty + const KRowFormatSerdeProperty + const KRowNumber + const KRtrimmedLength + const KSHA + const KSHA1Digest + const KSHA2 + const KSHA2Digest + const KSafeAdd + const KSafeConvertBytesToString + const KSafeDivide + const KSafeFunc + const KSafeMultiply + const KSafeNegate + const KSafeSubtract + const KSampleProperty + const KSchema + const KSchemaCommentProperty + const KScopeResolution + const KSearch + const KSearchIp + const KSec + const KSech + const KSecond + const KSecureProperty + const KSecurityIntegrationProperty + const KSelect + const KSelectable + const KSemanticView + const KSemicolon + const KSeq1 + const KSeq2 + const KSeq4 + const KSeq8 + const KSequenceProperties + const KSerdeProperties + const KSessionParameter + const KSessionUser + const KSet + const KSetConfigProperty + const KSetItem + const KSetOperation + const KSetProperty + const KSettingsProperty + const KSharingProperty + const KShow + const KSign + const KSimilarTo + const KSin + const KSinh + const KSkewness + const KSkipJSONColumn + const KSlice + const KSort + const KSortArray + const KSortKeyProperty + const KSoundex + const KSoundexP123 + const KSpace + const KSplit + const KSplitPart + const KSqlReadWriteProperty + const KSqlSecurityProperty + const KSqrt + const KStDistance + const KStPoint + const KStabilityProperty + const KStandardHash + const KStar + const KStarMap + const KStartsWith + const KStddev + const KStddevPop + const KStddevSamp + const KStorageHandlerProperty + const KStoredProcedure + const KStrPosition + const KStrToDate + const KStrToMap + const KStrToTime + const KStrToUnix + const KStream + const KStreamingTableProperty + const KStrictProperty + const KString + const KStringToArray + const KStripNullValue + const KStrtok + const KStrtokToArray + const KStruct + const KStructExtract + const KStuff + const KSub + const KSubquery + const KSubqueryPredicate + const KSubstring + const KSubstringIndex + const KSum + const KSummarize + const KSwapTable + const KSystimestamp + const KTable + const KTableAlias + const KTableColumn + const KTableFromRows + const KTableSample + const KTag + const KTags + const KTan + const KTanh + const KTemporaryProperty + const KTime + const KTimeAdd + const KTimeDiff + const KTimeFromParts + const KTimeSlice + const KTimeStrToDate + const KTimeStrToTime + const KTimeStrToUnix + const KTimeSub + const KTimeToStr + const KTimeToTimeStr + const KTimeToUnix + const KTimeTrunc + const KTimeUnit + const KTimeseriesKey + const KTimestamp + const KTimestampAdd + const KTimestampDiff + const KTimestampFromParts + const KTimestampLtzFromParts + const KTimestampSub + const KTimestampTrunc + const KTimestampTzFromParts + const KTitleColumnConstraint + const KToArray + const KToBase32 + const KToBase64 + const KToBinary + const KToBoolean + const KToChar + const KToCodePoints + const KToDays + const KToDecfloat + const KToDouble + const KToFile + const KToMap + const KToNumber + const KToTableProperty + const KToVariant + const KTransaction + const KTransform + const KTransformModelProperty + const KTransientProperty + const KTranslate + const KTranslateCharacters + const KTriggerEvent + const KTriggerExecute + const KTriggerProperties + const KTriggerReferencing + const KTrim + const KTrunc + const KTruncateTable + const KTry + const KTryBase64DecodeBinary + const KTryBase64DecodeString + const KTryCast + const KTryHexDecodeBinary + const KTryHexDecodeString + const KTryToDecfloat + const KTsOrDiToDi + const KTsOrDsAdd + const KTsOrDsDiff + const KTsOrDsToDate + const KTsOrDsToDateStr + const KTsOrDsToDatetime + const KTsOrDsToTime + const KTsOrDsToTimestamp + const KTuple + const KTypeof + const KUDTF + const KUnary + const KUncache + const KUndrop + const KUnhex + const KUnicode + const KUnicodeString + const KUniform + const KUnion + const KUniqueColumnConstraint + const KUniqueKeyProperty + const KUnixDate + const KUnixMicros + const KUnixMillis + const KUnixSeconds + const KUnixToStr + const KUnixToTime + const KUnixToTimeStr + const KUnloggedProperty + const KUnnest + const KUnpivotColumns + const KUpdate + const KUpper + const KUppercaseColumnConstraint + const KUse + const KUserDefinedFunction + const KUsingData + const KUsingProperty + const KUsingTemplateProperty + const KUtcDate + const KUtcTime + const KUtcTimestamp + const KUuid + const KUuidProperty + const KValues + const KVar + const KVarMap + const KVariadic + const KVariance + const KVariancePop + const KVectorSearch + const KVersion + const KViewAttributeProperty + const KVirtualProperty + const KVolatileProperty + const KWatermarkColumnConstraint + const KWeek + const KWeekOfYear + const KWeekStart + const KWhen + const KWhens + const KWhere + const KWhileBlock + const KWidthBucket + const KWindow + const KWindowSpec + const KWith + const KWithDataProperty + const KWithFill + const KWithJournalTableProperty + const KWithOperator + const KWithProcedureOptions + const KWithSchemaBindingProperty + const KWithSystemVersioningProperty + const KWithTableHint + const KWithinGroup + const KXMLElement + const KXMLGet + const KXMLKeyValueOption + const KXMLNamespace + const KXMLTable + const KXor + const KYear + const KYearOfWeek + const KYearOfWeekIso + const KZeroFillColumnConstraint + const KZipf + const K_ExplodeOuter + const K_TimeUnit + func KindByKey(key string) (Kind, bool) + func (k Kind) ArgTypes() []argSpec + func (k Kind) IsA(kinds ...Kind) bool + func (k Kind) Key() string + func (k Kind) Name() string + func (k Kind) SQLName() string + func (k Kind) SQLNames() []string + func (k Kind) String() string + type KindSet struct + func (s *KindSet) Has(k Kind) bool + func (s KindSet) With(kinds ...Kind) KindSet + func (s KindSet) Without(kinds ...Kind) KindSet + type LineageError struct + Msg string + func (e *LineageError) Error() string + type LineageNode struct + Downstream []*LineageNode + Expression *Expr + Name string + ReferenceNodeName string + Source *Expr + SourceName string + func LineageColumn(column string, expression *Expr, opts LineageOptions) (node *LineageNode, err error) + func (n *LineageNode) Walk() []*LineageNode + type LineageOptions struct + Copy bool + Dialect *Dialect + Schema *MappingSchema + Scope *Scope + TrimSelects bool + type MappingSchema struct + func NewMappingSchema(schema *SchemaMap, visible *SchemaMap, dialect *Dialect, normalize bool, ...) *MappingSchema + func (s *MappingSchema) AddTable(table *Expr, columnMapping *SchemaMap, dialect *Dialect, normalize *bool, ...) + func (s *MappingSchema) ColumnNames(table *Expr, onlyVisible bool, dialect *Dialect, normalize *bool) []string + func (s *MappingSchema) Depth() int + func (s *MappingSchema) Dialect() *Dialect + func (s *MappingSchema) Empty() bool + func (s *MappingSchema) Find(table *Expr, raiseOnMissing bool, ensureDataTypes bool) *SchemaMap + func (s *MappingSchema) GetColumnType(table *Expr, column *Expr, columnName string, dialect *Dialect, ...) *Expr + func (s *MappingSchema) GetUDFType(udf *Expr, dialect *Dialect, normalize *bool) *Expr + func (s *MappingSchema) HasColumn(table *Expr, column *Expr, columnName string, dialect *Dialect, ...) bool + func (s *MappingSchema) SupportedTableArgs() []string + func (s *MappingSchema) TableFromString(name string, dialect *Dialect) *Expr + type OptimizeContext struct + Catalog string + Db string + Dialect *Dialect + Kwargs map[string]any + SQL string + Schema *MappingSchema + type OptimizeError struct + Msg string + func (e *OptimizeError) Error() string + type OptimizerRule func(e *Expr, ctx *OptimizeContext) *Expr + var RuleAnnotateTypes OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleCanonicalize OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleEliminateCTEs OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleEliminateJoins OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleEliminateSubqueries OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleMergeSubqueries OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleNormalize OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleOptimizeJoins OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RulePushdownPredicates OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RulePushdownProjections OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleQualify OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleQuoteIdentifiers OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleSimplify OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + var RuleUnnestSubqueries OptimizerRule = func(e *Expr, ctx *OptimizeContext) *Expr { ... } + type OptionsType map[string][][]string + type ParseError struct + Errors []ParseErrorDetail + Msg string + func (e *ParseError) Error() string + type ParseErrorDetail struct + Col int + Description string + EndContext string + Highlight string + IntoExpression string + Line int + StartContext string + type ParseOptions struct + ErrorLevel *ErrorLevel + ErrorMessageContext int + MaxErrors int + MaxNodes int + type Parser struct + func (p *Parser) ParseInto(kind Kind, tokens []*Token, sql string) (out []*Expr, err error) + func (p *Parser) ParseTokens(tokens []*Token, sql string) (out []*Expr, err error) + type ParserData struct + ADD_CONSTRAINT_TOKENS TokenSet + ADD_JOIN_ON_TRUE bool + ADJACENT_STRINGS_CANNOT_BE_CONNECTED bool + AGGREGATE_TYPE_TOKENS TokenSet + AGG_FUNCTIONS StrSet + AGG_FUNCTIONS_SUFFIXES []string + ALIAS_TOKENS TokenSet + ALTERABLES TokenSet + ALTER_RENAME_REQUIRES_COLUMN bool + ALTER_TABLE_PARTITIONS bool + AMBIGUOUS_ALIAS_TOKENS []TokenType + ANALYZE_STYLES StrSet + ARG_MODE_TOKENS TokenSet + ARRAY_CONSTRUCTORS map[string]Kind + ASSIGNMENT map[TokenType]Kind + BITWISE map[TokenType]Kind + BRACKETS TokenSet + CAST_ACTIONS OptionsType + CAST_COLUMN_OPERATORS TokenSet + CHANGE_COLUMN_ALTER_SYNTAX bool + CLONE_KEYWORDS StrSet + COLON_CHAIN_IS_SINGLE_EXTRACT bool + COLON_IS_VARIANT_EXTRACT bool + COLON_PLACEHOLDER_TOKENS TokenSet + COLUMN_DEFINITION_MODES StrSet + COLUMN_POSTFIX_TOKENS TokenSet + COMMENT_TABLE_ALIAS_TOKENS TokenSet + COMPARISON map[TokenType]Kind + CONFLICT_ACTIONS OptionsType + CONJUNCTION map[TokenType]Kind + COPY_INTO_VARLEN_OPTIONS StrSet + CREATABLES TokenSet + CREATE_SEQUENCE OptionsType + DASHED_TABLE_PART_FOLLOW_TOKENS TokenSet + DB_CREATABLES TokenSet + DDL_SELECT_TOKENS TokenSet + DEFAULT_SAMPLING_METHOD string + DESCRIBE_STYLES StrSet + DISJUNCTION map[TokenType]Kind + DISTINCT_TOKENS TokenSet + ENUM_TYPE_TOKENS TokenSet + EQUALITY map[TokenType]Kind + EXECUTE_AS_OPTIONS OptionsType + EXPONENT map[TokenType]Kind + FACTOR map[TokenType]Kind + FETCH_TOKENS TokenSet + FLATTEN_COLUMNS []string + FUNCTIONS_WITH_ALIASED_ARGS StrSet + FUNC_TOKENS TokenSet + HISTORICAL_DATA_KIND StrSet + HISTORICAL_DATA_PREFIX StrSet + IDENTIFIER_TOKENS TokenSet + IDENTIFY_PIVOT_STRINGS bool + ID_VAR_TOKENS TokenSet + INSERT_ALTERNATIVES StrSet + INTERVAL_SPANS bool + INVALID_FUNC_NAME_TOKENS TokenSet + ISOLATED_LOADING_OPTIONS OptionsType + IS_JSON_PREDICATE_KIND StrSet + JOINS_HAVE_EQUAL_PRECEDENCE bool + JOIN_HINTS StrSet + JOIN_KINDS TokenSet + JOIN_METHODS TokenSet + JOIN_SIDES TokenSet + JSON_ARROWS_REQUIRE_JSON_TYPE bool + JSON_EXTRACT_REQUIRES_JSON_EXPRESSION bool + JSON_KEY_VALUE_SEPARATOR_TOKENS TokenSet + JSON_QUERY_OPTIONS OptionsType + KEY_CONSTRAINT_OPTIONS OptionsType + KEY_VALUE_DEFINITIONS []Kind + LAMBDA_ARG_TERMINATORS TokenSet + LOG_DEFAULTS_TO_LN bool + MAP_KEYS_ARE_ARBITRARY_EXPRESSIONS bool + MODIFIABLES []Kind + MODIFIERS_ATTACHED_TO_SET_OP bool + NESTED_TYPE_TOKENS TokenSet + NON_TABLE_CREATABLES StrSet + NO_PAREN_FUNCTIONS map[TokenType]Kind + NO_PAREN_IF_COMMANDS bool + ODBC_DATETIME_LITERALS map[string]Kind + ON_CONDITION_TOKENS StrSet + OPCLASS_FOLLOW_KEYWORDS StrSet + OPERATION_MODIFIERS StrSet + OPTIONAL_ALIAS_TOKEN_CTE bool + OPTYPE_FOLLOW_TOKENS TokenSet + PARTITION_KEYWORDS StrSet + PIVOT_COLUMN_NAMING string + PREFIXED_PIVOT_COLUMNS bool + PRE_VOLATILE_TOKENS TokenSet + PRIVILEGE_FOLLOW_TOKENS TokenSet + PROCEDURE_OPTIONS OptionsType + PROFILE_TYPES OptionsType + QUERY_MODIFIER_TOKENS TokenSet + QUERY_RESTRICTIONS OptionsType + RECURSIVE_CTE_SEARCH_KIND StrSet + RESERVED_TOKENS TokenSet + RETURNS_TABLE_TOKENS TokenSet + SCHEMA_BINDING_OPTIONS OptionsType + SCHEMA_KINDS StrSet + SCHEMA_UNNAMED_CONSTRAINTS StrSet + SECURITY_PROPERTY_KEYWORDS StrSet + SELECT_START_TOKENS TokenSet + SET_ASSIGNMENT_DELIMITERS StrSet + SET_OPERATIONS TokenSet + SET_OP_MODIFIERS StrSet + SET_REQUIRES_ASSIGNMENT_DELIMITER bool + SIGNED_TO_UNSIGNED_TYPE_TOKEN map[TokenType]TokenType + STAGED_FILE_SINGLE_TOKENS TokenSet + STRICT_CAST bool + STRING_ALIASES bool + STRUCT_TYPE_TOKENS TokenSet + SUBQUERY_PREDICATES map[TokenType]Kind + SUBQUERY_TOKENS TokenSet + SUPPORTS_IMPLICIT_UNNEST bool + SUPPORTS_OMITTED_INTERVAL_SPAN_UNIT bool + SUPPORTS_PARTITION_SELECTION bool + TABLESAMPLE_CSV bool + TABLE_ALIAS_TOKENS TokenSet + TABLE_INDEX_HINT_TOKENS TokenSet + TABLE_POSTFIX_TOKENS TokenSet + TABLE_TERMINATORS TokenSet + TERM map[TokenType]Kind + TEXT_MATCH_EXCLUDED_TOKENS TokenSet + TIMES TokenSet + TIMESTAMPS TokenSet + TRANSACTION_CHARACTERISTICS OptionsType + TRANSACTION_KIND StrSet + TRIGGER_DEFERRABLE OptionsType + TRIGGER_EVENTS TokenSet + TRIGGER_TIMING OptionsType + TRIM_PATTERN_FIRST bool + TRIM_TYPES StrSet + TYPED_LAMBDA_ARGS bool + TYPE_TOKENS TokenSet + UNDROP_OBJECTS OptionsType + UNNEST_OFFSET_ALIAS_TOKENS TokenSet + UPDATE_ALIAS_TOKENS TokenSet + USABLES OptionsType + VALUES_FOLLOWED_BY_PAREN bool + VIEW_ATTRIBUTES StrSet + WINDOW_ALIAS_TOKENS TokenSet + WINDOW_BEFORE_PAREN_TOKENS TokenSet + WINDOW_EXCLUDE_OPTIONS OptionsType + WINDOW_SIDES StrSet + WRAPPED_TRANSFORM_COLUMN_CONSTRAINT bool + ZONE_AWARE_TIMESTAMP_CONSTRUCTOR bool + type ParserSettings struct + ALTER_ALTER_PARSERS map[string]parseFn + ALTER_PARSERS map[string]parseAnyFn + ANALYZE_EXPRESSION_PARSERS map[string]parseFn + COLUMN_OPERATORS map[TokenType]columnOperatorFn + CONSTRAINT_PARSERS map[string]parseFn + DESCRIBE_QUALIFIER_PARSERS map[string]parseFn + EXPRESSION_PARSERS map[Kind]parseFn + FUNCTIONS map[string]FuncBuilder + FUNCTION_PARSERS map[string]parseFn + LAMBDAS map[TokenType]lambdaParseFn + NO_PAREN_FUNCTION_PARSERS map[string]parseFn + NUMERIC_PARSERS map[TokenType]tokenParseFn + PIPE_SYNTAX_TRANSFORM_PARSERS map[string]pipeTransformFn + PLACEHOLDER_PARSERS map[TokenType]parseFn + PRIMARY_PARSERS map[TokenType]tokenParseFn + PROPERTY_PARSERS map[string]propertyParseFn + QUERY_MODIFIER_PARSERS map[TokenType]queryModifierFn + RANGE_PARSERS map[TokenType]rangeParseFn + SET_PARSERS map[string]parseFn + SET_TRIE *trie + SHOW_PARSERS map[string]parseFn + SHOW_TRIE *trie + STATEMENT_PARSERS map[TokenType]parseFn + STRING_PARSERS map[TokenType]tokenParseFn + TYPE_CONVERTERS map[DType]typeConverterFn + TYPE_LITERAL_PARSERS map[DType]typeLiteralParseFn + UNARY_PARSERS map[TokenType]parseFn + type QualifyOptions struct + AllowPartialQualification bool + CanonicalizeTableAliases bool + Catalog string + Db string + Defaults bool + Dialect *Dialect + ExpandAliasRefs bool + ExpandStars bool + Identify bool + InferSchema Tri + IsolateTables bool + OnQualify func(table *Expr) + QualifyColumns bool + QuoteIdentifiers bool + SQL string + Schema *MappingSchema + ValidateQualifyColumns bool + func DefaultQualifyOptions() QualifyOptions + type Resolver struct + func NewResolver(scope *Scope, schema *MappingSchema, inferSchema bool) *Resolver + func (r *Resolver) AllColumns() StrSet + func (r *Resolver) Dialect() *Dialect + func (r *Resolver) GetSourceColumns(name string, onlyVisible bool) []string + func (r *Resolver) GetSourceColumnsFromSetOp(expression *Expr) []string + func (r *Resolver) GetTable(column *Expr) *Expr + func (r *Resolver) GetTableByName(columnName string) *Expr + type SchemaError struct + Msg string + func (e *SchemaError) Error() string + type SchemaMap = omap[any] + func NewSchemaMap() *SchemaMap + func NewSchemaMapSize(n int) *SchemaMap + type Scope struct + CTEScopes []*Scope + CTESources *omap[Source] + CanBeCorrelated bool + DerivedTableScopes []*Scope + Expression *Expr + LateralSources *omap[Source] + OuterColumns []string + Parent *Scope + Sources *omap[Source] + SubqueryScopes []*Scope + TableScopes []*Scope + Type ScopeType + UDTFScopes []*Scope + UnionScopes []*Scope + func BuildScope(e *Expr) *Scope + func NewScope(expression *Expr, sources *omap[Source], outerColumns []string, parent *Scope, ...) *Scope + func TraverseScope(e *Expr) []*Scope + func (s *Scope) AddSource(name string, src Source) + func (s *Scope) Branch(expression *Expr, scopeType ScopeType, ...) *Scope + func (s *Scope) CTEs() []*Expr + func (s *Scope) ClearCache() + func (s *Scope) ColumnIndex() map[*Expr]struct{} + func (s *Scope) Columns() []*Expr + func (s *Scope) DerivedTables() []*Expr + func (s *Scope) ExternalColumns() []*Expr + func (s *Scope) Find(kinds ...Kind) *Expr + func (s *Scope) FindAll(kinds ...Kind) iter.Seq[*Expr] + func (s *Scope) IsCTE() bool + func (s *Scope) IsCorrelatedSubquery() bool + func (s *Scope) IsDerivedTable() bool + func (s *Scope) IsRoot() bool + func (s *Scope) IsSubquery() bool + func (s *Scope) IsUDTF() bool + func (s *Scope) IsUnion() bool + func (s *Scope) JoinHints() []*Expr + func (s *Scope) LocalColumns() []*Expr + func (s *Scope) Pivots() []*Expr + func (s *Scope) RefCount() map[any]int + func (s *Scope) References() []scopeRef + func (s *Scope) RemoveSource(name string) + func (s *Scope) RenameSource(oldName, newName string) + func (s *Scope) Replace(old, new *Expr) + func (s *Scope) ScansAllSubscopeColumns() bool + func (s *Scope) SelectedSources() *omap[SelectedSource] + func (s *Scope) SemiOrAntiJoinTables() StrSet + func (s *Scope) SourceColumns(sourceName string) []*Expr + func (s *Scope) Stars() []*Expr + func (s *Scope) Subqueries() []*Expr + func (s *Scope) TableColumns() []*Expr + func (s *Scope) Tables() []*Expr + func (s *Scope) Traverse() []*Scope + func (s *Scope) UDTFs() []*Expr + func (s *Scope) UnqualifiedColumns() []*Expr + func (s *Scope) Walk(prune func(*Expr) bool) iter.Seq[*Expr] + type ScopeType uint8 + const ScopeCTE + const ScopeDerivedTable + const ScopeRoot + const ScopeSubquery + const ScopeUDTF + const ScopeUnion + type SelectedSource struct + Node *Expr + Source Source + type Simplifier struct + func NewSimplifier(d *Dialect, annotateNewExpressions bool) *Simplifier + func (s *Simplifier) AbsorbAndEliminate(expression *Expr, root bool) *Expr + func (s *Simplifier) Dialect() *Dialect + func (s *Simplifier) RemoveComplements(expression *Expr, root bool) *Expr + func (s *Simplifier) RewriteBetween(expression *Expr) *Expr + func (s *Simplifier) Simplify(expression *Expr, constantPropagation, coalesceSimplification bool) *Expr + func (s *Simplifier) SimplifyCoalesce(expression *Expr) *Expr + func (s *Simplifier) SimplifyComparison(expression, left, right *Expr, or bool) *Expr + func (s *Simplifier) SimplifyConcat(expression *Expr) *Expr + func (s *Simplifier) SimplifyConditionals(expression *Expr) *Expr + func (s *Simplifier) SimplifyConnectors(expression *Expr, root bool) *Expr + func (s *Simplifier) SimplifyDatetrunc(expression *Expr) *Expr + func (s *Simplifier) SimplifyEquality(expression *Expr) *Expr + func (s *Simplifier) SimplifyLiterals(expression *Expr, root bool) *Expr + func (s *Simplifier) SimplifyNot(expression *Expr) *Expr + func (s *Simplifier) SimplifyStartswith(expression *Expr) *Expr + func (s *Simplifier) SortComparison(expression *Expr) *Expr + func (s *Simplifier) UniqSort(expression *Expr, root bool) *Expr + type SimplifyOptions struct + Coalesce bool + ConstantPropagation bool + Dialect *Dialect + MaxDepth int + type Source struct + Scope *Scope + Table *Expr + func (s Source) IsScope() bool + type StrSet map[string]struct + func ColumnTableNames(expression *Expr, exclude string) StrSet + func (s StrSet) Add(items ...string) StrSet + func (s StrSet) Clone() StrSet + func (s StrSet) Has(x string) bool + func (s StrSet) Sorted() []string + type Token struct + Col int32 + Comments []string + End int32 + Line int32 + Start int32 + Text string + Type TokenType + func (t *Token) String() string + type TokenError struct + Msg string + func (e *TokenError) Error() string + type TokenSet struct + func (s *TokenSet) Has(t TokenType) bool + func (s TokenSet) Items() []TokenType + func (s TokenSet) Minus(o TokenSet) TokenSet + func (s TokenSet) Union(o TokenSet) TokenSet + func (s TokenSet) With(types ...TokenType) TokenSet + func (s TokenSet) Without(types ...TokenType) TokenSet + type TokenType uint16 + const TK_ADJACENT + const TK_AGGREGATEFUNCTION + const TK_ALIAS + const TK_ALL + const TK_ALTER + const TK_AMP + const TK_AMP_GT + const TK_AMP_LT + const TK_ANALYZE + const TK_AND + const TK_ANTI + const TK_ANY + const TK_APPLY + const TK_ARRAY + const TK_ARROW + const TK_ASC + const TK_ASOF + const TK_ATTACH + const TK_AT_GT + const TK_AT_QMARK + const TK_AUTO_INCREMENT + const TK_BACKSLASH + const TK_BEGIN + const TK_BETWEEN + const TK_BIGDECIMAL + const TK_BIGINT + const TK_BIGNUM + const TK_BIGSERIAL + const TK_BINARY + const TK_BIT + const TK_BIT_STRING + const TK_BLOB + const TK_BLOCK_END + const TK_BLOCK_START + const TK_BOOLEAN + const TK_BPCHAR + const TK_BREAK + const TK_BULK_COLLECT_INTO + const TK_BYTE_STRING + const TK_CACHE + const TK_CARET + const TK_CARET_AT + const TK_CASE + const TK_CHAR + const TK_CHARACTER_SET + const TK_CLUSTER_BY + const TK_COLLATE + const TK_COLON + const TK_COLON_EQ + const TK_COLON_GT + const TK_COLUMN + const TK_COLUMN_DEF + const TK_COMMA + const TK_COMMAND + const TK_COMMENT + const TK_COMMIT + const TK_CONNECT_BY + const TK_CONSTRAINT + const TK_COPY + const TK_CREATE + const TK_CROSS + const TK_CUBE + const TK_CURRENT_CATALOG + const TK_CURRENT_DATE + const TK_CURRENT_DATETIME + const TK_CURRENT_ROLE + const TK_CURRENT_SCHEMA + const TK_CURRENT_TIME + const TK_CURRENT_TIMESTAMP + const TK_CURRENT_USER + const TK_CURRENT_USER_ID + const TK_DAMP + const TK_DARROW + const TK_DASH + const TK_DAT + const TK_DATABASE + const TK_DATE + const TK_DATE32 + const TK_DATEMULTIRANGE + const TK_DATERANGE + const TK_DATETIME + const TK_DATETIME2 + const TK_DATETIME64 + const TK_DCOLON + const TK_DCOLONDOLLAR + const TK_DCOLONPERCENT + const TK_DCOLONQMARK + const TK_DECFLOAT + const TK_DECIMAL + const TK_DECIMAL128 + const TK_DECIMAL256 + const TK_DECIMAL32 + const TK_DECIMAL64 + const TK_DECLARE + const TK_DEFAULT + const TK_DELETE + const TK_DESC + const TK_DESCRIBE + const TK_DETACH + const TK_DHASH_ARROW + const TK_DICTIONARY + const TK_DISTINCT + const TK_DISTRIBUTE_BY + const TK_DIV + const TK_DOLLAR + const TK_DOT + const TK_DOTCARET + const TK_DOTCOLON + const TK_DOUBLE + const TK_DPIPE + const TK_DPIPE_SLASH + const TK_DQMARK + const TK_DROP + const TK_DSTAR + const TK_DYNAMIC + const TK_ELSE + const TK_END + const TK_ENUM + const TK_ENUM16 + const TK_ENUM8 + const TK_EQ + const TK_ESCAPE + const TK_EXCEPT + const TK_EXCLAMATION + const TK_EXECUTE + const TK_EXISTS + const TK_EXPORT + const TK_FALSE + const TK_FARROW + const TK_FETCH + const TK_FILE + const TK_FILE_FORMAT + const TK_FILTER + const TK_FINAL + const TK_FIRST + const TK_FIXEDSTRING + const TK_FLOAT + const TK_FOR + const TK_FORCE + const TK_FOREIGN_KEY + const TK_FORMAT + const TK_FROM + const TK_FULL + const TK_FUNCTION + const TK_GEOGRAPHY + const TK_GEOGRAPHYPOINT + const TK_GEOMETRY + const TK_GET + const TK_GLOB + const TK_GLOBAL + const TK_GRANT + const TK_GROUPING_SETS + const TK_GROUP_BY + const TK_GT + const TK_GTE + const TK_HASH + const TK_HASH_ARROW + const TK_HASH_DASH + const TK_HAVING + const TK_HEREDOC_STRING + const TK_HEX_STRING + const TK_HINT + const TK_HIVE_TOKEN_STREAM + const TK_HLLSKETCH + const TK_HSTORE + const TK_IDENTIFIER + const TK_IGNORE + const TK_ILIKE + const TK_IMAGE + const TK_IN + const TK_INDEX + const TK_INDEXED_BY + const TK_INET + const TK_INNER + const TK_INOUT + const TK_INSERT + const TK_INSTALL + const TK_INT + const TK_INT128 + const TK_INT256 + const TK_INT4MULTIRANGE + const TK_INT4RANGE + const TK_INT8MULTIRANGE + const TK_INT8RANGE + const TK_INTEGRATION + const TK_INTERSECT + const TK_INTERVAL + const TK_INTO + const TK_INTRODUCER + const TK_IPADDRESS + const TK_IPPREFIX + const TK_IPV4 + const TK_IPV6 + const TK_IRLIKE + const TK_IS + const TK_ISNULL + const TK_JOIN + const TK_JOIN_MARKER + const TK_JSON + const TK_JSONB + const TK_KEEP + const TK_KEY + const TK_KILL + const TK_LANGUAGE + const TK_LATERAL + const TK_LEFT + const TK_LIKE + const TK_LIMIT + const TK_LINESTRING + const TK_LIST + const TK_LLRR_ARROW + const TK_LOAD + const TK_LOCALTIME + const TK_LOCALTIMESTAMP + const TK_LOCK + const TK_LONGBLOB + const TK_LONGTEXT + const TK_LOWCARDINALITY + const TK_LR_ARROW + const TK_LT + const TK_LTE + const TK_LT_AT + const TK_L_BRACE + const TK_L_BRACKET + const TK_L_PAREN + const TK_MAP + const TK_MATCH + const TK_MATCH_CONDITION + const TK_MATCH_RECOGNIZE + const TK_MEDIUMBLOB + const TK_MEDIUMINT + const TK_MEDIUMTEXT + const TK_MEMBER_OF + const TK_MERGE + const TK_MOD + const TK_MODEL + const TK_MONEY + const TK_MULTILINESTRING + const TK_MULTIPOLYGON + const TK_NAME + const TK_NAMESPACE + const TK_NATIONAL_STRING + const TK_NATURAL + const TK_NCHAR + const TK_NCOLON_GT + const TK_NEQ + const TK_NESTED + const TK_NEXT + const TK_NONE + const TK_NOT + const TK_NOTHING + const TK_NOTNULL + const TK_NULL + const TK_NULLABLE + const TK_NULLSAFE_EQ + const TK_NUMBER + const TK_NUMMULTIRANGE + const TK_NUMRANGE + const TK_NVARCHAR + const TK_OBJECT + const TK_OBJECT_IDENTIFIER + const TK_OFFSET + const TK_ON + const TK_ONLY + const TK_OPERATOR + const TK_OPTION + const TK_OR + const TK_ORDERED + const TK_ORDER_BY + const TK_ORDER_SIBLINGS_BY + const TK_ORDINALITY + const TK_OUT + const TK_OUTER + const TK_OVER + const TK_OVERLAPS + const TK_OVERWRITE + const TK_PACKAGE + const TK_PARAMETER + const TK_PARTITION + const TK_PARTITION_BY + const TK_PERCENT + const TK_PIPE + const TK_PIPE_GT + const TK_PIPE_SLASH + const TK_PIVOT + const TK_PLACEHOLDER + const TK_PLUS + const TK_POINT + const TK_POLICY + const TK_POLYGON + const TK_POOL + const TK_POSITIONAL + const TK_PRAGMA + const TK_PREWHERE + const TK_PRIMARY_KEY + const TK_PROCEDURE + const TK_PROJECTION + const TK_PROPERTIES + const TK_PSEUDO_TYPE + const TK_PUT + const TK_QDCOLON + const TK_QMARK_AMP + const TK_QMARK_PIPE + const TK_QUALIFY + const TK_QUOTE + const TK_RANGE + const TK_RAW_STRING + const TK_RECURSIVE + const TK_REFERENCES + const TK_REFRESH + const TK_RENAME + const TK_REPLACE + const TK_RETURNING + const TK_REVOKE + const TK_RIGHT + const TK_RING + const TK_RLIKE + const TK_ROLE + const TK_ROLLBACK + const TK_ROLLUP + const TK_ROW + const TK_ROWS + const TK_ROWVERSION + const TK_RULE + const TK_R_BRACE + const TK_R_BRACKET + const TK_R_PAREN + const TK_SCHEMA + const TK_SELECT + const TK_SEMANTIC_VIEW + const TK_SEMI + const TK_SEMICOLON + const TK_SENTINEL + const TK_SEPARATOR + const TK_SEQUENCE + const TK_SERDE_PROPERTIES + const TK_SERIAL + const TK_SESSION + const TK_SESSION_PARAMETER + const TK_SESSION_USER + const TK_SET + const TK_SETTINGS + const TK_SHOW + const TK_SIMILAR_TO + const TK_SIMPLEAGGREGATEFUNCTION + const TK_SINK + const TK_SLASH + const TK_SMALLDATETIME + const TK_SMALLINT + const TK_SMALLMONEY + const TK_SMALLSERIAL + const TK_SOME + const TK_SORT_BY + const TK_SOUNDS_LIKE + const TK_SOURCE + const TK_SPACE + const TK_SQL_SECURITY + const TK_STAGE + const TK_STAR + const TK_START_WITH + const TK_STORAGE_INTEGRATION + const TK_STRAIGHT_JOIN + const TK_STREAM + const TK_STREAMLIT + const TK_STRING + const TK_STRUCT + const TK_SUMMARIZE + const TK_SUPER + const TK_SYSTIMESTAMP + const TK_TABLE + const TK_TABLE_SAMPLE + const TK_TAG + const TK_TDIGEST + const TK_TEMPORARY + const TK_TEXT + const TK_THEN + const TK_TILDE + const TK_TIME + const TK_TIMESTAMP + const TK_TIMESTAMPLTZ + const TK_TIMESTAMPNTZ + const TK_TIMESTAMPTZ + const TK_TIMESTAMP_MS + const TK_TIMESTAMP_NS + const TK_TIMESTAMP_S + const TK_TIMESTAMP_SNAPSHOT + const TK_TIMETZ + const TK_TIME_NS + const TK_TINYBLOB + const TK_TINYINT + const TK_TINYTEXT + const TK_TOP + const TK_TRIGGER + const TK_TRUE + const TK_TRUNCATE + const TK_TSMULTIRANGE + const TK_TSRANGE + const TK_TSTZMULTIRANGE + const TK_TSTZRANGE + const TK_TYPE + const TK_UBIGINT + const TK_UDECIMAL + const TK_UDOUBLE + const TK_UINT + const TK_UINT128 + const TK_UINT256 + const TK_UMEDIUMINT + const TK_UNCACHE + const TK_UNDROP + const TK_UNICODE_STRING + const TK_UNION + const TK_UNIQUE + const TK_UNKNOWN + const TK_UNNEST + const TK_UNPIVOT + const TK_UPDATE + const TK_URI_START + const TK_USE + const TK_USERDEFINED + const TK_USING + const TK_USMALLINT + const TK_UTC_DATE + const TK_UTC_TIME + const TK_UTC_TIMESTAMP + const TK_UTINYINT + const TK_UUID + const TK_VALUES + const TK_VAR + const TK_VARBINARY + const TK_VARCHAR + const TK_VARIADIC + const TK_VARIANT + const TK_VECTOR + const TK_VERSION_SNAPSHOT + const TK_VIEW + const TK_VOID + const TK_VOLATILE + const TK_VOLUME + const TK_WAREHOUSE + const TK_WHEN + const TK_WHERE + const TK_WINDOW + const TK_WITH + const TK_XML + const TK_XOR + const TK_YEAR + func (t TokenType) Name() string + func (t TokenType) String() string + type TokenizerSettings struct + BIT_STRINGS [][2]string + BYTE_STRINGS [][2]string + BYTE_STRING_ESCAPES []string + COMMANDS TokenSet + COMMAND_PREFIX_TOKENS TokenSet + COMMENTS [][2]string + ESCAPE_FOLLOW_CHARS []string + HEREDOC_STRINGS []string + HEREDOC_STRING_ALTERNATIVE TokenType + HEREDOC_TAG_IS_IDENTIFIER bool + HEX_STRINGS [][2]string + HINT_START string + IDENTIFIERS [][2]string + IDENTIFIER_ESCAPES []string + KEYWORDS map[string]TokenType + NESTED_COMMENTS bool + NUMBERS_CAN_HAVE_DECIMALS bool + NUMERIC_LITERALS map[string]string + QUOTES []string + RAW_STRINGS [][2]string + SINGLE_TOKENS map[string]TokenType + STRING_ESCAPES []string + STRING_ESCAPES_ALLOWED_IN_RAW_STRINGS bool + TOKENS_PRECEDING_HINT TokenSet + UNICODE_STRINGS [][2]string + VAR_SINGLE_TOKENS StrSet + type Tri int8 + const TriFalse + const TriNone + const TriTrue + type TypeAnnotator struct + func (a *TypeAnnotator) Annotate(expression *Expr, annotateScope bool) *Expr + func (a *TypeAnnotator) Clear() + func (a *TypeAnnotator) Dialect() *Dialect + func (a *TypeAnnotator) Schema() *MappingSchema + type UnsupportedError struct + Msg string + func (e *UnsupportedError) Error() string + type ValueError struct + Msg string + func (e *ValueError) Error() string