swagger_generator_flutter/lib/templates/models/enum_model.mustache

34 lines
646 B
Plaintext

{{>common/file_header}}
import 'package:json_annotation/json_annotation.dart';
{{#docLines}}
/// {{.}}
{{/docLines}}
@JsonEnum()
enum {{className}} {
{{#values}}
@JsonValue({{value}})
{{name}}({{value}}),
{{/values}}
;
const {{className}}(this.value);
final {{valueType}} value;
static {{className}} fromValue(dynamic value) {
for (final enumValue in {{className}}.values) {
if (enumValue.value == value) {
return enumValue;
}
}
throw ArgumentError('Unknown enum value: $value');
}
factory {{className}}.fromJson(dynamic json) {
return fromValue(json);
}
dynamic toJson() => value;
}