config property

  1. @override
GraphqlSerializableExtended get config

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,
  );
}