Skip to content

Commit 461a948

Browse files
committed
Fix generator when mixing backlinks and "standard" relations in the same entity (generated code had a syntax error).
1 parent c0c1011 commit 461a948

File tree

3 files changed

+13
-11
lines changed

3 files changed

+13
-11
lines changed

generator/integration-tests/relations/lib/lib.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ class B {
1616

1717
String text;
1818
final cs = ToMany<C>();
19+
20+
@Backlink()
21+
final as = ToMany<A>();
22+
1923
B(this.text);
2024
}
2125

generator/lib/src/code_chunks.dart

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -508,17 +508,14 @@ class CodeChunks {
508508
}
509509
}
510510

511-
static String toManyRelations(ModelEntity entity) =>
512-
'{' +
513-
entity.relations
514-
.map((ModelRelation rel) =>
515-
'${relInfo(entity, rel)}: object.${rel.name}')
516-
.join(',') +
517-
entity.backlinks
518-
.map((ModelBacklink bl) =>
519-
'${backlinkRelInfo(entity, bl)}: object.${bl.name}')
520-
.join(',') +
521-
'}';
511+
static String toManyRelations(ModelEntity entity) {
512+
final definitions = <String>[];
513+
definitions.addAll(entity.relations.map(
514+
(ModelRelation rel) => '${relInfo(entity, rel)}: object.${rel.name}'));
515+
definitions.addAll(entity.backlinks.map((ModelBacklink bl) =>
516+
'${backlinkRelInfo(entity, bl)}: object.${bl.name}'));
517+
return '{${definitions.join(',')}}';
518+
}
522519

523520
static String _metaClass(int i, ModelEntity entity) {
524521
final fields = <String>[];

objectbox/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
## latest
22

33
* Add `Query.findUnique()` to find a single object matching the query.
4+
* Fix generator when mixing backlinks and "standard" relations in the same entity (generated code had a syntax error).
45

56
## 1.1.1 (2021-07-09)
67

0 commit comments

Comments
 (0)