Drops.SQL.Compilers.Sqlite (drops_relation v0.1.0)
View SourceSQLite-specific compiler for processing database introspection ASTs.
This module implements the Drops.SQL.Compiler
behavior to provide SQLite-specific
type mapping and AST processing. It converts SQLite database types to Ecto types
and handles SQLite-specific type characteristics.
Summary
Functions
@spec opts() :: keyword()
@spec process(tuple(), map()) :: Drops.SQL.Database.Table.t() | term()
@spec visit( {:type, String.t()}, map() ) :: atom() | String.t()
@spec visit( {:table, list()}, map() ) :: Drops.SQL.Database.Table.t()
@spec visit( {:identifier, String.t()}, map() ) :: atom()
@spec visit( {:column, list()}, map() ) :: Drops.SQL.Database.Column.t()
@spec visit( {:type, term()}, map() ) :: term()
@spec visit( {:meta, map()}, map() ) :: map()
@spec visit( {:index, list()}, map() ) :: Drops.SQL.Database.Index.t()
@spec visit( {:foreign_key, list()}, map() ) :: Drops.SQL.Database.ForeignKey.t()
@spec visit(list(), map()) :: list()
@spec visit(tuple(), map()) :: term()
@spec visit(term(), map()) :: term()