config property
Deserialize a Config
from an annotation, such as RestSerializable
.
Implementation
@override
GraphqlSerializableExtended get config {
if (reader.peek(configKey) == null) {
return const GraphqlSerializableExtended();
}
final fieldRenameIndex =
withinConfigKey('fieldRename')?.objectValue.getField('index')?.toIntValue();
final fieldRename = fieldRenameIndex != null ? FieldRename.values[fieldRenameIndex] : null;
final function = withinConfigKey('queryOperationTransformer')?.objectValue.toFunctionValue();
var functionName = function?.enclosingElement3.name;
if (function is ConstructorElement) {
functionName = '$functionName.new';
}
return GraphqlSerializableExtended(
fieldRename: fieldRename ?? GraphqlSerializable.defaults.fieldRename,
queryOperationTransformerName: functionName,
);
}