Documentation
¶
Overview ¶
Package engine is the query planner: IR in, Plan out. It is pure and stateless apart from the loaded runtime model; execution lives in the language-native executors.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Engine ¶
type Engine struct {
M *runtimemodel.Model
P *planner.Planner
}
Engine binds a runtime model to a dialect.
func Load ¶
Load returns the dialect's engine, built as a runtime model from the manifest text. Malformed manifest text is SCHEMA_INVALID.
func New ¶
func New(m *runtimemodel.Model, dialectName string) (*Engine, error)
New builds an engine for the given dialect name.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package dbspec parses, validates and emits dbspec documents, the schema language that docs/spec/dbspec.md specifies.
|
Package dbspec parses, validates and emits dbspec documents, the schema language that docs/spec/dbspec.md specifies. |
|
Package dialect renders the database-specific pieces of SQL.
|
Package dialect renders the database-specific pieces of SQL. |
|
internal
|
|
|
meet
Package meet holds the one table of which two columns compare alike on the three databases.
|
Package meet holds the one table of which two columns compare alike on the three databases. |
|
Package ir defines the wire form clients send (JSON, docs/spec/protocol.md) and validates it against the manifest.
|
Package ir defines the wire form clients send (JSON, docs/spec/protocol.md) and validates it against the manifest. |
|
Package plan is what executors run: SQL text with bind slots and an assembly spec.
|
Package plan is what executors run: SQL text with bind slots and an assembly spec. |
|
Package planner turns a validated IR request into a Plan.
|
Package planner turns a validated IR request into a Plan. |
|
Package runtimemodel builds the runtime model of a dbspec document set (docs/spec/dbspec.md, "Runtime model").
|
Package runtimemodel builds the runtime model of a dbspec document set (docs/spec/dbspec.md, "Runtime model"). |
Click to show internal directories.
Click to hide internal directories.