FileOptions.fromJson constructor

FileOptions.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory FileOptions.fromJson(Map<String, dynamic> json) {
  return FileOptions(
    javaPackage: json.valueAsString<String?>(
      'java_package',
      acceptCamelCase: true,
    ),
    javaOuterClassname: json.valueAsString<String?>(
      'java_outer_classname',
      acceptCamelCase: true,
    ),
    javaMultipleFiles: json.valueAsBool<bool?>(
      'java_multiple_files',
      acceptCamelCase: true,
    ),
    javaGenerateEqualsAndHash: json.valueAsBool<bool?>(
      'java_generate_equals_and_hash',
      acceptCamelCase: true,
    ),
    javaStringCheckUtf8: json.valueAsBool<bool?>(
      'java_string_check_utf8',
      acceptCamelCase: true,
    ),
    optimizeFor: json.valueTo<FileOptionsOptimizeMode?, Object?>(
      key: 'optimize_for',
      parse: (v) => FileOptionsOptimizeMode.from(v),
    ),
    goPackage: json.valueAsString<String?>(
      'go_package',
      acceptCamelCase: true,
    ),
    ccGenericServices: json.valueAsBool<bool?>(
      'cc_generic_services',
      acceptCamelCase: true,
    ),
    javaGenericServices: json.valueAsBool<bool?>(
      'java_generic_services',
      acceptCamelCase: true,
    ),
    pyGenericServices: json.valueAsBool<bool?>(
      'py_generic_services',
      acceptCamelCase: true,
    ),
    deprecated: json.valueAsBool<bool?>('deprecated', acceptCamelCase: true),
    ccEnableArenas: json.valueAsBool<bool?>(
      'cc_enable_arenas',
      acceptCamelCase: true,
    ),
    objcClassPrefix: json.valueAsString<String?>(
      'objc_class_prefix',
      acceptCamelCase: true,
    ),
    csharpNamespace: json.valueAsString<String?>(
      'csharp_namespace',
      acceptCamelCase: true,
    ),
    swiftPrefix: json.valueAsString<String?>(
      'swift_prefix',
      acceptCamelCase: true,
    ),
    phpClassPrefix: json.valueAsString<String?>(
      'php_class_prefix',
      acceptCamelCase: true,
    ),
    phpNamespace: json.valueAsString<String?>(
      'php_namespace',
      acceptCamelCase: true,
    ),
    phpMetadataNamespace: json.valueAsString<String?>(
      'php_metadata_namespace',
      acceptCamelCase: true,
    ),
    rubyPackage: json.valueAsString<String?>(
      'ruby_package',
      acceptCamelCase: true,
    ),
    features: json.valueTo<FeatureSet?, Map<String, dynamic>>(
      key: 'features',
      parse: (v) => FeatureSet.fromJson(v),
      acceptCamelCase: true,
    ),
    uninterpretedOption:
        (json.valueEnsureAsList<dynamic>(
              'uninterpreted_option',
              acceptCamelCase: true,
            ))
            .map(
              (e) => JsonParser.valueTo<
                UninterpretedOption,
                Map<String, dynamic>
              >(value: e, parse: (v) => UninterpretedOption.fromJson(v)),
            )
            .toList(),
  );
}