Documentation
¶
Index ¶
- type Rule
- func (r *Rule) ApplySettings(s map[string]any) error
- func (r *Rule) Category() string
- func (r *Rule) Check(f *lint.File) []lint.Diagnostic
- func (r *Rule) DefaultSettings() map[string]any
- func (r *Rule) Fix(f *lint.File) []byte
- func (r *Rule) Generate(f *lint.File, filePath string, line int, params map[string]string, ...) (string, []lint.Diagnostic)
- func (r *Rule) ID() string
- func (r *Rule) Name() string
- func (r *Rule) RuleID() string
- func (r *Rule) RuleName() string
- func (r *Rule) Validate(filePath string, line int, params map[string]string, ...) []lint.Diagnostic
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Rule ¶
type Rule struct {
Pad int
SeparatorStyle tablefmt.SeparatorStyle
// contains filtered or unexported fields
}
Rule checks that generated sections match their directive output.
engineOnce serialises the lazy initialisation of engine: the rule is a registered singleton and the LSP server may call Check from multiple goroutines, so a plain check-then-set on the engine field races. sync.Once gives both writers and readers a single happens-before edge.
Pad and SeparatorStyle mirror MDS025 (table-format)'s knobs and govern only the tables this rule emits inside `<?catalog?>` bodies. Catalog carries its own copies — rather than reading MDS025's configured state — because the lint engine clones rules and applies settings per file in parallel; a process-global view of MDS025 would race across workers. Set both rules to the same style when you want host-file tables and catalog-generated tables to share a canonical.
func (*Rule) ApplySettings ¶ added in v0.23.0
ApplySettings implements rule.Configurable.
func (*Rule) Check ¶
func (r *Rule) Check(f *lint.File) []lint.Diagnostic
Check implements rule.Rule.
func (*Rule) DefaultSettings ¶ added in v0.23.0
DefaultSettings implements rule.Configurable.
func (*Rule) Generate ¶
func (r *Rule) Generate(f *lint.File, filePath string, line int, params map[string]string, columns map[string]gensection.ColumnConfig, ) (string, []lint.Diagnostic)
Generate implements gensection.Directive.
func (*Rule) Validate ¶
func (r *Rule) Validate(filePath string, line int, params map[string]string, columns map[string]gensection.ColumnConfig, ) []lint.Diagnostic
Validate implements gensection.Directive.