SealedOverDynamic class
A lint rule that enforces the use of sealed classes instead of dynamic for sync results.
Using dynamic for sync results bypasses Dart’s type system, making code less safe and harder to maintain.
Sealed classes provide explicit, type-safe alternatives that improve code clarity, enable exhaustive handling, and enhance IDE support.
This rule flags any use of dynamic for sync results and suggests using a sealed class instead.
Example of code that triggers this rule:
// ❌ Not allowed:
dynamic syncResult = await powersync.execute(query);
Example of code that doesn't trigger this rule:
// ✅ Allowed:
sealed class SyncResult {}
SyncResult result = await powersync.execute(query);
Constructors
- SealedOverDynamic()
-
const
Properties
- code → LintCode
-
The
LintCodethat thisLintRulemay emit.finalinherited - enabledByDefault → bool
-
Whether the lint rule is on or off by default in an empty analysis_options.yaml
no setterinherited
-
filesToAnalyze
→ List<
String> -
A list of glob patterns matching the files that run cares about.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
getFixes(
) → List< Fix> -
Obtains the list of
Fixassociated with thisLintRule.inherited -
isEnabled(
CustomLintConfigs configs) → bool -
Checks whether this lint rule is enabled in a configuration file.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
run(
CustomLintResolver resolver, ErrorReporter reporter, CustomLintContext context) → void - Emits lints for a given file.
-
startUp(
CustomLintResolver resolver, CustomLintContext context) → Future< void> -
Emits lints for a given file.
inherited
-
testAnalyzeAndRun(
File file) → Future< List< AnalysisError> > -
Analyze a Dart file and runs this assist in test mode.
inherited
-
testRun(
ResolvedUnitResult result, {Pubspec? pubspec}) → Future< List< AnalysisError> > -
Runs this assist in test mode.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited