Expand description
Static SQL type propagation and PostgreSQL-compatible common-type rules.
Structs§
Traits§
Functions§
- assignment_
type_ compatible - Whether
PostgreSQLassignment coercion accepts the declared source and target. Domains use their base type for cast selection and retain constraint checking at the value conversion boundary; array coercion applies element by element. - bind_
type_ introspection - Bind polymorphic type-introspection calls and common-type coercions while the input schema still carries declared SQL types. Runtime values deliberately do not encode integer widths, varchar identity, or float widths, and selector expressions must return the common SQL type rather than the storage type of the branch selected at runtime.
- bind_
type_ introspection_ with_ resolver - Bind type-introspection calls with access to catalog-backed function and aggregate overloads.
- builtin_
function_ argument_ targets - Return the declared argument targets selected by PostgreSQL-compatible built-in resolution. Known argument types are retained for polymorphic calls, while fixed signatures and overloaded operators supply the context needed to resolve
unknownarguments. - builtin_
function_ type - coerce_
common_ context_ value - common_
context_ expression_ type - Resolve an expression participating in
PostgreSQL’s common-type selection. Bare string and NULL literals retain the parser’sunknowntype until the surrounding VALUES, set operation, CASE, or array context selects a concrete type. - common_
type - equality_
operand_ type - explicit_
type_ compatible - Whether an explicit SQL cast has a
PostgreSQLcoercion path, independently of its value. NULL input does not make an otherwise missing cast valid. - foreign_
key_ operand_ type - Resolve the comparison type accepted by a
PostgreSQLforeign key. The referenced key’s operator class makes compatibility directional: an implicit cast from the referencing type to the referenced type is valid, while the reverse cast alone is not. Integer widths, floating widths, character strings, and date/timestamp types additionally have cross-type equality operators in their shared operator families. - resolve_
declared_ column_ type - scalar_
type - scalar_
type_ with_ resolver - values_
column_ types