Expand description
Unified configuration for the banshee SQL toolchain.
BansheeConfig is the single struct threaded through the formatter, linter,
completion engine and the generic LSP. It deserializes from a banshee.toml
file whose schema is deliberately decoupled from the internal types of each
crate, so the file format can stay stable as internals evolve.
§Example banshee.toml
[format]
style = "sqlstyle"
keyword-case = "upper"
max-width = 100
[lint]
enabled = true
exclude = ["AM01"]
[lint.rules.CP01]
severity = "warning"
[database]
url-env = "DATABASE_URL"
schema = "public"Structs§
- Banshee
Config - Top-level configuration aggregating every subsystem’s settings.
- Completion
Settings - Completion engine settings.
- Database
Settings - Postgres connection configuration.
- Format
Settings - Formatter settings: a base preset plus optional per-knob overrides.
- Lint
Settings - Lint settings: global toggle, rule selection, and per-rule overrides.
- PgFormat
Settings - pgFormatter-only knobs, used when
style = "pgformatter". - Rule
Setting - Configuration for a single rule, keyed by its code (e.g.
RF01). - Templater
Settings - Placeholder templating settings.
Enums§
- Case
Policy - Case policy for pgFormatter-specific knobs (supports capitalize/unchanged that the sqlstyle engine does not).
- Comma
Style - Comma placement.
- Config
Error - Errors raised while loading configuration.
- Identifier
Case - Identifier case policy.
- Indent
Unit - Indentation unit.
- Keyword
Case - Keyword case policy.
- Placeholder
Style - The placeholder syntax used by the source. Selected via configuration; when unset, no templating runs.
- Severity
Level - Per-rule severity, including a disabled state.
- Style
Preset - Base formatter preset.
Constants§
- CONFIG_
FILE_ NAME - Standard config file name discovered by
BansheeConfig::discover.