Skip to content

final fields are not written during serialization #891

@MatrixDev

Description

@MatrixDev

Source code

@JsonSerializable
class MyClass {
  @JsonKey(name: 'value1')
  var value1 = '';

  @JsonKey(name: 'value2')
  final value2 = 'must always be this';
}

Generated code:

MyClass _$MyClassFromJson(Map<String, dynamic> json) {
  return MyClass()..value1 = json['value1'] as String;
}

Map<String, dynamic> _$MyClassToJson(MyClass instance) => <String, dynamic>{
      'value1': instance.value1,
    };

Actual result

vars are written, finals are not

Expected result

all fields must be written - vars and finals

Versions

Flutter 2.0.6
json_annotation: ^4.0.0
json_serializable: ^4.1.0

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions