isar / isar/hive

TypeAdapter doesn't read the field if it is written without syntax sugar.

Open
#368 2 comments 5 reactions 1 assignee Claimed by @simc View on GitHub
problem
Dominant language
Dart
Stars
4.4k
Forks
449
PR merge metrics
No merged PRs in 30d

Description

```dart
@HiveType(typeId: 0)
class E {
@HiveField(0)
final String _value;

E({String value}) : _value = value;
}
```
Generated code:
```dart
class EAdapter extends TypeAdapter {
@override
final typeId = 0;

@override
E read(BinaryReader reader) {
var numOfFields = reader.readByte();
var fields = {
for (var i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
};
// issue here!
return E();
}

@override
void write(BinaryWriter writer, E obj) {
writer
..writeByte(1)
..writeByte(0)
..write(obj._value);
}

@override
int get hashCode => typeId.hashCode;

@override
bool operator ==(Object other) =>
identical(this, other) ||
other is EAdapter &&
runtimeType == other.runtimeType &&
typeId == other.typeId;
}
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.