Skip to content

Commit 1d06cdc

Browse files
committed
Refactor for readability
1 parent 04e7e9c commit 1d06cdc

1 file changed

Lines changed: 20 additions & 12 deletions

File tree

src/NamedGraphDataset.ts

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,33 +8,27 @@ export class NamedGraphDataset extends DatasetWrapper {
88
}
99

1010
override get size(): number {
11-
return super.match(undefined, undefined, undefined, this.graph).size
11+
return this.subGraph.size
1212
}
1313

1414
override* [Symbol.iterator](): Iterator<Quad> {
15-
for (const quad of super.match(undefined, undefined, undefined, this.graph)) {
16-
yield this.factory.quad(quad.subject, quad.predicate, quad.object)
15+
for (const quad of this.subGraph) {
16+
yield this.asDefault(quad)
1717
}
1818
}
1919

2020
override add(quad: Quad): this {
21-
ensureDefaultGraph(quad)
22-
23-
super.add(this.factory.quad(quad.subject, quad.predicate, quad.object, this.graph))
21+
super.add(this.asNamed(quad))
2422
return this
2523
}
2624

2725
override delete(quad: Quad): this {
28-
ensureDefaultGraph(quad)
29-
30-
super.delete(this.factory.quad(quad.subject, quad.predicate, quad.object, this.graph))
26+
super.delete(this.asNamed(quad))
3127
return this
3228
}
3329

3430
override has(quad: Quad): boolean {
35-
ensureDefaultGraph(quad)
36-
37-
return super.has(this.factory.quad(quad.subject, quad.predicate, quad.object, this.graph))
31+
return super.has(this.asNamed(quad))
3832
}
3933

4034
override match(subject?: Term, predicate?: Term, object?: Term, graph?: Term): DatasetCore {
@@ -44,4 +38,18 @@ export class NamedGraphDataset extends DatasetWrapper {
4438

4539
return new NamedGraphDataset(this.graph, super.match(subject, predicate, object, this.graph), this.factory)
4640
}
41+
42+
private get subGraph(): DatasetCore {
43+
return super.match(undefined, undefined, undefined, this.graph);
44+
}
45+
46+
private asNamed(quad: Quad): Quad {
47+
ensureDefaultGraph(quad)
48+
49+
return this.factory.quad(quad.subject, quad.predicate, quad.object, this.graph)
50+
}
51+
52+
private asDefault(quad: Quad): Quad {
53+
return this.factory.quad(quad.subject, quad.predicate, quad.object);
54+
}
4755
}

0 commit comments

Comments
 (0)