AggregateBuilder class

Combine all @ConnectOfflineFirstWithRest and @Migratable classes and annotations

Since LibraryElement only reads from one file and not an entire directory, all relevant classes and annotation are inserted into copies of all input files. If there is ever a performance concern with build times, start here. Only one file is needed, but it is impossible to access LibraryReaders outside the build step of the created asset, and this was the only successful way amongst dozens. This does not output a file used by Brick in the app implementation.

See the build docs example for more.

Constructors

AggregateBuilder({List<String> requiredImports = const <String>[]})

Properties

buildExtensions Map<String, List<String>>
Mapping from input file extension to output file extensions.
final
hashCode int
The hash code for this object.
no setterinherited
requiredImports List<String>
A list of packages that must be included for adapters and models to build: field-level annotation imports, helper classes, etc. For example: ['import 'package:brick_sqlite/db.dart';']
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

build(BuildStep buildStep) Future<void>
Generates the outputs for a given BuildStep.
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

Static Properties

adapterFiles → Glob
final
importRegex RegExp
final
migrationFiles → Glob
final
modelFiles → Glob
final

Static Methods

findAllImports(String contents) Set<String>
All unique import:package within a large body of text

Constants

outputFileName → const String