Expand description
AST → IR builders.
Each submodule consumes one classified crate::parse::Statement variant
and produces zero-or-more IR objects, optionally appended to a partial
crate::ir::catalog::Catalog via Builder.
Modules§
- aggregate_
stmt - Parser for
CREATE AGGREGATE,ALTER AGGREGATE … OWNER TO, andCOMMENT ON AGGREGATE. - alter_
table_ attach_ partition ALTER TABLE parent ATTACH PARTITION child FOR VALUES ...— back-fillspartition_ofon an already-parsed child Table.- alter_
table_ stmt ALTER TABLEsupport for source DDL.- cast_
stmt - Parser for
CREATE CASTandCOMMENT ON CAST. - comment_
stmt COMMENT ON ...— apply a comment to an existing IR object in a partialCatalog.- create_
collation_ stmt - Source-side parser for
CREATE COLLATION qname (option = value, …). - create_
composite_ type_ stmt - Source-side parser for
CREATE TYPE x AS (...)(composite types). - create_
domain_ stmt - Source-side parser for
CREATE DOMAIN. - create_
enum_ stmt - Source-side parser for
CREATE TYPE x AS ENUM (...). - create_
extension_ stmt CREATE EXTENSION→crate::ir::extension::Extension.- create_
function_ stmt - Source-side parser for
CREATE FUNCTIONandCREATE PROCEDURE. - create_
materialized_ view_ stmt CREATE MATERIALIZED VIEW→crate::ir::view::MaterializedView.- create_
range_ stmt - Source-side parser for
CREATE TYPE … AS RANGE (…). - create_
schema_ stmt CREATE SCHEMA→crate::ir::schema::Schema.- create_
seq_ stmt CREATE SEQUENCE→crate::ir::sequence::Sequence.- create_
stmt CREATE TABLE→crate::ir::table::Table.- create_
trigger_ stmt - Source parser for
CREATE [CONSTRAINT] TRIGGERstatements. - create_
view_ stmt CREATE VIEW→crate::ir::view::View.- default_
privileges ALTER DEFAULT PRIVILEGES ... GRANT ...— future-object grants.- desugar_
serial SERIALdesugaring.- event_
trigger_ stmt - Parser for
CREATE EVENT TRIGGERandALTER EVENT TRIGGERstatements. - grants
GRANT priv ON obj TO grantee— object-level grants.- index_
stmt CREATE INDEX→crate::ir::index::Index.- owner_
stmt ALTER <objkind> name OWNER TO role— ownership assignment.- plpgsql
- PL/pgSQL body parsing — dep extraction, COMMIT/ROLLBACK detection,
-- @pgevolve dep:directive scanning. - policy_
stmt CREATE POLICY name ON tablename ...— RLS policy declarations.- publication_
stmt - Parser for
CREATE PUBLICATIONandALTER PUBLICATIONstatements. - reloptions
- Decode
WITH (key = value, ...)reloption clauses fromDefElemnodes. - shared
- Helpers shared by all AST → IR builders.
- statistic_
stmt - Parser for
CREATE STATISTICSandALTER STATISTICSstatements. - subscription_
stmt - Parser for
CREATE SUBSCRIPTIONandALTER SUBSCRIPTIONstatements. - text_
search_ stmt - Parser for
CREATE TEXT SEARCH DICTIONARY,CREATE TEXT SEARCH CONFIGURATION, and theirALTER/COMMENT ON/ALTER OWNER TOcounterparts.
Structs§
- Builder
- Mutable accumulator passed through builders during a single
parse_directorypass.