![JAR search and dependency download from the Maven repository](/logo.png)
dart.libraries.dio.serialization.built_value.class.mustache Maven / Gradle / Ivy
import 'package:built_value/built_value.dart';
import 'package:built_value/serializer.dart';
part '{{classFilename}}.g.dart';
{{!
Classes with polymorphism or composition may generate unused imports,
these need to be ignored for said classes so that there are no lint errors.
}}
{{#parentModel}}
// ignore_for_file: unused_import
{{/parentModel}}
/// {{{description}}}{{^description}}{{classname}}{{/description}}
{{#hasVars}}
///
/// Properties:
{{#allVars}}
/// * [{{{name}}}] {{#description}}- {{{.}}}{{/description}}
{{/allVars}}
{{/hasVars}}
abstract class {{classname}} implements Built<{{classname}}, {{classname}}Builder> {
{{#vars}}
{{#description}}
/// {{{.}}}
{{/description}}
@BuiltValueField(wireName: r'{{baseName}}')
{{>serialization/built_value/variable_type}}{{^isNullable}}{{^required}}?{{/required}}{{/isNullable}} get {{name}};
{{#allowableValues}}
// {{#min}}range from {{{min}}} to {{{max}}}{{/min}}{{^min}}enum {{name}}Enum { {{#values}} {{{.}}}, {{/values}} };{{/min}}
{{/allowableValues}}
{{/vars}}
{{classname}}._();
@BuiltValueHook(initializeBuilder: true)
static void _defaults({{{classname}}}Builder b) => b{{#vars}}{{#defaultValue}}
..{{{name}}} = {{#isEnum}}{{^isContainer}}const {{{enumName}}}._({{/isContainer}}{{/isEnum}}{{{defaultValue}}}{{#isEnum}}{{^isContainer}}){{/isContainer}}{{/isEnum}}{{/defaultValue}}{{/vars}};
factory {{classname}}([void updates({{classname}}Builder b)]) = _${{classname}};
@BuiltValueSerializer(custom: true)
static Serializer<{{classname}}> get serializer => _${{classname}}Serializer();
}
{{!
Generate a custom serializer in order to support combinations of required and nullable.
By default built_value does not serialize null fields.
}}
class _${{classname}}Serializer implements StructuredSerializer<{{classname}}> {
@override
final Iterable types = const [{{classname}}, _${{classname}}];
@override
final String wireName = r'{{classname}}';
@override
Iterable
© 2015 - 2025 Weber Informatics LLC | Privacy Policy