DocumentInterfaceAnalyzer class

Analyzer that ensures abstract classes and their public methods have documentation.

This rule flags abstract classes that are exported/public but lack proper documentation. It ensures clear API contracts for modular architecture by requiring /// documentation for both the class and its public methods.

Example of code that triggers this rule:

abstract class SyncRepository {  // Missing class documentation
  Future<void> syncData();      // Missing method documentation
}

Example of code that doesn't trigger this rule:

/// Repository interface for data synchronization operations.
abstract class SyncRepository {
  /// Synchronizes local data with remote Supabase instance.
  Future<void> syncData();
}
Inheritance

Constructors

DocumentInterfaceAnalyzer()

Properties

correctionMessage String
The suggested correction message for fixing a violation of this rule.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
problemMessage String
The main problem message shown when this rule is violated.
no setteroverride
ruleName String
The unique name of the lint rule implemented by this analyzer.
no setteroverride
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
severity String
The severity of the lint rule (e.g., 'ERROR', 'WARNING').
no setterinherited

Methods

analyze(CompilationUnit unit) List<LintIssue>
Analyze the given CompilationUnit and return a list of LintIssues.
override
analyzeWithResolver(CompilationUnit unit, dynamic resolver) List<LintIssue>
Analyze the given CompilationUnit with resolver context and return a list of LintIssues.
inherited
createIssue(AstNode node, {String? customMessage}) LintIssue
Helper to create a LintIssue from an AstNode with consistent formatting.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited