rdfjs-wrapper 0.2.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/LICENSE.Apache-2.0.md +201 -0
  2. package/{LICENSE → LICENSE.MIT.md} +1 -1
  3. package/README.md +19 -6
  4. package/dist/TermMapping.d.ts +6 -0
  5. package/dist/TermMapping.d.ts.map +1 -0
  6. package/dist/TermMapping.js +2 -0
  7. package/dist/TermMapping.js.map +1 -0
  8. package/dist/TermMappings.d.ts +6 -0
  9. package/dist/TermMappings.d.ts.map +1 -0
  10. package/dist/TermMappings.js +12 -0
  11. package/dist/TermMappings.js.map +1 -0
  12. package/dist/ValueMapping.d.ts +5 -0
  13. package/dist/ValueMapping.d.ts.map +1 -0
  14. package/dist/ValueMapping.js +2 -0
  15. package/dist/ValueMapping.js.map +1 -0
  16. package/dist/ValueMappings.d.ts +5 -0
  17. package/dist/ValueMappings.d.ts.map +1 -0
  18. package/dist/ValueMappings.js +8 -0
  19. package/dist/ValueMappings.js.map +1 -0
  20. package/dist/Wrapper.d.ts +17 -0
  21. package/dist/Wrapper.d.ts.map +1 -0
  22. package/dist/Wrapper.js +59 -0
  23. package/dist/Wrapper.js.map +1 -0
  24. package/dist/WrappingSet.d.ts +25 -0
  25. package/dist/WrappingSet.d.ts.map +1 -0
  26. package/dist/WrappingSet.js +74 -0
  27. package/dist/WrappingSet.js.map +1 -0
  28. package/dist/mod.d.ts +7 -10
  29. package/dist/mod.d.ts.map +1 -0
  30. package/dist/mod.js +6 -40
  31. package/dist/mod.js.map +1 -1
  32. package/dist/stuff/decorators.d.ts +10 -0
  33. package/dist/stuff/decorators.d.ts.map +1 -0
  34. package/dist/stuff/decorators.js +99 -0
  35. package/dist/stuff/decorators.js.map +1 -0
  36. package/package.json +33 -42
  37. package/dist/algorithm/getter.d.ts +0 -3
  38. package/dist/algorithm/getter.js +0 -49
  39. package/dist/algorithm/getter.js.map +0 -1
  40. package/dist/algorithm/set_literal.d.ts +0 -2
  41. package/dist/algorithm/set_literal.js +0 -12
  42. package/dist/algorithm/set_literal.js.map +0 -1
  43. package/dist/algorithm/set_node.d.ts +0 -4
  44. package/dist/algorithm/set_node.js +0 -12
  45. package/dist/algorithm/set_node.js.map +0 -1
  46. package/dist/algorithm/wrap.d.ts +0 -3
  47. package/dist/algorithm/wrap.js +0 -31
  48. package/dist/algorithm/wrap.js.map +0 -1
  49. package/dist/class/literal_wrapper.d.ts +0 -6
  50. package/dist/class/literal_wrapper.js +0 -13
  51. package/dist/class/literal_wrapper.js.map +0 -1
  52. package/dist/class/node_wrapper.d.ts +0 -6
  53. package/dist/class/node_wrapper.js +0 -13
  54. package/dist/class/node_wrapper.js.map +0 -1
  55. package/dist/class/wrapper.d.ts +0 -9
  56. package/dist/class/wrapper.js +0 -18
  57. package/dist/class/wrapper.js.map +0 -1
  58. package/dist/class/wrapping_set.d.ts +0 -19
  59. package/dist/class/wrapping_set.js +0 -76
  60. package/dist/class/wrapping_set.js.map +0 -1
  61. package/dist/constant/term_type.d.ts +0 -1
  62. package/dist/constant/term_type.js +0 -12
  63. package/dist/constant/term_type.js.map +0 -1
  64. package/dist/error/cardinality_error.d.ts +0 -3
  65. package/dist/error/cardinality_error.js +0 -10
  66. package/dist/error/cardinality_error.js.map +0 -1
  67. package/dist/error/missing_value_error.d.ts +0 -3
  68. package/dist/error/missing_value_error.js +0 -10
  69. package/dist/error/missing_value_error.js.map +0 -1
  70. package/dist/error/term_type_error.d.ts +0 -3
  71. package/dist/error/term_type_error.js +0 -10
  72. package/dist/error/term_type_error.js.map +0 -1
  73. package/dist/error/wrapper_type_error.d.ts +0 -3
  74. package/dist/error/wrapper_type_error.js +0 -10
  75. package/dist/error/wrapper_type_error.js.map +0 -1
  76. package/dist/factory/string_factory.d.ts +0 -2
  77. package/dist/factory/string_factory.js +0 -12
  78. package/dist/factory/string_factory.js.map +0 -1
  79. package/dist/tsconfig.tsbuildinfo +0 -1
  80. package/dist/type/i_literal_wrapper_constructor.d.ts +0 -4
  81. package/dist/type/i_literal_wrapper_constructor.js +0 -3
  82. package/dist/type/i_literal_wrapper_constructor.js.map +0 -1
  83. package/dist/type/i_node_wrapper_constructor.d.ts +0 -4
  84. package/dist/type/i_node_wrapper_constructor.js +0 -3
  85. package/dist/type/i_node_wrapper_constructor.js.map +0 -1
  86. package/dist/type/i_term_type.d.ts +0 -2
  87. package/dist/type/i_term_type.js +0 -3
  88. package/dist/type/i_term_type.js.map +0 -1
  89. package/dist/type/i_wrapper_constructor.d.ts +0 -3
  90. package/dist/type/i_wrapper_constructor.js +0 -3
  91. package/dist/type/i_wrapper_constructor.js.map +0 -1
  92. package/dist/types.d.ts +0 -4
  93. package/dist/types.js +0 -3
  94. package/dist/types.js.map +0 -1
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ // TODO: Remove or implement
3
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
4
+ var useValue = arguments.length > 2;
5
+ for (var i = 0; i < initializers.length; i++) {
6
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
7
+ }
8
+ return useValue ? value : void 0;
9
+ };
10
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
11
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
12
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
13
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
14
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
15
+ var _, done = false;
16
+ for (var i = decorators.length - 1; i >= 0; i--) {
17
+ var context = {};
18
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
19
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
20
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
21
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
22
+ if (kind === "accessor") {
23
+ if (result === void 0) continue;
24
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
25
+ if (_ = accept(result.get)) descriptor.get = _;
26
+ if (_ = accept(result.set)) descriptor.set = _;
27
+ if (_ = accept(result.init)) initializers.unshift(_);
28
+ }
29
+ else if (_ = accept(result)) {
30
+ if (kind === "field") initializers.unshift(_);
31
+ else descriptor[key] = _;
32
+ }
33
+ }
34
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
35
+ done = true;
36
+ };
37
+ let x = (() => {
38
+ let _classDecorators = [node];
39
+ let _classDescriptor;
40
+ let _classExtraInitializers = [];
41
+ let _classThis;
42
+ let _instanceExtraInitializers = [];
43
+ let _get_p1_decorators;
44
+ var x = class {
45
+ static { _classThis = this; }
46
+ static {
47
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
48
+ _get_p1_decorators = [property("sss")];
49
+ __esDecorate(this, null, _get_p1_decorators, { kind: "getter", name: "p1", static: false, private: false, access: { has: obj => "p1" in obj, get: obj => obj.p1 }, metadata: _metadata }, null, _instanceExtraInitializers);
50
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
51
+ x = _classThis = _classDescriptor.value;
52
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
53
+ __runInitializers(_classThis, _classExtraInitializers);
54
+ }
55
+ p = (__runInitializers(this, _instanceExtraInitializers), "v");
56
+ get p1() { throw new Error; }
57
+ set p1(value) { }
58
+ };
59
+ return x = _classThis;
60
+ })();
61
+ function property(predicate) {
62
+ console.log("property annotation", predicate);
63
+ return function (target, context) {
64
+ console.log("property factory");
65
+ console.log(target);
66
+ console.log(context);
67
+ context.addInitializer(function () {
68
+ console.log("property initializer", this instanceof Object /*GraphWrapperNode*/);
69
+ });
70
+ return function () {
71
+ console.log("property replacer");
72
+ return "replaced value";
73
+ };
74
+ };
75
+ }
76
+ function node(target, context) {
77
+ console.log("node factory");
78
+ console.log(target);
79
+ console.log(context);
80
+ target.wrap = function () { };
81
+ context.addInitializer(function () {
82
+ console.log("node initializer", this);
83
+ });
84
+ return function () {
85
+ console.log("node replacer");
86
+ const a = new target;
87
+ a.prototype = 0;
88
+ a.xxx = "yyy";
89
+ return a;
90
+ };
91
+ }
92
+ console.log("before instantiation");
93
+ const xx = new x;
94
+ console.log("after instantiation, before invocation");
95
+ console.log(xx);
96
+ const xxp1 = xx.p1;
97
+ console.log("after invocation");
98
+ console.log(xxp1);
99
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/stuff/decorators.ts"],"names":[],"mappings":";AAAA,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGtB,CAAC;4BADN,IAAI;;;;;;;;;;kCAIA,QAAQ,CAAC,KAAK,CAAC;YAChB,6JAAI,EAAE,6DAA8B;YAJxC,6KAOC;;;YAPK,uDAAC;;QACH,CAAC,IADC,mDAAC,EACC,GAAG,EAAA;QAGP,IAAI,EAAE,KAAa,MAAM,IAAI,KAAK,CAAA,CAAC,CAAC;QAEpC,IAAI,EAAE,CAAC,KAAa,IAAI,CAAC;;;;AAG7B,SAAS,QAAQ,CAAC,SAAiB;IAC/B,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAA;IAE7C,OAAO,UACH,MAAW,EACX,OAAoC;QAEpC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QAC/B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACnB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAEpB,OAAO,CAAC,cAAc,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,YAAY,MAAM,CAAC,oBAAoB,CAAC,CAAA;QACpF,CAAC,CAAC,CAAA;QAEF,OAAO;YACH,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;YAChC,OAAO,gBAAgB,CAAA;QAC3B,CAAC,CAAA;IACL,CAAC,CAAA;AACL,CAAC;AACD,SAAS,IAAI,CAAC,MAAW,EAAE,OAA8B;IACrD,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACnB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACpB,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,CAAA;IAE7B,OAAO,CAAC,cAAc,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,OAAO;QACH,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAC5B,MAAM,CAAC,GAAG,IAAI,MAAM,CAAA;QACpB,CAAC,CAAC,SAAS,GAAC,CAAC,CAAA;QACb,CAAC,CAAC,GAAG,GAAG,KAAK,CAAA;QACb,OAAO,CAAC,CAAA;IACZ,CAAC,CAAA;AACL,CAAC;AAED,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AACpC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA;AAChB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;AACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAChB,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAA;AAClB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,54 +1,45 @@
1
1
  {
2
2
  "name": "rdfjs-wrapper",
3
- "version": "0.2.0",
4
- "description": "RDF/JS compliant graph wrapping library",
5
- "license": "MIT",
6
- "repository": "https://github.com/matthieubosquet/rdfjs-wrapper",
7
- "bugs": "https://github.com/matthieubosquet/rdfjs-wrapper/issues",
8
- "homepage": "https://github.com/matthieubosquet/rdfjs-wrapper#readme",
3
+ "version": "0.8.0",
4
+ "description": "RDF/JS object mapping library",
5
+ "main": "dist/mod.js",
6
+ "type": "module",
7
+ "types": "./dist/mod.d.ts",
8
+ "exports": {
9
+ ".": "./dist/mod.js"
10
+ },
11
+ "files": [
12
+ "dist"
13
+ ],
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/theodi/rdfjs-wrapper.git"
17
+ },
18
+ "scripts": {
19
+ "start": "npm test",
20
+ "test": "tsc && tsc -p test && node --test \"**/*.test.js\""
21
+ },
9
22
  "keywords": [
10
- "rdfjs",
11
- "wrapper",
12
23
  "rdf",
13
- "mapping"
24
+ "object-oriented",
25
+ "rdfjs",
26
+ "mapping",
27
+ "wrapper"
14
28
  ],
15
29
  "contributors": [
16
30
  "Matthieu Bosquet (https://github.com/matthieubosquet)",
17
31
  "Samu Lang (https://github.com/langsamu)"
18
32
  ],
19
- "type": "module",
20
- "main": "dist/mod.js",
21
- "types": "dist/types.d.ts",
22
- "files": [
23
- "dist"
24
- ],
25
- "scripts": {
26
- "audit": "npm audit --omit=dev --audit-level=moderate",
27
- "build": "tsc",
28
- "lint": "npm run lint:eslint -- --cache --fix && npm run lint:prettier -- --write",
29
- "lint:ci": "npm run lint:eslint && npm run lint:prettier -- --check",
30
- "lint:eslint": "eslint --ignore-path .gitignore .",
31
- "lint:prettier": "prettier '**/*.{css,html,json,md,mdx,yml}' --ignore-path .gitignore",
32
- "prepublishOnly": "npm run audit && npm ci --ignore-scripts && npm run build && npm run test",
33
- "start": "npm run build -- --watch",
34
- "test": "npm run test:unit",
35
- "test:e2e": "",
36
- "test:unit": "jest --config .jestrc.js --no-coverage"
37
- },
33
+ "license": "MIT",
34
+ "dependencies": {},
38
35
  "devDependencies": {
39
- "@rdfjs/types": "^1.1.0",
40
- "@solid/eslint-config-base": "^0.5.0",
41
- "@tsconfig/node18": "^1.0.1",
42
- "@types/jest": "^29.4.0",
43
- "@types/n3": "^1.10.4",
44
- "@types/node": "^18.14.6",
45
- "@typescript-eslint/eslint-plugin": "^5.54.0",
46
- "@typescript-eslint/parser": "^5.54.0",
47
- "eslint": "^8.35.0",
48
- "jest": "^29.5.0",
49
- "n3": "^1.16.3",
50
- "prettier": "^2.8.4",
51
- "ts-jest": "^29.0.5",
52
- "typescript": "^4.9.5"
36
+ "@rdfjs/types": "^2",
37
+ "@types/node": "^24",
38
+ "typescript": "^5",
39
+ "@types/n3": "^1",
40
+ "n3": "^1"
41
+ },
42
+ "engines": {
43
+ "node": ">=24.0.0"
53
44
  }
54
45
  }
@@ -1,3 +0,0 @@
1
- import type { BlankNode, DataFactory, DatasetCore, NamedNode, Quad_Predicate } from "@rdfjs/types";
2
- import type { ILiteralWrapperConstructor, INodeWrapperConstructor } from "../types";
3
- export declare function getter<T>(term: BlankNode | NamedNode, dataset: DatasetCore, factory: DataFactory, property: Quad_Predicate, wrapper: INodeWrapperConstructor<T> | ILiteralWrapperConstructor<T>): T;
@@ -1,49 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getter = void 0;
4
- const node_wrapper_1 = require("../class/node_wrapper");
5
- const wrapper_1 = require("../class/wrapper");
6
- const cardinality_error_1 = require("../error/cardinality_error");
7
- const missing_value_error_1 = require("../error/missing_value_error");
8
- const term_type_error_1 = require("../error/term_type_error");
9
- const wrapper_type_error_1 = require("../error/wrapper_type_error");
10
- function isINodeWrapperConstructor(x) {
11
- if (!(x.prototype instanceof node_wrapper_1.NodeWrapper)) {
12
- throw new Error("Wrong constructor tyep");
13
- }
14
- }
15
- function isILiteralWrapperConstructor(x) {
16
- if (!(x.name === "LiteralWrapper")) {
17
- throw new Error("Wrong constructor tyep");
18
- }
19
- }
20
- function getter(term, dataset, factory, property, wrapper) {
21
- const triples = dataset.match(term, property);
22
- const iter = triples[Symbol.iterator]();
23
- const triple = iter.next();
24
- if (triple.done) {
25
- throw new missing_value_error_1.MissingValueError(term.value, property.value);
26
- }
27
- if (!iter.next().done) {
28
- throw new cardinality_error_1.CardinalityError(term.value, property.value, ">1", "1");
29
- }
30
- const { object } = triple.value;
31
- if (object.termType !== "BlankNode" &&
32
- object.termType !== "NamedNode" &&
33
- object.termType !== "Literal") {
34
- throw new term_type_error_1.TermTypeError(object.termType, "BlankNode, NamedNode or Literal");
35
- }
36
- if (!(wrapper.prototype instanceof wrapper_1.Wrapper)) {
37
- throw new wrapper_type_error_1.WrapperTypeError(wrapper.toString());
38
- }
39
- if (object.termType === "BlankNode" || object.termType === "NamedNode") {
40
- isINodeWrapperConstructor(wrapper);
41
- // eslint-disable-next-line new-cap
42
- return new wrapper(object, dataset, factory);
43
- }
44
- isILiteralWrapperConstructor(wrapper);
45
- // eslint-disable-next-line new-cap
46
- return new wrapper(object, dataset, factory);
47
- }
48
- exports.getter = getter;
49
- //# sourceMappingURL=getter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getter.js","sourceRoot":"","sources":["../../src/algorithm/getter.ts"],"names":[],"mappings":";;;AAOA,wDAAoD;AACpD,8CAA2C;AAC3C,kEAA8D;AAC9D,sEAAiE;AACjE,8DAAyD;AACzD,oEAA+D;AAM/D,SAAS,yBAAyB,CAAI,CAErC;IACC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,0BAAW,CAAC,EAAE;QACzC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;AACH,CAAC;AAED,SAAS,4BAA4B,CAAI,CAGxC;IACC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;AACH,CAAC;AAED,SAAgB,MAAM,CACpB,IAA2B,EAC3B,OAAoB,EACpB,OAAoB,EACpB,QAAwB,EACxB,OAAmE;IAEnE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAE3B,IAAI,MAAM,CAAC,IAAI,EAAE;QACf,MAAM,IAAI,uCAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;KACzD;IAED,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE;QACrB,MAAM,IAAI,oCAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;KACnE;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAEhC,IACE,MAAM,CAAC,QAAQ,KAAK,WAAW;QAC/B,MAAM,CAAC,QAAQ,KAAK,WAAW;QAC/B,MAAM,CAAC,QAAQ,KAAK,SAAS,EAC7B;QACA,MAAM,IAAI,+BAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,iCAAiC,CAAC,CAAC;KAC7E;IAED,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,YAAY,iBAAO,CAAC,EAAE;QAC3C,MAAM,IAAI,qCAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KAChD;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE;QACtE,yBAAyB,CAAC,OAAO,CAAC,CAAC;QACnC,mCAAmC;QACnC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KAC9C;IAED,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACtC,mCAAmC;IACnC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AA1CD,wBA0CC","sourcesContent":["import type {\n BlankNode,\n DataFactory,\n DatasetCore,\n NamedNode,\n Quad_Predicate,\n} from \"@rdfjs/types\";\nimport { NodeWrapper } from \"../class/node_wrapper\";\nimport { Wrapper } from \"../class/wrapper\";\nimport { CardinalityError } from \"../error/cardinality_error\";\nimport { MissingValueError } from \"../error/missing_value_error\";\nimport { TermTypeError } from \"../error/term_type_error\";\nimport { WrapperTypeError } from \"../error/wrapper_type_error\";\nimport type {\n ILiteralWrapperConstructor,\n INodeWrapperConstructor,\n} from \"../types\";\n\nfunction isINodeWrapperConstructor<T>(x: {\n prototype: unknown;\n}): asserts x is INodeWrapperConstructor<T> {\n if (!(x.prototype instanceof NodeWrapper)) {\n throw new Error(\"Wrong constructor tyep\");\n }\n}\n\nfunction isILiteralWrapperConstructor<T>(x: {\n name: string;\n prototype: unknown;\n}): asserts x is ILiteralWrapperConstructor<T> {\n if (!(x.name === \"LiteralWrapper\")) {\n throw new Error(\"Wrong constructor tyep\");\n }\n}\n\nexport function getter<T>(\n term: BlankNode | NamedNode,\n dataset: DatasetCore,\n factory: DataFactory,\n property: Quad_Predicate,\n wrapper: INodeWrapperConstructor<T> | ILiteralWrapperConstructor<T>\n): T {\n const triples = dataset.match(term, property);\n const iter = triples[Symbol.iterator]();\n const triple = iter.next();\n\n if (triple.done) {\n throw new MissingValueError(term.value, property.value);\n }\n\n if (!iter.next().done) {\n throw new CardinalityError(term.value, property.value, \">1\", \"1\");\n }\n\n const { object } = triple.value;\n\n if (\n object.termType !== \"BlankNode\" &&\n object.termType !== \"NamedNode\" &&\n object.termType !== \"Literal\"\n ) {\n throw new TermTypeError(object.termType, \"BlankNode, NamedNode or Literal\");\n }\n\n if (!(wrapper.prototype instanceof Wrapper)) {\n throw new WrapperTypeError(wrapper.toString());\n }\n\n if (object.termType === \"BlankNode\" || object.termType === \"NamedNode\") {\n isINodeWrapperConstructor(wrapper);\n // eslint-disable-next-line new-cap\n return new wrapper(object, dataset, factory);\n }\n\n isILiteralWrapperConstructor(wrapper);\n // eslint-disable-next-line new-cap\n return new wrapper(object, dataset, factory);\n}\n"]}
@@ -1,2 +0,0 @@
1
- import type { BlankNode, DataFactory, DatasetCore, NamedNode, Quad_Predicate } from "@rdfjs/types";
2
- export declare function setLiteral(subject: BlankNode | NamedNode, dataset: DatasetCore, factory: DataFactory, property: Quad_Predicate, value: string): void;
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setLiteral = void 0;
4
- function setLiteral(subject, dataset, factory, property, value) {
5
- // THIS IS FOR SINGLE PROPERTY
6
- for (const q of dataset.match(subject, property)) {
7
- dataset.delete(q);
8
- }
9
- dataset.add(factory.quad(subject, property, factory.literal(value)));
10
- }
11
- exports.setLiteral = setLiteral;
12
- //# sourceMappingURL=set_literal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"set_literal.js","sourceRoot":"","sources":["../../src/algorithm/set_literal.ts"],"names":[],"mappings":";;;AAQA,SAAgB,UAAU,CACxB,OAA8B,EAC9B,OAAoB,EACpB,OAAoB,EACpB,QAAwB,EACxB,KAAa;IAEb,8BAA8B;IAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;QAChD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACnB;IAED,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAbD,gCAaC","sourcesContent":["import type {\n BlankNode,\n DataFactory,\n DatasetCore,\n NamedNode,\n Quad_Predicate,\n} from \"@rdfjs/types\";\n\nexport function setLiteral(\n subject: BlankNode | NamedNode,\n dataset: DatasetCore,\n factory: DataFactory,\n property: Quad_Predicate,\n value: string\n): void {\n // THIS IS FOR SINGLE PROPERTY\n for (const q of dataset.match(subject, property)) {\n dataset.delete(q);\n }\n\n dataset.add(factory.quad(subject, property, factory.literal(value)));\n}\n"]}
@@ -1,4 +0,0 @@
1
- import type { BlankNode, DataFactory, DatasetCore, Literal, NamedNode, Quad_Predicate } from "@rdfjs/types";
2
- export declare function setNode(subject: BlankNode | NamedNode, dataset: DatasetCore, factory: DataFactory, property: Quad_Predicate, value: {
3
- term: BlankNode | NamedNode | Literal;
4
- }): void;
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setNode = void 0;
4
- function setNode(subject, dataset, factory, property, value) {
5
- // THIS IS FOR SINGLE NODE
6
- for (const q of dataset.match(subject, property)) {
7
- dataset.delete(q);
8
- }
9
- dataset.add(factory.quad(subject, property, value.term));
10
- }
11
- exports.setNode = setNode;
12
- //# sourceMappingURL=set_node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"set_node.js","sourceRoot":"","sources":["../../src/algorithm/set_node.ts"],"names":[],"mappings":";;;AASA,SAAgB,OAAO,CACrB,OAA8B,EAC9B,OAAoB,EACpB,OAAoB,EACpB,QAAwB,EACxB,KAAgD;IAEhD,0BAA0B;IAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;QAChD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACnB;IAED,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC;AAbD,0BAaC","sourcesContent":["import type {\n BlankNode,\n DataFactory,\n DatasetCore,\n Literal,\n NamedNode,\n Quad_Predicate,\n} from \"@rdfjs/types\";\n\nexport function setNode(\n subject: BlankNode | NamedNode,\n dataset: DatasetCore,\n factory: DataFactory,\n property: Quad_Predicate,\n value: { term: BlankNode | NamedNode | Literal }\n): void {\n // THIS IS FOR SINGLE NODE\n for (const q of dataset.match(subject, property)) {\n dataset.delete(q);\n }\n\n dataset.add(factory.quad(subject, property, value.term));\n}\n"]}
@@ -1,3 +0,0 @@
1
- import type { BlankNode, DataFactory, DatasetCore, Literal, NamedNode } from "@rdfjs/types";
2
- import type { ILiteralWrapperConstructor, INodeWrapperConstructor } from "../types";
3
- export declare function wrap<T>(term: BlankNode | NamedNode | Literal, dataset: DatasetCore, factory: DataFactory, wrapper: INodeWrapperConstructor<T> | ILiteralWrapperConstructor<T>): T;
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wrap = void 0;
4
- const node_wrapper_1 = require("../class/node_wrapper");
5
- const wrapper_1 = require("../class/wrapper");
6
- const wrapper_type_error_1 = require("../error/wrapper_type_error");
7
- function isINodeWrapperConstructor(x) {
8
- if (!(x.prototype instanceof node_wrapper_1.NodeWrapper)) {
9
- throw new Error("Wrong constructor tyep");
10
- }
11
- }
12
- function isILiteralWrapperConstructor(x) {
13
- if (!(x.name === "LiteralWrapper")) {
14
- throw new Error("Wrong constructor tyep");
15
- }
16
- }
17
- function wrap(term, dataset, factory, wrapper) {
18
- if (!(wrapper.prototype instanceof wrapper_1.Wrapper)) {
19
- throw new wrapper_type_error_1.WrapperTypeError(wrapper.toString());
20
- }
21
- if (term.termType === "BlankNode" || term.termType === "NamedNode") {
22
- isINodeWrapperConstructor(wrapper);
23
- // eslint-disable-next-line new-cap
24
- return new wrapper(term, dataset, factory);
25
- }
26
- isILiteralWrapperConstructor(wrapper);
27
- // eslint-disable-next-line new-cap
28
- return new wrapper(term, dataset, factory);
29
- }
30
- exports.wrap = wrap;
31
- //# sourceMappingURL=wrap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrap.js","sourceRoot":"","sources":["../../src/algorithm/wrap.ts"],"names":[],"mappings":";;;AAOA,wDAAoD;AACpD,8CAA2C;AAC3C,oEAA+D;AAM/D,SAAS,yBAAyB,CAAI,CAErC;IACC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,YAAY,0BAAW,CAAC,EAAE;QACzC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;AACH,CAAC;AAED,SAAS,4BAA4B,CAAI,CAGxC;IACC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;AACH,CAAC;AAED,SAAgB,IAAI,CAClB,IAAqC,EACrC,OAAoB,EACpB,OAAoB,EACpB,OAAmE;IAEnE,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,YAAY,iBAAO,CAAC,EAAE;QAC3C,MAAM,IAAI,qCAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;KAChD;IAED,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE;QAClE,yBAAyB,CAAC,OAAO,CAAC,CAAC;QACnC,mCAAmC;QACnC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KAC5C;IAED,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACtC,mCAAmC;IACnC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC;AAnBD,oBAmBC","sourcesContent":["import type {\n BlankNode,\n DataFactory,\n DatasetCore,\n Literal,\n NamedNode,\n} from \"@rdfjs/types\";\nimport { NodeWrapper } from \"../class/node_wrapper\";\nimport { Wrapper } from \"../class/wrapper\";\nimport { WrapperTypeError } from \"../error/wrapper_type_error\";\nimport type {\n ILiteralWrapperConstructor,\n INodeWrapperConstructor,\n} from \"../types\";\n\nfunction isINodeWrapperConstructor<T>(x: {\n prototype: unknown;\n}): asserts x is INodeWrapperConstructor<T> {\n if (!(x.prototype instanceof NodeWrapper)) {\n throw new Error(\"Wrong constructor tyep\");\n }\n}\n\nfunction isILiteralWrapperConstructor<T>(x: {\n name: string;\n prototype: unknown;\n}): asserts x is ILiteralWrapperConstructor<T> {\n if (!(x.name === \"LiteralWrapper\")) {\n throw new Error(\"Wrong constructor tyep\");\n }\n}\n\nexport function wrap<T>(\n term: BlankNode | NamedNode | Literal,\n dataset: DatasetCore,\n factory: DataFactory,\n wrapper: INodeWrapperConstructor<T> | ILiteralWrapperConstructor<T>\n): T {\n if (!(wrapper.prototype instanceof Wrapper)) {\n throw new WrapperTypeError(wrapper.toString());\n }\n\n if (term.termType === \"BlankNode\" || term.termType === \"NamedNode\") {\n isINodeWrapperConstructor(wrapper);\n // eslint-disable-next-line new-cap\n return new wrapper(term, dataset, factory);\n }\n\n isILiteralWrapperConstructor(wrapper);\n // eslint-disable-next-line new-cap\n return new wrapper(term, dataset, factory);\n}\n"]}
@@ -1,6 +0,0 @@
1
- import type { DataFactory, DatasetCore, Literal } from "@rdfjs/types";
2
- import { Wrapper } from "./wrapper";
3
- export declare class LiteralWrapper extends Wrapper<Literal> {
4
- term: Literal;
5
- constructor(term: Literal, dataset: DatasetCore, factory: DataFactory);
6
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LiteralWrapper = void 0;
4
- const wrapper_1 = require("./wrapper");
5
- class LiteralWrapper extends wrapper_1.Wrapper {
6
- term;
7
- constructor(term, dataset, factory) {
8
- super(term, dataset, factory);
9
- this.term = term;
10
- }
11
- }
12
- exports.LiteralWrapper = LiteralWrapper;
13
- //# sourceMappingURL=literal_wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"literal_wrapper.js","sourceRoot":"","sources":["../../src/class/literal_wrapper.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAEpC,MAAa,cAAe,SAAQ,iBAAgB;IAC3C,IAAI,CAAU;IAErB,YACE,IAAa,EACb,OAAoB,EACpB,OAAoB;QAEpB,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAXD,wCAWC","sourcesContent":["import type { DataFactory, DatasetCore, Literal } from \"@rdfjs/types\";\nimport { Wrapper } from \"./wrapper\";\n\nexport class LiteralWrapper extends Wrapper<Literal> {\n public term: Literal;\n\n public constructor(\n term: Literal,\n dataset: DatasetCore,\n factory: DataFactory\n ) {\n super(term, dataset, factory);\n this.term = term;\n }\n}\n"]}
@@ -1,6 +0,0 @@
1
- import type { BlankNode, DataFactory, DatasetCore, NamedNode } from "@rdfjs/types";
2
- import { Wrapper } from "./wrapper";
3
- export declare abstract class NodeWrapper extends Wrapper<BlankNode | NamedNode> {
4
- term: BlankNode | NamedNode;
5
- constructor(term: BlankNode | NamedNode, dataset: DatasetCore, factory: DataFactory);
6
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NodeWrapper = void 0;
4
- const wrapper_1 = require("./wrapper");
5
- class NodeWrapper extends wrapper_1.Wrapper {
6
- term;
7
- constructor(term, dataset, factory) {
8
- super(term, dataset, factory);
9
- this.term = term;
10
- }
11
- }
12
- exports.NodeWrapper = NodeWrapper;
13
- //# sourceMappingURL=node_wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node_wrapper.js","sourceRoot":"","sources":["../../src/class/node_wrapper.ts"],"names":[],"mappings":";;;AAMA,uCAAoC;AAEpC,MAAsB,WAAY,SAAQ,iBAA8B;IAC/D,IAAI,CAAwB;IAEnC,YACE,IAA2B,EAC3B,OAAoB,EACpB,OAAoB;QAEpB,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAXD,kCAWC","sourcesContent":["import type {\n BlankNode,\n DataFactory,\n DatasetCore,\n NamedNode,\n} from \"@rdfjs/types\";\nimport { Wrapper } from \"./wrapper\";\n\nexport abstract class NodeWrapper extends Wrapper<BlankNode | NamedNode> {\n public term: BlankNode | NamedNode;\n\n public constructor(\n term: BlankNode | NamedNode,\n dataset: DatasetCore,\n factory: DataFactory\n ) {\n super(term, dataset, factory);\n this.term = term;\n }\n}\n"]}
@@ -1,9 +0,0 @@
1
- import type { BlankNode, DataFactory, DatasetCore, Literal, NamedNode } from "@rdfjs/types";
2
- export type Resource = Literal | BlankNode | NamedNode;
3
- export declare abstract class Wrapper<T extends Resource> {
4
- term: T;
5
- protected dataset: DatasetCore;
6
- protected factory: DataFactory;
7
- constructor(term: T, dataset: DatasetCore, factory: DataFactory);
8
- get toString(): string;
9
- }
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Wrapper = void 0;
4
- class Wrapper {
5
- term;
6
- dataset;
7
- factory;
8
- constructor(term, dataset, factory) {
9
- this.term = term;
10
- this.dataset = dataset;
11
- this.factory = factory;
12
- }
13
- get toString() {
14
- return this.term.value;
15
- }
16
- }
17
- exports.Wrapper = Wrapper;
18
- //# sourceMappingURL=wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../src/class/wrapper.ts"],"names":[],"mappings":";;;AAUA,MAAsB,OAAO;IACpB,IAAI,CAAI;IAEL,OAAO,CAAc;IAErB,OAAO,CAAc;IAE/B,YAAmB,IAAO,EAAE,OAAoB,EAAE,OAAoB;QACpE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,CAAC;CACF;AAhBD,0BAgBC","sourcesContent":["import type {\n BlankNode,\n DataFactory,\n DatasetCore,\n Literal,\n NamedNode,\n} from \"@rdfjs/types\";\n\nexport type Resource = Literal | BlankNode | NamedNode;\n\nexport abstract class Wrapper<T extends Resource> {\n public term: T;\n\n protected dataset: DatasetCore;\n\n protected factory: DataFactory;\n\n public constructor(term: T, dataset: DatasetCore, factory: DataFactory) {\n this.term = term;\n this.dataset = dataset;\n this.factory = factory;\n }\n\n get toString(): string {\n return this.term.value;\n }\n}\n"]}
@@ -1,19 +0,0 @@
1
- import type { DataFactory, Quad_Predicate, DatasetCore, Term, BlankNode, NamedNode } from "@rdfjs/types";
2
- import { NodeWrapper } from "./node_wrapper";
3
- export declare class WrappingSet<T> extends NodeWrapper implements Set<T> {
4
- private property;
5
- private valueFactory;
6
- constructor(term: BlankNode | NamedNode, dataset: DatasetCore, factory: DataFactory, property: Quad_Predicate, valueFactory: (term: Term, dataset?: DatasetCore) => T);
7
- add(value: T): this;
8
- clear(): void;
9
- delete(value: T): boolean;
10
- forEach(callbackfn: (item: T, index: T, set: Set<T>) => void, thisArg?: unknown): void;
11
- has(value: T): boolean;
12
- get size(): number;
13
- [Symbol.iterator](): IterableIterator<T>;
14
- entries(): IterableIterator<[T, T]>;
15
- keys(): IterableIterator<T>;
16
- values(): IterableIterator<T>;
17
- get [Symbol.toStringTag](): string;
18
- private convert;
19
- }
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WrappingSet = void 0;
4
- const node_wrapper_1 = require("./node_wrapper");
5
- class WrappingSet extends node_wrapper_1.NodeWrapper {
6
- property;
7
- valueFactory;
8
- constructor(term, dataset, factory, property,
9
- // eslint-disable-next-line no-shadow
10
- valueFactory) {
11
- super(term, dataset, factory);
12
- this.property = property;
13
- this.valueFactory = valueFactory;
14
- }
15
- add(value) {
16
- const q = this.factory.quad(this.term, this.property, this.convert(value));
17
- this.dataset.add(q);
18
- return this;
19
- }
20
- clear() {
21
- for (const q of this.dataset.match(this.term, this.property)) {
22
- this.dataset.delete(q);
23
- }
24
- }
25
- delete(value) {
26
- if (!this.has(value)) {
27
- return false;
28
- }
29
- for (const q of this.dataset.match(this.term, this.property, this.convert(value))) {
30
- this.dataset.delete(q);
31
- }
32
- return true;
33
- }
34
- forEach(callbackfn, thisArg) {
35
- for (const item of this) {
36
- callbackfn.call(thisArg, item, item, this);
37
- }
38
- }
39
- has(value) {
40
- return this.dataset.has(this.factory.quad(this.term, this.property, this.convert(value)));
41
- }
42
- get size() {
43
- return Array.from(this).length;
44
- }
45
- [Symbol.iterator]() {
46
- return this.values();
47
- }
48
- *entries() {
49
- for (const t of this) {
50
- yield [t, t];
51
- }
52
- }
53
- keys() {
54
- return this.values();
55
- }
56
- *values() {
57
- for (const q of this.dataset.match(this.term, this.property)) {
58
- yield this.valueFactory(q.object, this.dataset);
59
- }
60
- }
61
- get [Symbol.toStringTag]() {
62
- return `collection wrapper for subject ${this.term.value} predicate ${this.property.value}`;
63
- }
64
- convert(value) {
65
- switch (typeof value) {
66
- case "string":
67
- return this.factory.literal(value);
68
- case "number":
69
- return this.factory.literal(value.toString(), this.factory.namedNode("xsd:int"));
70
- default:
71
- return value.term;
72
- }
73
- }
74
- }
75
- exports.WrappingSet = WrappingSet;
76
- //# sourceMappingURL=wrapping_set.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrapping_set.js","sourceRoot":"","sources":["../../src/class/wrapping_set.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n DataFactory,\n Quad_Subject,\n Quad_Predicate,\n DatasetCore,\n Term,\n Quad_Object,\n BlankNode,\n NamedNode,\n} from \"@rdfjs/types\";\nimport { NodeWrapper } from \"./node_wrapper\";\n\nexport class WrappingSet<T> extends NodeWrapper implements Set<T> {\n private property: Quad_Predicate;\n\n private valueFactory: (term: Term, dataset?: DatasetCore) => T;\n\n constructor(\n term: BlankNode | NamedNode,\n dataset: DatasetCore,\n factory: DataFactory,\n property: Quad_Predicate,\n // eslint-disable-next-line no-shadow\n valueFactory: (term: Term, dataset?: DatasetCore) => T\n ) {\n super(term, dataset, factory);\n this.property = property;\n this.valueFactory = valueFactory;\n }\n\n public add(value: T): this {\n const q = this.factory.quad(this.term, this.property, this.convert(value));\n this.dataset.add(q);\n return this;\n }\n\n public clear(): void {\n for (const q of this.dataset.match(this.term, this.property)) {\n this.dataset.delete(q);\n }\n }\n\n public delete(value: T): boolean {\n if (!this.has(value)) {\n return false;\n }\n\n for (const q of this.dataset.match(\n this.term,\n this.property,\n this.convert(value)\n )) {\n this.dataset.delete(q);\n }\n return true;\n }\n\n public forEach(\n callbackfn: (item: T, index: T, set: Set<T>) => void,\n thisArg?: unknown\n ): void {\n for (const item of this) {\n callbackfn.call(thisArg, item, item, this);\n }\n }\n\n public has(value: T): boolean {\n return this.dataset.has(\n this.factory.quad(this.term, this.property, this.convert(value))\n );\n }\n\n public get size(): number {\n return Array.from(this).length;\n }\n\n public [Symbol.iterator](): IterableIterator<T> {\n return this.values();\n }\n\n public *entries(): IterableIterator<[T, T]> {\n for (const t of this) {\n yield [t, t];\n }\n }\n\n public keys(): IterableIterator<T> {\n return this.values();\n }\n\n public *values(): IterableIterator<T> {\n for (const q of this.dataset.match(this.term, this.property)) {\n yield this.valueFactory(q.object, this.dataset);\n }\n }\n\n public get [Symbol.toStringTag](): string {\n return `collection wrapper for subject ${this.term.value} predicate ${this.property.value}`;\n }\n\n private convert(value: T): Quad_Object {\n switch (typeof value) {\n case \"string\":\n return this.factory.literal(value);\n\n case \"number\":\n return this.factory.literal(\n value.toString(),\n this.factory.namedNode(\"xsd:int\")\n );\n\n default:\n return (value as { term: Quad_Subject }).term;\n }\n }\n}\n"]}
@@ -1 +0,0 @@
1
- export declare const TERM_TYPE: Set<string>;
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TERM_TYPE = void 0;
4
- exports.TERM_TYPE = new Set([
5
- "NamedNode",
6
- "BlankNode",
7
- "Literal",
8
- "Variable",
9
- "DefaultGraph",
10
- "BaseQuad",
11
- ]);
12
- //# sourceMappingURL=term_type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"term_type.js","sourceRoot":"","sources":["../../src/constant/term_type.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG,IAAI,GAAG,CAAC;IAC/B,WAAW;IACX,WAAW;IACX,SAAS;IACT,UAAU;IACV,cAAc;IACd,UAAU;CACX,CAAC,CAAC","sourcesContent":["export const TERM_TYPE = new Set([\n \"NamedNode\",\n \"BlankNode\",\n \"Literal\",\n \"Variable\",\n \"DefaultGraph\",\n \"BaseQuad\",\n]);\n"]}
@@ -1,3 +0,0 @@
1
- export declare class CardinalityError extends Error {
2
- constructor(subject: string, property: string, actual: string, expected: string);
3
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CardinalityError = void 0;
4
- class CardinalityError extends Error {
5
- constructor(subject, property, actual, expected) {
6
- super(`Wrong cardinality for subject ${subject}, property ${property}.\nActual: ${actual}\nExpected: ${expected}`);
7
- }
8
- }
9
- exports.CardinalityError = CardinalityError;
10
- //# sourceMappingURL=cardinality_error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cardinality_error.js","sourceRoot":"","sources":["../../src/error/cardinality_error.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAiB,SAAQ,KAAK;IACzC,YACE,OAAe,EACf,QAAgB,EAChB,MAAc,EACd,QAAgB;QAEhB,KAAK,CACH,iCAAiC,OAAO,cAAc,QAAQ,cAAc,MAAM,eAAe,QAAQ,EAAE,CAC5G,CAAC;IACJ,CAAC;CACF;AAXD,4CAWC","sourcesContent":["export class CardinalityError extends Error {\n constructor(\n subject: string,\n property: string,\n actual: string,\n expected: string\n ) {\n super(\n `Wrong cardinality for subject ${subject}, property ${property}.\\nActual: ${actual}\\nExpected: ${expected}`\n );\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- export declare class MissingValueError extends Error {
2
- constructor(subject: string, property: string);
3
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MissingValueError = void 0;
4
- class MissingValueError extends Error {
5
- constructor(subject, property) {
6
- super(`The subject ${subject} has no value for property ${property}.`);
7
- }
8
- }
9
- exports.MissingValueError = MissingValueError;
10
- //# sourceMappingURL=missing_value_error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"missing_value_error.js","sourceRoot":"","sources":["../../src/error/missing_value_error.ts"],"names":[],"mappings":";;;AAAA,MAAa,iBAAkB,SAAQ,KAAK;IAC1C,YAAY,OAAe,EAAE,QAAgB;QAC3C,KAAK,CAAC,eAAe,OAAO,8BAA8B,QAAQ,GAAG,CAAC,CAAC;IACzE,CAAC;CACF;AAJD,8CAIC","sourcesContent":["export class MissingValueError extends Error {\n constructor(subject: string, property: string) {\n super(`The subject ${subject} has no value for property ${property}.`);\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- export declare class TermTypeError extends Error {
2
- constructor(actual: string, expected: string);
3
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TermTypeError = void 0;
4
- class TermTypeError extends Error {
5
- constructor(actual, expected) {
6
- super(`The term is not of the expected type.\nActual: ${actual}\nExpected: ${expected}`);
7
- }
8
- }
9
- exports.TermTypeError = TermTypeError;
10
- //# sourceMappingURL=term_type_error.js.map