Я пытаюсь «скопировать / вставить» аргумент из аннотации Dart в мой код в сценарии с кодовым кодом. Цель состоит в том, чтобы предоставить нулевое значение по умолчанию для получателя и сгенерировать его.
@MyAnnotation("")
String _myString;
// Generated
String get myString => _myString ?? "";
@MyAnnotation(1)
int _myInt;
// Generated
int get myInt => _myInt ?? 1;
@MyAnnotation({"foo": "bar"})
Map<String, String> _myMap;
// Generated
Map<String, String> get myMap => _myMap ?? {"foo": "bar"};
Я пробовал следующее, и все они терпят неудачу
final nullValue = annotation.read("firstArgument");
final nullValue = annotation.read("firstArgument").literalValue;
final nullValue = annotation.read("firstArgument").stringValue;
final nullValue = annotation.read("firstArgument").revive().toString();
Есть ли способ генерировать кодовое представление ConstantReader, чтобы мы могли использовать эту константу в нашем сгенерированном коде?