reflection_generator library

Reflection generator for build_runner integration.

Classes

Enumerator<T extends Object>
Similar to a Set<T> but also keeps track of the index of the first insertion of each item.
ErasableDartType
Used to bundle a DartType with information about whether it should be erased (such that, e.g., List<int> becomes List). The alternative would be to construct a new InterfaceType with all-dynamic type arguments in the cases where we need to have the erased type, but constructing such new analyzer data seems to transgress yet another privacy boundary of the analyzer, so we decided that we did not want to do that.
GeneratorImplementation
Information about the program parts that can be reflected by a given Reflector.
MixinApplication
ParameterListShape
Models the shape of a parameter list, which enables invocation to detect mismatches such that we can raise a suitable no-such-method error.
ReflectionGenerator

Enums

WarningKind
Specifiers for warnings that may be suppressed; allWarnings disables all warnings, and the remaining values are concerned with individual warnings. Remember to update the explanatory text in _findSuppressWarnings whenever this list is updated.

Constants

sdkLibraryNames → const Set<String>
The names of the libraries that can be accessed with a 'dart:x' import uri.

Properties

log → Logger
Logger for the reflection generator.
final
mapEnvironmentToWarningKind Map<String, Set<WarningKind>>
final
typedefNumber int
getter/setter pair

Functions

reflectionGenerator(BuilderOptions options) ReflectionGenerator
unreachableError(String id, String message) → Never
Throws an error for unreachable code paths.

Typedefs

CapabilityChecker = bool Function(TypeSystem, String methodName, Iterable<ElementAnnotation> metadata, Iterable<ElementAnnotation>? getterMetadata)
Function type for checking if a capability supports a given element.