Skip to main content

LintRule

Trait LintRule 

Source
pub trait LintRule: Send + Sync {
    // Required methods
    fn code(&self) -> &'static str;
    fn name(&self) -> &'static str;
    fn description(&self) -> &'static str;
    fn check(&self, stmt: &Statement, ctx: &LintContext<'_>) -> Vec<Issue>;

    // Provided method
    fn sqlfluff_name(&self) -> &'static str { ... }
}
Expand description

A single lint rule that checks a parsed SQL statement for anti-patterns.

Required Methods§

Source

fn code(&self) -> &'static str

Machine-readable rule code (e.g., “LINT_AM_008”).

Source

fn name(&self) -> &'static str

Short human-readable name (e.g., “Bare UNION”).

Source

fn description(&self) -> &'static str

Longer description of what this rule checks.

Source

fn check(&self, stmt: &Statement, ctx: &LintContext<'_>) -> Vec<Issue>

Check a single parsed statement and return any issues found.

Provided Methods§

Source

fn sqlfluff_name(&self) -> &'static str

SQLFluff dotted identifier (e.g., aliasing.table).

Implementors§

Source§

impl LintRule for AliasingTableStyle

Source§

impl LintRule for AliasingColumnStyle

Source§

impl LintRule for ImplicitAlias

Source§

impl LintRule for AliasingUniqueTable

Source§

impl LintRule for UnusedTableAlias

Source§

impl LintRule for AliasingLength

Source§

impl LintRule for AliasingForbidSingleTable

Source§

impl LintRule for AliasingUniqueColumn

Source§

impl LintRule for AliasingSelfAliasColumn

Source§

impl LintRule for DistinctWithGroupBy

Source§

impl LintRule for BareUnion

Source§

impl LintRule for AmbiguousOrderBy

Source§

impl LintRule for AmbiguousColumnCount

Source§

impl LintRule for AmbiguousJoinStyle

Source§

impl LintRule for AmbiguousColumnRefs

Source§

impl LintRule for AmbiguousSetColumns

Source§

impl LintRule for AmbiguousJoinCondition

Source§

impl LintRule for LimitOffsetWithoutOrderBy

Source§

impl LintRule for CapitalisationKeywords

Source§

impl LintRule for CapitalisationIdentifiers

Source§

impl LintRule for CapitalisationFunctions

Source§

impl LintRule for CapitalisationLiterals

Source§

impl LintRule for CapitalisationTypes

Source§

impl LintRule for ConventionNotEqual

Source§

impl LintRule for CoalesceConvention

Source§

impl LintRule for ConventionSelectTrailingComma

Source§

impl LintRule for CountStyle

Source§

impl LintRule for NullComparison

Source§

impl LintRule for ConventionTerminator

Source§

impl LintRule for ConventionStatementBrackets

Source§

impl LintRule for LeftJoinOverRightJoin

Source§

impl LintRule for ConventionBlockedWords

Source§

impl LintRule for ConventionQuotedLiterals

Source§

impl LintRule for ConventionCastingStyle

Source§

impl LintRule for ConventionJoinCondition

Source§

impl LintRule for JinjaPadding

Source§

impl LintRule for LayoutSpacing

Source§

impl LintRule for LayoutIndent

Source§

impl LintRule for LayoutOperators

Source§

impl LintRule for LayoutCommas

Source§

impl LintRule for LayoutLongLines

Source§

impl LintRule for LayoutFunctions

Source§

impl LintRule for LayoutCteBracket

Source§

impl LintRule for LayoutCteNewline

Source§

impl LintRule for LayoutSelectTargets

Source§

impl LintRule for LayoutSelectModifiers

Source§

impl LintRule for LayoutSetOperators

Source§

impl LintRule for LayoutEndOfFile

Source§

impl LintRule for LayoutStartOfFile

Source§

impl LintRule for LayoutKeywordNewline

Source§

impl LintRule for LayoutNewlines

Source§

impl LintRule for ReferencesFrom

Source§

impl LintRule for ReferencesQualification

Source§

impl LintRule for ReferencesConsistent

Source§

impl LintRule for ReferencesKeywords

Source§

impl LintRule for ReferencesSpecialChars

Source§

impl LintRule for ReferencesQuoting

Source§

impl LintRule for UnnecessaryElseNull

Source§

impl LintRule for StructureSimpleCase

Source§

impl LintRule for UnusedCte

Source§

impl LintRule for FlattenableNestedCase

Source§

impl LintRule for StructureSubquery

Source§

impl LintRule for StructureColumnOrder

Source§

impl LintRule for AvoidUsingJoin

Source§

impl LintRule for StructureDistinct

Source§

impl LintRule for StructureJoinConditionOrder

Source§

impl LintRule for StructureConstantExpression

Source§

impl LintRule for StructureUnusedJoin

Source§

impl LintRule for StructureConsecutiveSemicolons

Source§

impl LintRule for TsqlSpPrefix

Source§

impl LintRule for TsqlProcedureBeginEnd

Source§

impl LintRule for TsqlEmptyBatch