generate method
FutureOr<GenerateComponentResult>
generate(
- Element2 element,
- ConstantReader annotation,
- BuildStep buildStep
override
Implementation
@override
FutureOr<GenerateComponentResult> generate(
Element2 element,
ConstantReader annotation,
BuildStep buildStep,
) {
final prefix =
annotation.peek(GenerateNameBase.$prefix)?.stringValue ??
const GenerateLib().prefix;
final varName = '$prefix${element.displayName.camelCase}';
final uri = element.library2?.uri;
if (uri == null) throw Exception('cannot parse uri of $element');
final expression = "Uri(scheme: '${uri.scheme}', path: '${uri.path}')";
return GenerateComponentResult(content: 'final $varName = $expression;');
}