good_intentions library
Architectural validation and PlantUML diagram generation powered by the Dart analyzer.
Classes
- AnalyzerAdapter
- Wraps the Dart analyzer to discover annotated classes in a package.
- AnnotationInfo
- The result of extracting an intention annotation from a class element.
- ArchitectureReport
- The result of analyzing a package's architecture.
- ArchitectureValidator
- Orchestrates architecture analysis, validation, and diagram generation.
- ClassCollector
- Collects all annotated classes from a package and its dependencies.
- CollectionResult
- The result of collecting annotated classes from a package.
- DependencyExtractionResult
- The result of extracting dependencies from a class element.
- Logger
- Minimal logger with consistent prefixed output.
- PackageFileResolver
- Resolves package files and tracked file paths for build hook dependencies.
- PumlWriter
-
Generates a PlantUML class diagram from a
DependencyGraph. - ValidationReporter
-
Runs architectural validation on a
DependencyGraphand reports results.
Functions
-
isGeneratedDartFile(
String path) → bool -
Whether
pathlooks like a code-generated Dart file. -
reportResults(
ArchitectureReport report, Logger logger) → void -
Writes validation results and untagged warnings to
logger.
Typedefs
-
BuildRunner
= Future<
void> Function(List<String> args, Future<void> builder(BuildInput input, BuildOutputBuilder output)) -
Signature matching the
buildfunction frompackage:hooks.