Package-level declarations

Types

Link copied to clipboard
class DatabaseContext(val name: String, val dialect: SqlDialect)

Lightweight SQLDelight database context visible to rules and reporters.

Link copied to clipboard
class Diagnostic(val ruleId: QualifiedRuleId, val severity: Severity, val message: String, val file: SourceFile?, val range: SourceRange?, val database: DatabaseContext?, val fixes: List<Fix> = emptyList())

Diagnostic resolved by the engine and passed to reporters.

Link copied to clipboard
class DialectCapability(val id: String)

Dialect capability identifier used by rules to check feature support without depending on artifact names.

Link copied to clipboard

Database family for known SQLDelight dialects.

Link copied to clipboard

User-facing enablement state for rules and rule sets.

Link copied to clipboard
class Fix(val title: String, val safety: FixSafety, val edits: List<TextEdit>)

A fix proposed by a rule diagnostic.

Link copied to clipboard

Safety classification for a write operation proposed by a rule or formatter.

Link copied to clipboard
@RequiresOptIn(message = "This API is public for sqldelight-check internals and may change without source compatibility.", level = RequiresOptIn.Level.ERROR)
annotation class InternalSqldelightCheckApi

Marks API that is public only for sqldelight-check module boundaries.

Link copied to clipboard

Controls how much execution detail sqldelight-check should emit.

Link copied to clipboard
class QualifiedRuleId(val ruleSetId: RuleSetId, val ruleId: RuleId)

Identifies a rule after combining a rule set ID and a rule-local ID.

Link copied to clipboard
class RuleDiagnostic(val severity: Severity, val message: String, val file: SourceFile?, val range: SourceRange?, val database: DatabaseContext?, val fixes: List<Fix> = emptyList())

Diagnostic emitted by a rule before the engine attaches the containing rule set.

Link copied to clipboard
value class RuleId(val value: String)

Identifies a rule within its containing rule set.

Link copied to clipboard
value class RuleSetId(val value: String)

Identifies a rule set such as standard, sqlite, or a third-party provider ID.

Link copied to clipboard

Severity assigned to a diagnostic after rule defaults and user configuration are resolved.

Link copied to clipboard
class SourceFile(val path: String, val content: String)

Source file known to sqldelight-check.

Link copied to clipboard

SQLDelight source file kind inferred from the file extension.

Link copied to clipboard
class SourcePosition(val line: Int, val column: Int)

One-based source position for diagnostics and edits.

Link copied to clipboard
class SourceRange(val start: SourcePosition, val end: SourcePosition)

Source range in a file.

Link copied to clipboard
class SqlDialect(val family: DialectFamily, val capabilities: Set<DialectCapability> = emptySet(), val sourceKeywords: SqlDialectSourceKeywords = SqlDialectSourceKeywords.SourceScannerDefault)

Rule-relevant SQL dialect metadata for a SQLDelight database.

Link copied to clipboard
class SqlDialectCoordinate(val group: String, val module: String, val version: String?)

Gradle module coordinate for a SQLDelight dialect artifact.

Link copied to clipboard
fun interface SqlDialectProvider

Resolves rule-relevant dialect metadata for a SQLDelight dialect artifact.

Link copied to clipboard
class SqlDialectSourceKeywords(val aliasBoundaryKeywords: Set<String> = SourceScannerDefault.aliasBoundaryKeywords, val tableReferenceBoundaryKeywords: Set<String> = SourceScannerDefault.tableReferenceBoundaryKeywords, val joinModifierKeywords: Set<String> = SourceScannerDefault.joinModifierKeywords)

Dialect-specific keyword groups used by the conservative source scanner.

Link copied to clipboard
class TextEdit(val range: SourceRange, val replacement: String)

Text edit represented as a replacement over a source range.