sqlode/capabilities
Single source of truth for the capabilities that sqlode currently advertises to public consumers.
CHANGELOG.md, README.md, and any other release-facing document
that needs to claim “supported X” values should derive from the
lists below or from manifest_markdown() instead of restating them
by hand. The accompanying test/capabilities_test.gleam pins the
rendered manifest against the tracked file doc/capabilities.md so
any change to the supported set forces a conscious doc refresh.
The split between fully-supported and planned query commands
matches what generate.gleam enforces at generation time: the
planned commands are currently rejected with an
UnsupportedAnnotation error, so listing them as “Added” without
qualification (as CHANGELOG.md did before this module) gives a
false impression to public users.
Values
pub fn fully_supported_query_commands() -> List(
runtime.QueryCommand,
)
Query annotations that are fully supported end-to-end: parsing,
analysis, and code generation all complete without the
validate_unsupported_annotations guard rejecting them.
pub fn manifest_markdown() -> String
Render a Markdown manifest that the test suite pins against
doc/capabilities.md. The generated shape is intentionally stable:
adding a new capability changes the file, adding a new section
changes this function.
pub fn planned_query_commands() -> List(runtime.QueryCommand)
Query annotations that the parser accepts for sqlc source
compatibility but that generation currently refuses with an
UnsupportedAnnotation error.
pub fn supported_engines() -> List(model.Engine)
pub fn supported_macros() -> List(String)
Macro helpers sqlode recognises inside query files. Emitted names
include the sqlode. prefix that appears in user SQL.
pub fn supported_placeholder_styles() -> List(
#(model.Engine, String),
)
Placeholder styles emitted for the three engines sqlode targets.
The pair matches the mapping in codegen/queries.gleam.
pub fn supported_runtimes() -> List(model.Runtime)
pub fn supported_type_mappings() -> List(model.TypeMapping)