ts2famix 2.0.3 → 2.1.0-beta.1
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.
- package/.eslintrc.json +24 -24
- package/.vscode/settings.json +4 -0
- package/LICENSE +24 -24
- package/README.md +78 -78
- package/TODO +1 -0
- package/arwea-fix.json +1 -0
- package/bogus.ts +3 -0
- package/class-diagram.puml +792 -0
- package/debug.txt +13332 -0
- package/debuglog.txt +12073 -0
- package/dist/analyze.js +2 -2
- package/dist/analyze_functions/process_functions.js +84 -64
- package/dist/famix2puml.js +126 -0
- package/dist/famix_functions/EntityDictionary.js +865 -503
- package/dist/famix_functions/helpers_creation.js +1 -1
- package/dist/fqn.js +44 -11
- package/dist/getClasses-arrow-body.js +43 -0
- package/dist/lib/famix/famix_JSON_exporter.js +1 -1
- package/dist/lib/famix/famix_base_element.js +1 -1
- package/dist/lib/famix/famix_repository.js +57 -2
- package/dist/lib/famix/index.js +1 -1
- package/dist/lib/famix/model/famix/access.js +1 -1
- package/dist/lib/famix/model/famix/accessor.js +1 -1
- package/dist/lib/famix/model/famix/alias.js +1 -1
- package/dist/lib/famix/model/famix/arrow_function.js +1 -1
- package/dist/lib/famix/model/famix/behavioral_entity.js +1 -1
- package/dist/lib/famix/model/famix/class.js +1 -1
- package/dist/lib/famix/model/famix/comment.js +1 -1
- package/dist/lib/famix/model/famix/concretisation.js +1 -1
- package/dist/lib/famix/model/famix/container_entity.js +1 -1
- package/dist/lib/famix/model/famix/decorator.js +1 -1
- package/dist/lib/famix/model/famix/entity.js +1 -1
- package/dist/lib/famix/model/famix/enum.js +1 -1
- package/dist/lib/famix/model/famix/enum_value.js +1 -1
- package/dist/lib/famix/model/famix/function.js +1 -1
- package/dist/lib/famix/model/famix/import_clause.js +1 -1
- package/dist/lib/famix/model/famix/index.js +1 -1
- package/dist/lib/famix/model/famix/indexed_file_anchor.js +1 -1
- package/dist/lib/famix/model/famix/inheritance.js +1 -1
- package/dist/lib/famix/model/famix/interface.js +1 -1
- package/dist/lib/famix/model/famix/invocation.js +1 -1
- package/dist/lib/famix/model/famix/method.js +1 -1
- package/dist/lib/famix/model/famix/module.js +1 -1
- package/dist/lib/famix/model/famix/named_entity.js +1 -1
- package/dist/lib/famix/model/famix/parameter.js +1 -1
- package/dist/lib/famix/model/famix/parameter_concretisation.js +1 -1
- package/dist/lib/famix/model/famix/parameter_type.js +1 -1
- package/dist/lib/famix/model/famix/parametric_arrow_function.js +1 -1
- package/dist/lib/famix/model/famix/parametric_class.js +1 -1
- package/dist/lib/famix/model/famix/parametric_function.js +1 -1
- package/dist/lib/famix/model/famix/parametric_interface.js +1 -1
- package/dist/lib/famix/model/famix/parametric_method.js +1 -1
- package/dist/lib/famix/model/famix/primitive_type.js +1 -1
- package/dist/lib/famix/model/famix/property.js +1 -1
- package/dist/lib/famix/model/famix/reference.js +1 -1
- package/dist/lib/famix/model/famix/scoping_entity.js +1 -1
- package/dist/lib/famix/model/famix/script_entity.js +1 -1
- package/dist/lib/famix/model/famix/source_anchor.js +1 -1
- package/dist/lib/famix/model/famix/source_language.js +1 -1
- package/dist/lib/famix/model/famix/sourced_entity.js +1 -1
- package/dist/lib/famix/model/famix/structural_entity.js +1 -1
- package/dist/lib/famix/model/famix/type.js +1 -1
- package/dist/lib/famix/model/famix/variable.js +1 -1
- package/dist/lib/famix/src/famix_JSON_exporter.js +55 -0
- package/dist/lib/famix/src/famix_base_element.js +18 -0
- package/dist/lib/famix/src/famix_repository.js +224 -0
- package/dist/lib/famix/src/index.js +31 -0
- package/dist/lib/famix/src/model/famix/access.js +40 -0
- package/dist/lib/famix/src/model/famix/accessor.js +17 -0
- package/dist/lib/famix/src/model/famix/alias.js +33 -0
- package/dist/lib/famix/src/model/famix/arrowFunction.js +17 -0
- package/dist/lib/famix/src/model/famix/arrow_function.js +17 -0
- package/dist/lib/famix/src/model/famix/behavioral_entity.js +79 -0
- package/dist/lib/famix/src/model/famix/class.js +71 -0
- package/dist/lib/famix/src/model/famix/comment.js +39 -0
- package/dist/lib/famix/src/model/famix/concretisation.js +31 -0
- package/dist/lib/famix/src/model/famix/container_entity.js +126 -0
- package/dist/lib/famix/src/model/famix/decorator.js +32 -0
- package/dist/lib/famix/src/model/famix/entity.js +17 -0
- package/dist/lib/famix/src/model/famix/enum.js +31 -0
- package/dist/lib/famix/src/model/famix/enum_value.js +25 -0
- package/dist/lib/famix/src/model/famix/function.js +17 -0
- package/dist/lib/famix/src/model/famix/implicit_variable.js +17 -0
- package/dist/lib/famix/src/model/famix/import_clause.js +41 -0
- package/dist/lib/famix/src/model/famix/index.js +86 -0
- package/dist/lib/famix/src/model/famix/indexed_file_anchor.js +38 -0
- package/dist/lib/famix/src/model/famix/inheritance.js +33 -0
- package/dist/lib/famix/src/model/famix/interface.js +64 -0
- package/dist/lib/famix/src/model/famix/invocation.js +54 -0
- package/dist/lib/famix/src/model/famix/method.js +67 -0
- package/dist/lib/famix/src/model/famix/module.js +60 -0
- package/dist/lib/famix/src/model/famix/named_entity.js +78 -0
- package/dist/lib/famix/src/model/famix/parameter.js +25 -0
- package/dist/lib/famix/src/model/famix/parameterConcretisation.js +44 -0
- package/dist/lib/famix/src/model/famix/parameter_concretisation.js +44 -0
- package/dist/lib/famix/src/model/famix/parameter_type.js +45 -0
- package/dist/lib/famix/src/model/famix/parametricArrowFunction.js +29 -0
- package/dist/lib/famix/src/model/famix/parametric_arrow_function.js +31 -0
- package/dist/lib/famix/src/model/famix/parametric_class.js +44 -0
- package/dist/lib/famix/src/model/famix/parametric_function.js +31 -0
- package/dist/lib/famix/src/model/famix/parametric_interface.js +44 -0
- package/dist/lib/famix/src/model/famix/parametric_method.js +31 -0
- package/dist/lib/famix/src/model/famix/primitive_type.js +17 -0
- package/dist/lib/famix/src/model/famix/property.js +73 -0
- package/dist/lib/famix/src/model/famix/reference.js +33 -0
- package/dist/lib/famix/src/model/famix/scoping_entity.js +36 -0
- package/dist/lib/famix/src/model/famix/script_entity.js +29 -0
- package/dist/lib/famix/src/model/famix/source_anchor.js +27 -0
- package/dist/lib/famix/src/model/famix/source_language.js +35 -0
- package/dist/lib/famix/src/model/famix/sourced_entity.js +60 -0
- package/dist/lib/famix/src/model/famix/structural_entity.js +39 -0
- package/dist/lib/famix/src/model/famix/text_anchor.js +38 -0
- package/dist/lib/famix/src/model/famix/type.js +73 -0
- package/dist/lib/famix/src/model/famix/variable.js +24 -0
- package/dist/lib/ts-complex/cyclomatic-service.js +1 -1
- package/dist/refactorer/refactor-getter-setter.js +1 -1
- package/dist/ts2famix-cli-wrapper.js +1 -1
- package/dist/ts2famix-cli.js +1 -1
- package/doc-uml/famix-typescript-model.puml +607 -607
- package/eslint.config.mjs +28 -0
- package/fqn-model.json +1 -0
- package/iterateGenericTypes.ts +69 -0
- package/out/class-diagram/class-diagram.svg +1 -0
- package/package.json +70 -66
- package/sample.json +1 -0
- package/sample.ts +1 -0
- package/src/analyze.ts +120 -120
- package/src/analyze_functions/process_functions.ts +1040 -1019
- package/src/famix_functions/EntityDictionary.ts +2016 -1593
- package/src/famix_functions/helpers_creation.ts +135 -135
- package/src/fqn.ts +50 -16
- package/src/generate_uml.sh +20 -20
- package/src/lib/famix/License.md +22 -22
- package/src/lib/famix/famix_JSON_exporter.ts +56 -56
- package/src/lib/famix/famix_base_element.ts +22 -22
- package/src/lib/famix/famix_repository.ts +278 -243
- package/src/lib/famix/index.ts +8 -8
- package/src/lib/famix/model/famix/access.ts +50 -50
- package/src/lib/famix/model/famix/accessor.ts +15 -15
- package/src/lib/famix/model/famix/alias.ts +39 -39
- package/src/lib/famix/model/famix/arrow_function.ts +15 -15
- package/src/lib/famix/model/famix/behavioral_entity.ts +97 -97
- package/src/lib/famix/model/famix/class.ts +85 -85
- package/src/lib/famix/model/famix/comment.ts +47 -47
- package/src/lib/famix/model/famix/concretisation.ts +40 -40
- package/src/lib/famix/model/famix/container_entity.ts +160 -160
- package/src/lib/famix/model/famix/decorator.ts +37 -37
- package/src/lib/famix/model/famix/entity.ts +15 -15
- package/src/lib/famix/model/famix/enum.ts +30 -30
- package/src/lib/famix/model/famix/enum_value.ts +28 -28
- package/src/lib/famix/model/famix/function.ts +15 -15
- package/src/lib/famix/model/famix/import_clause.ts +51 -51
- package/src/lib/famix/model/famix/index.ts +41 -41
- package/src/lib/famix/model/famix/indexed_file_anchor.ts +46 -46
- package/src/lib/famix/model/famix/inheritance.ts +40 -40
- package/src/lib/famix/model/famix/interface.ts +75 -75
- package/src/lib/famix/model/famix/invocation.ts +65 -65
- package/src/lib/famix/model/famix/method.ts +89 -89
- package/src/lib/famix/model/famix/module.ts +71 -71
- package/src/lib/famix/model/famix/named_entity.ts +95 -95
- package/src/lib/famix/model/famix/parameter.ts +28 -28
- package/src/lib/famix/model/famix/parameter_concretisation.ts +51 -51
- package/src/lib/famix/model/famix/parameter_type.ts +58 -58
- package/src/lib/famix/model/famix/parametric_arrow_function.ts +32 -32
- package/src/lib/famix/model/famix/parametric_class.ts +49 -49
- package/src/lib/famix/model/famix/parametric_function.ts +32 -32
- package/src/lib/famix/model/famix/parametric_interface.ts +49 -49
- package/src/lib/famix/model/famix/parametric_method.ts +32 -32
- package/src/lib/famix/model/famix/primitive_type.ts +15 -15
- package/src/lib/famix/model/famix/property.ts +94 -94
- package/src/lib/famix/model/famix/reference.ts +40 -40
- package/src/lib/famix/model/famix/scoping_entity.ts +35 -35
- package/src/lib/famix/model/famix/script_entity.ts +34 -34
- package/src/lib/famix/model/famix/source_anchor.ts +30 -30
- package/src/lib/famix/model/famix/source_language.ts +35 -35
- package/src/lib/famix/model/famix/sourced_entity.ts +70 -70
- package/src/lib/famix/model/famix/structural_entity.ts +43 -43
- package/src/lib/famix/model/famix/type.ts +87 -87
- package/src/lib/famix/model/famix/variable.ts +27 -27
- package/src/lib/famix/package.json +28 -28
- package/src/lib/ts-complex/cyclomatic-service.ts +83 -83
- package/src/refactorer/refactor-getter-setter.ts +140 -140
- package/src/ts2famix-cli-wrapper.ts +21 -21
- package/src/ts2famix-cli.ts +60 -60
- package/stats.txt +3091 -0
- package/tabby-debug-output.txt +19433 -0
- package/ts2famix.log +22656 -0
- package/tsconfig.check-tests.json +14 -14
- package/tsconfig.json +72 -72
- package/validate-references.js +103 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Comment = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const sourced_entity_1 = require("./sourced_entity");
|
|
6
|
+
class Comment extends sourced_entity_1.SourcedEntity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Comment", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("isJSDoc", this.isJSDoc);
|
|
15
|
+
exporter.addProperty("commentedEntity", this.container);
|
|
16
|
+
exporter.addProperty("content", this.content);
|
|
17
|
+
}
|
|
18
|
+
get isJSDoc() {
|
|
19
|
+
return this._isJSDoc;
|
|
20
|
+
}
|
|
21
|
+
set isJSDoc(isJSDoc) {
|
|
22
|
+
this._isJSDoc = isJSDoc;
|
|
23
|
+
}
|
|
24
|
+
get container() {
|
|
25
|
+
return this._container;
|
|
26
|
+
}
|
|
27
|
+
set container(container) {
|
|
28
|
+
this._container = container;
|
|
29
|
+
container.addComment(this);
|
|
30
|
+
}
|
|
31
|
+
get content() {
|
|
32
|
+
return this._content;
|
|
33
|
+
}
|
|
34
|
+
set content(content) {
|
|
35
|
+
this._content = content;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.Comment = Comment;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L2NvbW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELHFEQUFpRDtBQUVqRCxNQUFhLE9BQVEsU0FBUSw4QkFBYTtJQU1qQyxPQUFPO1FBQ1osTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDeEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QyxRQUFRLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4RCxRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVDLElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsT0FBZ0I7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsU0FBd0I7UUFDbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFlO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO0lBQzVCLENBQUM7Q0FDSjtBQTNDRCwwQkEyQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFNvdXJjZWRFbnRpdHkgfSBmcm9tIFwiLi9zb3VyY2VkX2VudGl0eVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbW1lbnQgZXh0ZW5kcyBTb3VyY2VkRW50aXR5IHtcclxuXHJcbiAgcHJpdmF0ZSBfaXNKU0RvYyE6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSBfY29udGFpbmVyITogU291cmNlZEVudGl0eTtcclxuICBwcml2YXRlIF9jb250ZW50ITogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJDb21tZW50XCIsIHRoaXMpO1xyXG4gICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcjogRmFtaXhKU09ORXhwb3J0ZXIpOiB2b2lkIHtcclxuICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiaXNKU0RvY1wiLCB0aGlzLmlzSlNEb2MpO1xyXG4gICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJjb21tZW50ZWRFbnRpdHlcIiwgdGhpcy5jb250YWluZXIpO1xyXG4gICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJjb250ZW50XCIsIHRoaXMuY29udGVudCk7XHJcbiAgfVxyXG5cclxuICAgIGdldCBpc0pTRG9jKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9pc0pTRG9jO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBpc0pTRG9jKGlzSlNEb2M6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLl9pc0pTRG9jID0gaXNKU0RvYztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY29udGFpbmVyKCk6IFNvdXJjZWRFbnRpdHkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9jb250YWluZXI7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGNvbnRhaW5lcihjb250YWluZXI6IFNvdXJjZWRFbnRpdHkpIHtcclxuICAgICAgICB0aGlzLl9jb250YWluZXIgPSBjb250YWluZXI7XHJcbiAgICAgICAgY29udGFpbmVyLmFkZENvbW1lbnQodGhpcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGNvbnRlbnQoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgY29udGVudChjb250ZW50OiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9jb250ZW50ID0gY29udGVudDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Concretisation = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const entity_1 = require("./entity");
|
|
6
|
+
class Concretisation extends entity_1.Entity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Concretisation", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("genericEntity", this.genericEntity);
|
|
15
|
+
exporter.addProperty("concreteEntity", this.concreteEntity);
|
|
16
|
+
}
|
|
17
|
+
get genericEntity() {
|
|
18
|
+
return this._genericEntity;
|
|
19
|
+
}
|
|
20
|
+
set genericEntity(genericEntity) {
|
|
21
|
+
this._genericEntity = genericEntity;
|
|
22
|
+
}
|
|
23
|
+
get concreteEntity() {
|
|
24
|
+
return this._concreteEntity;
|
|
25
|
+
}
|
|
26
|
+
set concreteEntity(concreteEntity) {
|
|
27
|
+
this._concreteEntity = concreteEntity;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.Concretisation = Concretisation;
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uY3JldGlzYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9jb25jcmV0aXNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFDOUQscUNBQWtDO0FBTWxDLE1BQWEsY0FBZSxTQUFRLGVBQU07SUFLL0IsT0FBTztRQUNaLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDeEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMxRCxRQUFRLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxhQUE0RjtRQUMxRyxJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLGNBQWMsQ0FBQyxjQUE2RjtRQUM1RyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztJQUMxQyxDQUFDO0NBQ0o7QUFoQ0Qsd0NBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFtaXhKU09ORXhwb3J0ZXIgfSBmcm9tIFwiLi4vLi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tIFwiLi9lbnRpdHlcIjtcclxuaW1wb3J0IHsgUGFyYW1ldHJpY0NsYXNzIH0gZnJvbSBcIi4vcGFyYW1ldHJpY19jbGFzc1wiO1xyXG5pbXBvcnQgeyBQYXJhbWV0cmljRnVuY3Rpb24gfSBmcm9tIFwiLi9wYXJhbWV0cmljX2Z1bmN0aW9uXCI7XHJcbmltcG9ydCB7IFBhcmFtZXRyaWNJbnRlcmZhY2UgfSBmcm9tIFwiLi9wYXJhbWV0cmljX2ludGVyZmFjZVwiO1xyXG5pbXBvcnQgeyBQYXJhbWV0cmljTWV0aG9kIH0gZnJvbSBcIi4vcGFyYW1ldHJpY19tZXRob2RcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBDb25jcmV0aXNhdGlvbiBleHRlbmRzIEVudGl0eSB7XHJcblxyXG4gICAgcHJpdmF0ZSBfZ2VuZXJpY0VudGl0eSE6IFBhcmFtZXRyaWNDbGFzcyB8IFBhcmFtZXRyaWNJbnRlcmZhY2UgfCBQYXJhbWV0cmljRnVuY3Rpb24gfCBQYXJhbWV0cmljTWV0aG9kO1xyXG4gICAgcHJpdmF0ZSBfY29uY3JldGVFbnRpdHkhOiBQYXJhbWV0cmljQ2xhc3MgfCBQYXJhbWV0cmljSW50ZXJmYWNlIHwgUGFyYW1ldHJpY0Z1bmN0aW9uIHwgUGFyYW1ldHJpY01ldGhvZDsgIC8vIGlzIHRoaXMgY29ycmVjdD9cclxuXHJcbiAgICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIkNvbmNyZXRpc2F0aW9uXCIsIHRoaXMpO1xyXG4gICAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJnZW5lcmljRW50aXR5XCIsIHRoaXMuZ2VuZXJpY0VudGl0eSk7XHJcbiAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiY29uY3JldGVFbnRpdHlcIiwgdGhpcy5jb25jcmV0ZUVudGl0eSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGdlbmVyaWNFbnRpdHkoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dlbmVyaWNFbnRpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGdlbmVyaWNFbnRpdHkoZ2VuZXJpY0VudGl0eTogUGFyYW1ldHJpY0NsYXNzIHwgUGFyYW1ldHJpY0ludGVyZmFjZSB8IFBhcmFtZXRyaWNGdW5jdGlvbiB8IFBhcmFtZXRyaWNNZXRob2QpIHtcclxuICAgICAgICB0aGlzLl9nZW5lcmljRW50aXR5ID0gZ2VuZXJpY0VudGl0eTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY29uY3JldGVFbnRpdHkoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbmNyZXRlRW50aXR5O1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBjb25jcmV0ZUVudGl0eShjb25jcmV0ZUVudGl0eTogUGFyYW1ldHJpY0NsYXNzIHwgUGFyYW1ldHJpY0ludGVyZmFjZSB8IFBhcmFtZXRyaWNGdW5jdGlvbiB8IFBhcmFtZXRyaWNNZXRob2QpIHtcclxuICAgICAgICB0aGlzLl9jb25jcmV0ZUVudGl0eSA9IGNvbmNyZXRlRW50aXR5O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContainerEntity = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const named_entity_1 = require("./named_entity");
|
|
6
|
+
class ContainerEntity extends named_entity_1.NamedEntity {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this._childrenContainerEntities = new Set();
|
|
10
|
+
this._outgoingReferences = new Set();
|
|
11
|
+
this._outgoingInvocations = new Set();
|
|
12
|
+
this._accesses = new Set();
|
|
13
|
+
this.childrenTypes = new Set();
|
|
14
|
+
this.childrenFunctions = new Set();
|
|
15
|
+
this._variables = new Set();
|
|
16
|
+
}
|
|
17
|
+
addChildContainerEntity(childContainerEntity) {
|
|
18
|
+
if (!this._childrenContainerEntities.has(childContainerEntity)) {
|
|
19
|
+
this._childrenContainerEntities.add(childContainerEntity);
|
|
20
|
+
childContainerEntity.parentContainerEntity = this;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
addOutgoingReference(outgoingReference) {
|
|
24
|
+
if (!this._outgoingReferences.has(outgoingReference)) {
|
|
25
|
+
this._outgoingReferences.add(outgoingReference);
|
|
26
|
+
outgoingReference.source = this;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
addOutgoingInvocation(outgoingInvocation) {
|
|
30
|
+
if (!this._outgoingInvocations.has(outgoingInvocation)) {
|
|
31
|
+
this._outgoingInvocations.add(outgoingInvocation);
|
|
32
|
+
outgoingInvocation.sender = this;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
addAccess(access) {
|
|
36
|
+
if (!this._accesses.has(access)) {
|
|
37
|
+
this._accesses.add(access);
|
|
38
|
+
access.accessor = this;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
addType(childType) {
|
|
42
|
+
if (!this.childrenTypes.has(childType)) {
|
|
43
|
+
this.childrenTypes.add(childType);
|
|
44
|
+
childType.parentContainerEntity = this;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
addFunction(childFunction) {
|
|
48
|
+
if (!this.childrenFunctions.has(childFunction)) {
|
|
49
|
+
this.childrenFunctions.add(childFunction);
|
|
50
|
+
childFunction.parentContainerEntity = this;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
addVariable(variable) {
|
|
54
|
+
if (!this._variables.has(variable)) {
|
|
55
|
+
this._variables.add(variable);
|
|
56
|
+
variable.parentContainerEntity = this;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
getJSON() {
|
|
60
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("ContainerEntity", this);
|
|
61
|
+
this.addPropertiesToExporter(json);
|
|
62
|
+
return json.getJSON();
|
|
63
|
+
}
|
|
64
|
+
addPropertiesToExporter(exporter) {
|
|
65
|
+
super.addPropertiesToExporter(exporter);
|
|
66
|
+
// exporter.addProperty("parentBehaviouralEntity", this.getParentContainerEntity());
|
|
67
|
+
// exporter.addProperty("childrenContainerEntities", this.getChildrenContainerEntities());
|
|
68
|
+
exporter.addProperty("cyclomaticComplexity", this.cyclomaticComplexity);
|
|
69
|
+
exporter.addProperty("numberOfStatements", this.numberOfStatements);
|
|
70
|
+
// exporter.addProperty("outgoingReferences", this.getOutgoingReferences()); /* derived ?*/
|
|
71
|
+
exporter.addProperty("numberOfLinesOfCode", this.numberOfLinesOfCode);
|
|
72
|
+
// exporter.addProperty("outgoingInvocations", this.getOutgoingInvocations()); /* derived ?*/
|
|
73
|
+
// exporter.addProperty("accesses", this.getAccesses()); /* derived ?*/
|
|
74
|
+
exporter.addProperty("types", this.types);
|
|
75
|
+
exporter.addProperty("functions", this.functions);
|
|
76
|
+
exporter.addProperty("localVariables", this.variables);
|
|
77
|
+
}
|
|
78
|
+
get parentContainerEntity() {
|
|
79
|
+
return this._parentContainerEntity;
|
|
80
|
+
}
|
|
81
|
+
set parentContainerEntity(parentContainerEntity) {
|
|
82
|
+
this._parentContainerEntity = parentContainerEntity;
|
|
83
|
+
parentContainerEntity.addChildContainerEntity(this);
|
|
84
|
+
}
|
|
85
|
+
get childrenContainerEntities() {
|
|
86
|
+
return this._childrenContainerEntities;
|
|
87
|
+
}
|
|
88
|
+
get cyclomaticComplexity() {
|
|
89
|
+
return this._cyclomaticComplexity;
|
|
90
|
+
}
|
|
91
|
+
set cyclomaticComplexity(cyclomaticComplexity) {
|
|
92
|
+
this._cyclomaticComplexity = cyclomaticComplexity;
|
|
93
|
+
}
|
|
94
|
+
get numberOfStatements() {
|
|
95
|
+
return this._numberOfStatements;
|
|
96
|
+
}
|
|
97
|
+
set numberOfStatements(numberOfStatements) {
|
|
98
|
+
this._numberOfStatements = numberOfStatements;
|
|
99
|
+
}
|
|
100
|
+
get outgoingReferences() {
|
|
101
|
+
return this._outgoingReferences;
|
|
102
|
+
}
|
|
103
|
+
get numberOfLinesOfCode() {
|
|
104
|
+
return this._numberOfLinesOfCode;
|
|
105
|
+
}
|
|
106
|
+
set numberOfLinesOfCode(numberOfLinesOfCode) {
|
|
107
|
+
this._numberOfLinesOfCode = numberOfLinesOfCode;
|
|
108
|
+
}
|
|
109
|
+
get outgoingInvocations() {
|
|
110
|
+
return this._outgoingInvocations;
|
|
111
|
+
}
|
|
112
|
+
get accesses() {
|
|
113
|
+
return this._accesses;
|
|
114
|
+
}
|
|
115
|
+
get types() {
|
|
116
|
+
return this.childrenTypes;
|
|
117
|
+
}
|
|
118
|
+
get functions() {
|
|
119
|
+
return this.childrenFunctions;
|
|
120
|
+
}
|
|
121
|
+
get variables() {
|
|
122
|
+
return this._variables;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
exports.ContainerEntity = ContainerEntity;
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyX2VudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L2NvbnRhaW5lcl9lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBRzlELGlEQUE2QztBQU03QyxNQUFhLGVBQWdCLFNBQVEsMEJBQVc7SUFBaEQ7O1FBR1ksK0JBQTBCLEdBQXlCLElBQUksR0FBRyxFQUFFLENBQUM7UUFXN0Qsd0JBQW1CLEdBQW1CLElBQUksR0FBRyxFQUFFLENBQUM7UUFVaEQseUJBQW9CLEdBQW9CLElBQUksR0FBRyxFQUFFLENBQUM7UUFTbEQsY0FBUyxHQUFnQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBU25DLGtCQUFhLEdBQWMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQVNyQyxzQkFBaUIsR0FBNkIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQVN4RCxlQUFVLEdBQWtCLElBQUksR0FBRyxFQUFFLENBQUM7SUEwRmxELENBQUM7SUFqSlUsdUJBQXVCLENBQUMsb0JBQXFDO1FBQ2hFLElBQUksQ0FBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQztZQUM3RCxJQUFJLENBQUMsMEJBQTBCLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7WUFDMUQsb0JBQW9CLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBQ3RELENBQUM7SUFDTCxDQUFDO0lBTU0sb0JBQW9CLENBQUMsaUJBQTRCO1FBQ3BELElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDaEQsaUJBQWlCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FB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QUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7Q0FDSjtBQXRKRCwwQ0FzSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFR5cGUgfSBmcm9tIFwiLi90eXBlXCI7XHJcbmltcG9ydCB7IEludm9jYXRpb24gfSBmcm9tIFwiLi9pbnZvY2F0aW9uXCI7XHJcbmltcG9ydCB7IE5hbWVkRW50aXR5IH0gZnJvbSBcIi4vbmFtZWRfZW50aXR5XCI7XHJcbmltcG9ydCB7IFJlZmVyZW5jZSB9IGZyb20gXCIuL3JlZmVyZW5jZVwiO1xyXG5pbXBvcnQgeyBBY2Nlc3MgfSBmcm9tIFwiLi9hY2Nlc3NcIjtcclxuaW1wb3J0IHsgRnVuY3Rpb24gYXMgRmFtaXhGdW5jdGlvbkVudGl0eSB9IGZyb20gXCIuL2Z1bmN0aW9uXCI7XHJcbmltcG9ydCB7IFZhcmlhYmxlIH0gZnJvbSBcIi4vdmFyaWFibGVcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBDb250YWluZXJFbnRpdHkgZXh0ZW5kcyBOYW1lZEVudGl0eSB7XHJcblxyXG4gICAgcHJpdmF0ZSBfcGFyZW50Q29udGFpbmVyRW50aXR5ITogQ29udGFpbmVyRW50aXR5O1xyXG4gICAgcHJpdmF0ZSBfY2hpbGRyZW5Db250YWluZXJFbnRpdGllczogU2V0PENvbnRhaW5lckVudGl0eT4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgcHVibGljIGFkZENoaWxkQ29udGFpbmVyRW50aXR5KGNoaWxkQ29udGFpbmVyRW50aXR5OiBDb250YWluZXJFbnRpdHkpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuX2NoaWxkcmVuQ29udGFpbmVyRW50aXRpZXMuaGFzKGNoaWxkQ29udGFpbmVyRW50aXR5KSkge1xyXG4gICAgICAgICAgICB0aGlzLl9jaGlsZHJlbkNvbnRhaW5lckVudGl0aWVzLmFkZChjaGlsZENvbnRhaW5lckVudGl0eSk7XHJcbiAgICAgICAgICAgIGNoaWxkQ29udGFpbmVyRW50aXR5LnBhcmVudENvbnRhaW5lckVudGl0eSA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2N5Y2xvbWF0aWNDb21wbGV4aXR5ITogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBfbnVtYmVyT2ZTdGF0ZW1lbnRzITogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBfb3V0Z29pbmdSZWZlcmVuY2VzOiBTZXQ8UmVmZXJlbmNlPiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkT3V0Z29pbmdSZWZlcmVuY2Uob3V0Z29pbmdSZWZlcmVuY2U6IFJlZmVyZW5jZSk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fb3V0Z29pbmdSZWZlcmVuY2VzLmhhcyhvdXRnb2luZ1JlZmVyZW5jZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5fb3V0Z29pbmdSZWZlcmVuY2VzLmFkZChvdXRnb2luZ1JlZmVyZW5jZSk7XHJcbiAgICAgICAgICAgIG91dGdvaW5nUmVmZXJlbmNlLnNvdXJjZSA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX251bWJlck9mTGluZXNPZkNvZGUhOiBudW1iZXI7XHJcbiAgICBwcml2YXRlIF9vdXRnb2luZ0ludm9jYXRpb25zOiBTZXQ8SW52b2NhdGlvbj4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgcHVibGljIGFkZE91dGdvaW5nSW52b2NhdGlvbihvdXRnb2luZ0ludm9jYXRpb246IEludm9jYXRpb24pOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuX291dGdvaW5nSW52b2NhdGlvbnMuaGFzKG91dGdvaW5nSW52b2NhdGlvbikpIHtcclxuICAgICAgICAgICAgdGhpcy5fb3V0Z29pbmdJbnZvY2F0aW9ucy5hZGQob3V0Z29pbmdJbnZvY2F0aW9uKTtcclxuICAgICAgICAgICAgb3V0Z29pbmdJbnZvY2F0aW9uLnNlbmRlciA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2FjY2Vzc2VzOiBTZXQ8QWNjZXNzPiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkQWNjZXNzKGFjY2VzczogQWNjZXNzKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9hY2Nlc3Nlcy5oYXMoYWNjZXNzKSkge1xyXG4gICAgICAgICAgICB0aGlzLl9hY2Nlc3Nlcy5hZGQoYWNjZXNzKTtcclxuICAgICAgICAgICAgYWNjZXNzLmFjY2Vzc29yID0gdGhpcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGlsZHJlblR5cGVzOiBTZXQ8VHlwZT4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgcHVibGljIGFkZFR5cGUoY2hpbGRUeXBlOiBUeXBlKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmNoaWxkcmVuVHlwZXMuaGFzKGNoaWxkVHlwZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5jaGlsZHJlblR5cGVzLmFkZChjaGlsZFR5cGUpO1xyXG4gICAgICAgICAgICBjaGlsZFR5cGUucGFyZW50Q29udGFpbmVyRW50aXR5ID0gdGhpcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjaGlsZHJlbkZ1bmN0aW9uczogU2V0PEZhbWl4RnVuY3Rpb25FbnRpdHk+ID0gbmV3IFNldCgpO1xyXG5cclxuICAgIHB1YmxpYyBhZGRGdW5jdGlvbihjaGlsZEZ1bmN0aW9uOiBGYW1peEZ1bmN0aW9uRW50aXR5KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmNoaWxkcmVuRnVuY3Rpb25zLmhhcyhjaGlsZEZ1bmN0aW9uKSkge1xyXG4gICAgICAgICAgICB0aGlzLmNoaWxkcmVuRnVuY3Rpb25zLmFkZChjaGlsZEZ1bmN0aW9uKTtcclxuICAgICAgICAgICAgY2hpbGRGdW5jdGlvbi5wYXJlbnRDb250YWluZXJFbnRpdHkgPSB0aGlzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF92YXJpYWJsZXM6IFNldDxWYXJpYWJsZT4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgcHVibGljIGFkZFZhcmlhYmxlKHZhcmlhYmxlOiBWYXJpYWJsZSk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fdmFyaWFibGVzLmhhcyh2YXJpYWJsZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5fdmFyaWFibGVzLmFkZCh2YXJpYWJsZSk7XHJcbiAgICAgICAgICAgIHZhcmlhYmxlLnBhcmVudENvbnRhaW5lckVudGl0eSA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJDb250YWluZXJFbnRpdHlcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICAvLyAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcInBhcmVudEJlaGF2aW91cmFsRW50aXR5XCIsIHRoaXMuZ2V0UGFyZW50Q29udGFpbmVyRW50aXR5KCkpO1xyXG4gICAgICAgIC8vICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiY2hpbGRyZW5Db250YWluZXJFbnRpdGllc1wiLCB0aGlzLmdldENoaWxkcmVuQ29udGFpbmVyRW50aXRpZXMoKSk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJjeWNsb21hdGljQ29tcGxleGl0eVwiLCB0aGlzLmN5Y2xvbWF0aWNDb21wbGV4aXR5KTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcIm51bWJlck9mU3RhdGVtZW50c1wiLCB0aGlzLm51bWJlck9mU3RhdGVtZW50cyk7XHJcbiAgICAgICAgLy8gICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJvdXRnb2luZ1JlZmVyZW5jZXNcIiwgdGhpcy5nZXRPdXRnb2luZ1JlZmVyZW5jZXMoKSk7ICAvKiBkZXJpdmVkID8qL1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwibnVtYmVyT2ZMaW5lc09mQ29kZVwiLCB0aGlzLm51bWJlck9mTGluZXNPZkNvZGUpO1xyXG4gICAgICAgIC8vICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwib3V0Z29pbmdJbnZvY2F0aW9uc1wiLCB0aGlzLmdldE91dGdvaW5nSW52b2NhdGlvbnMoKSk7ICAvKiBkZXJpdmVkID8qL1xyXG4gICAgICAgIC8vICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiYWNjZXNzZXNcIiwgdGhpcy5nZXRBY2Nlc3NlcygpKTsgIC8qIGRlcml2ZWQgPyovXHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJ0eXBlc1wiLCB0aGlzLnR5cGVzKTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcImZ1bmN0aW9uc1wiLCB0aGlzLmZ1bmN0aW9ucyk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJsb2NhbFZhcmlhYmxlc1wiLCB0aGlzLnZhcmlhYmxlcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHBhcmVudENvbnRhaW5lckVudGl0eSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fcGFyZW50Q29udGFpbmVyRW50aXR5O1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBwYXJlbnRDb250YWluZXJFbnRpdHkocGFyZW50Q29udGFpbmVyRW50aXR5OiBDb250YWluZXJFbnRpdHkpIHtcclxuICAgICAgICB0aGlzLl9wYXJlbnRDb250YWluZXJFbnRpdHkgPSBwYXJlbnRDb250YWluZXJFbnRpdHk7XHJcbiAgICAgICAgcGFyZW50Q29udGFpbmVyRW50aXR5LmFkZENoaWxkQ29udGFpbmVyRW50aXR5KHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjaGlsZHJlbkNvbnRhaW5lckVudGl0aWVzKCk6IFNldDxDb250YWluZXJFbnRpdHk+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY2hpbGRyZW5Db250YWluZXJFbnRpdGllcztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY3ljbG9tYXRpY0NvbXBsZXhpdHkoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY3ljbG9tYXRpY0NvbXBsZXhpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGN5Y2xvbWF0aWNDb21wbGV4aXR5KGN5Y2xvbWF0aWNDb21wbGV4aXR5OiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLl9jeWNsb21hdGljQ29tcGxleGl0eSA9IGN5Y2xvbWF0aWNDb21wbGV4aXR5O1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBudW1iZXJPZlN0YXRlbWVudHMoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyT2ZTdGF0ZW1lbnRzO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBudW1iZXJPZlN0YXRlbWVudHMobnVtYmVyT2ZTdGF0ZW1lbnRzOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLl9udW1iZXJPZlN0YXRlbWVudHMgPSBudW1iZXJPZlN0YXRlbWVudHM7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IG91dGdvaW5nUmVmZXJlbmNlcygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fb3V0Z29pbmdSZWZlcmVuY2VzO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBudW1iZXJPZkxpbmVzT2ZDb2RlKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlck9mTGluZXNPZkNvZGU7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IG51bWJlck9mTGluZXNPZkNvZGUobnVtYmVyT2ZMaW5lc09mQ29kZTogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5fbnVtYmVyT2ZMaW5lc09mQ29kZSA9IG51bWJlck9mTGluZXNPZkNvZGU7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IG91dGdvaW5nSW52b2NhdGlvbnMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX291dGdvaW5nSW52b2NhdGlvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGFjY2Vzc2VzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9hY2Nlc3NlcztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgdHlwZXMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hpbGRyZW5UeXBlcztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZnVuY3Rpb25zKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNoaWxkcmVuRnVuY3Rpb25zO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCB2YXJpYWJsZXMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhcmlhYmxlcztcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Decorator = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const named_entity_1 = require("./named_entity");
|
|
6
|
+
class Decorator extends named_entity_1.NamedEntity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Decorator", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("expression", this.decoratorExpression);
|
|
15
|
+
exporter.addProperty("decoratedEntity", this.decoratedEntity);
|
|
16
|
+
}
|
|
17
|
+
get decoratorExpression() {
|
|
18
|
+
return this._decoratorExpression;
|
|
19
|
+
}
|
|
20
|
+
set decoratorExpression(decoratorExpression) {
|
|
21
|
+
this._decoratorExpression = decoratorExpression;
|
|
22
|
+
}
|
|
23
|
+
get decoratedEntity() {
|
|
24
|
+
return this._decoratedEntity;
|
|
25
|
+
}
|
|
26
|
+
set decoratedEntity(decoratedEntity) {
|
|
27
|
+
this._decoratedEntity = decoratedEntity;
|
|
28
|
+
decoratedEntity.addDecorator(this);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.Decorator = Decorator;
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9mYW1peC9zcmMvbW9kZWwvZmFtaXgvZGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1FQUE4RDtBQUM5RCxpREFBNkM7QUFFN0MsTUFBYSxTQUFVLFNBQVEsMEJBQVc7SUFLL0IsT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQTJCO1FBQ3RELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUM3RCxRQUFRLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksbUJBQW1CLENBQUMsbUJBQTJCO1FBQy9DLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxtQkFBbUIsQ0FBQztJQUNwRCxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksZUFBZSxDQUFDLGVBQTRCO1FBQzVDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDeEMsZUFBZSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0NBQ0o7QUFqQ0QsOEJBaUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFtaXhKU09ORXhwb3J0ZXIgfSBmcm9tIFwiLi4vLi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBOYW1lZEVudGl0eSB9IGZyb20gXCIuL25hbWVkX2VudGl0eVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIERlY29yYXRvciBleHRlbmRzIE5hbWVkRW50aXR5IHtcclxuXHJcbiAgICBwcml2YXRlIF9kZWNvcmF0b3JFeHByZXNzaW9uITogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSBfZGVjb3JhdGVkRW50aXR5ITogTmFtZWRFbnRpdHk7XHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIkRlY29yYXRvclwiLCB0aGlzKTtcclxuICAgICAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXIpO1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiZXhwcmVzc2lvblwiLCB0aGlzLmRlY29yYXRvckV4cHJlc3Npb24pO1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiZGVjb3JhdGVkRW50aXR5XCIsIHRoaXMuZGVjb3JhdGVkRW50aXR5KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZGVjb3JhdG9yRXhwcmVzc2lvbigpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kZWNvcmF0b3JFeHByZXNzaW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBkZWNvcmF0b3JFeHByZXNzaW9uKGRlY29yYXRvckV4cHJlc3Npb246IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX2RlY29yYXRvckV4cHJlc3Npb24gPSBkZWNvcmF0b3JFeHByZXNzaW9uO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZWNvcmF0ZWRFbnRpdHkoKTogTmFtZWRFbnRpdHkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kZWNvcmF0ZWRFbnRpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGRlY29yYXRlZEVudGl0eShkZWNvcmF0ZWRFbnRpdHk6IE5hbWVkRW50aXR5KSB7XHJcbiAgICAgICAgdGhpcy5fZGVjb3JhdGVkRW50aXR5ID0gZGVjb3JhdGVkRW50aXR5O1xyXG4gICAgICAgIGRlY29yYXRlZEVudGl0eS5hZGREZWNvcmF0b3IodGhpcyk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Entity = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const famix_base_element_1 = require("../../famix_base_element");
|
|
6
|
+
class Entity extends famix_base_element_1.FamixBaseElement {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Entity", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.Entity = Entity;
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9mYW1peC9zcmMvbW9kZWwvZmFtaXgvZW50aXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1FQUE4RDtBQUM5RCxpRUFBNEQ7QUFFNUQsTUFBYSxNQUFPLFNBQVEscUNBQWdCO0lBRW5DLE9BQU87UUFDWixNQUFNLElBQUksR0FBc0IsSUFBSSx1Q0FBaUIsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxRQUEyQjtRQUN4RCxLQUFLLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBWEQsd0JBV0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IEZhbWl4QmFzZUVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vZmFtaXhfYmFzZV9lbGVtZW50XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgRW50aXR5IGV4dGVuZHMgRmFtaXhCYXNlRWxlbWVudCB7XHJcblxyXG4gIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIkVudGl0eVwiLCB0aGlzKTtcclxuICAgIHRoaXMuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoanNvbik7XHJcbiAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICBzdXBlci5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Enum = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const type_1 = require("./type");
|
|
6
|
+
class Enum extends type_1.Type {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this._values = new Set();
|
|
10
|
+
}
|
|
11
|
+
addValue(value) {
|
|
12
|
+
if (!this._values.has(value)) {
|
|
13
|
+
this._values.add(value);
|
|
14
|
+
value.parentEntity = this;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
getJSON() {
|
|
18
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Enum", this);
|
|
19
|
+
this.addPropertiesToExporter(json);
|
|
20
|
+
return json.getJSON();
|
|
21
|
+
}
|
|
22
|
+
addPropertiesToExporter(exporter) {
|
|
23
|
+
super.addPropertiesToExporter(exporter);
|
|
24
|
+
exporter.addProperty("enumValues", this.values);
|
|
25
|
+
}
|
|
26
|
+
get values() {
|
|
27
|
+
return this._values;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.Enum = Enum;
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L2VudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELGlDQUE4QjtBQUc5QixNQUFhLElBQUssU0FBUSxXQUFJO0lBQTlCOztRQUVZLFlBQU8sR0FBbUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQXVCaEQsQ0FBQztJQXJCVSxRQUFRLENBQUMsS0FBZ0I7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEIsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDOUIsQ0FBQztJQUNMLENBQUM7SUFFTSxPQUFPO1FBQ1YsTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDdEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7Q0FDSjtBQXpCRCxvQkF5QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFR5cGUgfSBmcm9tIFwiLi90eXBlXCI7XHJcbmltcG9ydCB7IEVudW1WYWx1ZSB9IGZyb20gXCIuL2VudW1fdmFsdWVcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBFbnVtIGV4dGVuZHMgVHlwZSB7XHJcblxyXG4gICAgcHJpdmF0ZSBfdmFsdWVzOiBTZXQ8RW51bVZhbHVlPiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkVmFsdWUodmFsdWU6IEVudW1WYWx1ZSk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fdmFsdWVzLmhhcyh2YWx1ZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5fdmFsdWVzLmFkZCh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHZhbHVlLnBhcmVudEVudGl0eSA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJFbnVtXCIsIHRoaXMpO1xyXG4gICAgICAgIHRoaXMuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoanNvbik7XHJcbiAgICAgICAgcmV0dXJuIGpzb24uZ2V0SlNPTigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcjogRmFtaXhKU09ORXhwb3J0ZXIpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcik7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJlbnVtVmFsdWVzXCIsIHRoaXMudmFsdWVzKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgdmFsdWVzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZXM7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnumValue = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const structural_entity_1 = require("./structural_entity");
|
|
6
|
+
class EnumValue extends structural_entity_1.StructuralEntity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("EnumValue", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("parentEnum", this.parentEntity);
|
|
15
|
+
}
|
|
16
|
+
get parentEntity() {
|
|
17
|
+
return this._parentEntity;
|
|
18
|
+
}
|
|
19
|
+
set parentEntity(parentEntity) {
|
|
20
|
+
this._parentEntity = parentEntity;
|
|
21
|
+
parentEntity.addValue(this);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.EnumValue = EnumValue;
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bV92YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L2VudW1fdmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELDJEQUF1RDtBQUd2RCxNQUFhLFNBQVUsU0FBUSxvQ0FBZ0I7SUFJcEMsT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQTJCO1FBQ3RELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxZQUFZLENBQUMsWUFBa0I7UUFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUM7UUFDbEMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0NBQ0o7QUF2QkQsOEJBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFtaXhKU09ORXhwb3J0ZXIgfSBmcm9tIFwiLi4vLi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBTdHJ1Y3R1cmFsRW50aXR5IH0gZnJvbSBcIi4vc3RydWN0dXJhbF9lbnRpdHlcIjtcclxuaW1wb3J0IHsgRW51bSB9IGZyb20gXCIuL2VudW1cIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBFbnVtVmFsdWUgZXh0ZW5kcyBTdHJ1Y3R1cmFsRW50aXR5IHtcclxuXHJcbiAgICBwcml2YXRlIF9wYXJlbnRFbnRpdHkhOiBFbnVtO1xyXG5cclxuICAgIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJFbnVtVmFsdWVcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcInBhcmVudEVudW1cIiwgdGhpcy5wYXJlbnRFbnRpdHkpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBwYXJlbnRFbnRpdHkoKTogRW51bSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhcmVudEVudGl0eTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgcGFyZW50RW50aXR5KHBhcmVudEVudGl0eTogRW51bSkge1xyXG4gICAgICAgIHRoaXMuX3BhcmVudEVudGl0eSA9IHBhcmVudEVudGl0eTtcclxuICAgICAgICBwYXJlbnRFbnRpdHkuYWRkVmFsdWUodGhpcyk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Function = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const behavioral_entity_1 = require("./behavioral_entity");
|
|
6
|
+
class Function extends behavioral_entity_1.BehavioralEntity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Function", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.Function = Function;
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFDOUQsMkRBQXVEO0FBRXZELE1BQWEsUUFBUyxTQUFRLG9DQUFnQjtJQUVyQyxPQUFPO1FBQ1osTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDeEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQVhELDRCQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFtaXhKU09ORXhwb3J0ZXIgfSBmcm9tIFwiLi4vLi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBCZWhhdmlvcmFsRW50aXR5IH0gZnJvbSBcIi4vYmVoYXZpb3JhbF9lbnRpdHlcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBGdW5jdGlvbiBleHRlbmRzIEJlaGF2aW9yYWxFbnRpdHkge1xyXG5cclxuICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJGdW5jdGlvblwiLCB0aGlzKTtcclxuICAgIHRoaXMuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoanNvbik7XHJcbiAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICBzdXBlci5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ImplicitVariable = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const variable_1 = require("./variable");
|
|
6
|
+
class ImplicitVariable extends variable_1.Variable {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("ImplicitVariable", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.ImplicitVariable = ImplicitVariable;
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wbGljaXRfdmFyaWFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9pbXBsaWNpdF92YXJpYWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFDOUQseUNBQXNDO0FBRXRDLE1BQWEsZ0JBQWlCLFNBQVEsbUJBQVE7SUFFckMsT0FBTztRQUNaLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDeEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQVhELDRDQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFtaXhKU09ORXhwb3J0ZXIgfSBmcm9tIFwiLi4vLi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBWYXJpYWJsZSB9IGZyb20gXCIuL3ZhcmlhYmxlXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgSW1wbGljaXRWYXJpYWJsZSBleHRlbmRzIFZhcmlhYmxlIHtcclxuXHJcbiAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGpzb246IEZhbWl4SlNPTkV4cG9ydGVyID0gbmV3IEZhbWl4SlNPTkV4cG9ydGVyKFwiSW1wbGljaXRWYXJpYWJsZVwiLCB0aGlzKTtcclxuICAgIHRoaXMuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoanNvbik7XHJcbiAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICBzdXBlci5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ImportClause = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const entity_1 = require("./entity");
|
|
6
|
+
class ImportClause extends entity_1.Entity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("ImportClause", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("importingEntity", this.importingEntity);
|
|
15
|
+
exporter.addProperty("importedEntity", this.importedEntity);
|
|
16
|
+
// unknown property below
|
|
17
|
+
// exporter.addProperty("moduleSpecifier", this.getModuleSpecifier());
|
|
18
|
+
}
|
|
19
|
+
get importingEntity() {
|
|
20
|
+
return this._importingEntity;
|
|
21
|
+
}
|
|
22
|
+
set importingEntity(importer) {
|
|
23
|
+
this._importingEntity = importer;
|
|
24
|
+
importer.addOutgoingImport(this); // opposite
|
|
25
|
+
}
|
|
26
|
+
get importedEntity() {
|
|
27
|
+
return this._importedEntity;
|
|
28
|
+
}
|
|
29
|
+
set importedEntity(importedEntity) {
|
|
30
|
+
this._importedEntity = importedEntity;
|
|
31
|
+
importedEntity.addIncomingImport(this); // incomingImports in Famix TImportable/TImport
|
|
32
|
+
}
|
|
33
|
+
get moduleSpecifier() {
|
|
34
|
+
return this._moduleSpecifier;
|
|
35
|
+
}
|
|
36
|
+
set moduleSpecifier(moduleSpecifier) {
|
|
37
|
+
this._moduleSpecifier = moduleSpecifier;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.ImportClause = ImportClause;
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0X2NsYXVzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L2ltcG9ydF9jbGF1c2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELHFDQUFrQztBQUlsQyxNQUFhLFlBQWEsU0FBUSxlQUFNO0lBTTdCLE9BQU87UUFDVixNQUFNLElBQUksR0FBc0IsSUFBSSx1Q0FBaUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxRQUEyQjtRQUN0RCxLQUFLLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDOUQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUQseUJBQXlCO1FBQ3pCLHlFQUF5RTtJQUM3RSxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQUksZUFBZSxDQUFDLFFBQWdCO1FBQ2hDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7UUFDakMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVztJQUNqRCxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLGNBQWMsQ0FBQyxjQUEyQjtRQUMxQyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQywrQ0FBK0M7SUFDM0YsQ0FBQztJQUVELElBQUksZUFBZTtRQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJLGVBQWUsQ0FBQyxlQUF1QjtRQUN2QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDO0lBQzVDLENBQUM7Q0FDSjtBQTdDRCxvQ0E2Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IEVudGl0eSB9IGZyb20gXCIuL2VudGl0eVwiO1xyXG5pbXBvcnQgeyBNb2R1bGUgfSBmcm9tIFwiLi9tb2R1bGVcIjtcclxuaW1wb3J0IHsgTmFtZWRFbnRpdHkgfSBmcm9tIFwiLi9uYW1lZF9lbnRpdHlcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBJbXBvcnRDbGF1c2UgZXh0ZW5kcyBFbnRpdHkge1xyXG5cclxuICAgIHByaXZhdGUgX2ltcG9ydGluZ0VudGl0eSE6IE1vZHVsZTtcclxuICAgIHByaXZhdGUgX2ltcG9ydGVkRW50aXR5ITogTmFtZWRFbnRpdHk7XHJcbiAgICBwcml2YXRlIF9tb2R1bGVTcGVjaWZpZXIhOiBzdHJpbmc7XHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIkltcG9ydENsYXVzZVwiLCB0aGlzKTtcclxuICAgICAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXIpO1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiaW1wb3J0aW5nRW50aXR5XCIsIHRoaXMuaW1wb3J0aW5nRW50aXR5KTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcImltcG9ydGVkRW50aXR5XCIsIHRoaXMuaW1wb3J0ZWRFbnRpdHkpO1xyXG4gICAgICAgIC8vIHVua25vd24gcHJvcGVydHkgYmVsb3dcclxuICAgICAgICAvLyAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcIm1vZHVsZVNwZWNpZmllclwiLCB0aGlzLmdldE1vZHVsZVNwZWNpZmllcigpKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgaW1wb3J0aW5nRW50aXR5KCk6IE1vZHVsZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ltcG9ydGluZ0VudGl0eTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgaW1wb3J0aW5nRW50aXR5KGltcG9ydGVyOiBNb2R1bGUpIHtcclxuICAgICAgICB0aGlzLl9pbXBvcnRpbmdFbnRpdHkgPSBpbXBvcnRlcjtcclxuICAgICAgICBpbXBvcnRlci5hZGRPdXRnb2luZ0ltcG9ydCh0aGlzKTsgLy8gb3Bwb3NpdGVcclxuICAgIH1cclxuXHJcbiAgICBnZXQgaW1wb3J0ZWRFbnRpdHkoKTogTmFtZWRFbnRpdHkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9pbXBvcnRlZEVudGl0eTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgaW1wb3J0ZWRFbnRpdHkoaW1wb3J0ZWRFbnRpdHk6IE5hbWVkRW50aXR5KSB7XHJcbiAgICAgICAgdGhpcy5faW1wb3J0ZWRFbnRpdHkgPSBpbXBvcnRlZEVudGl0eTtcclxuICAgICAgICBpbXBvcnRlZEVudGl0eS5hZGRJbmNvbWluZ0ltcG9ydCh0aGlzKTsgLy8gaW5jb21pbmdJbXBvcnRzIGluIEZhbWl4IFRJbXBvcnRhYmxlL1RJbXBvcnRcclxuICAgIH1cclxuXHJcbiAgICBnZXQgbW9kdWxlU3BlY2lmaWVyKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX21vZHVsZVNwZWNpZmllcjtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgbW9kdWxlU3BlY2lmaWVyKG1vZHVsZVNwZWNpZmllcjogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fbW9kdWxlU3BlY2lmaWVyID0gbW9kdWxlU3BlY2lmaWVyO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ParameterConcretisation = exports.ParametricArrowFunction = exports.ArrowFunction = exports.ParametricMethod = exports.ParametricFunction = exports.Variable = exports.Type = exports.StructuralEntity = exports.SourcedEntity = exports.SourceLanguage = exports.SourceAnchor = exports.ScriptEntity = exports.ScopingEntity = exports.Reference = exports.PrimitiveType = exports.ParametricInterface = exports.ParametricClass = exports.Parameter = exports.ParameterType = exports.NamedEntity = exports.Module = exports.Method = exports.Invocation = exports.Interface = exports.Inheritance = exports.IndexedFileAnchor = exports.ImportClause = exports.Function = exports.Property = exports.Enum = exports.EnumValue = exports.Entity = exports.Decorator = exports.Concretisation = exports.ContainerEntity = exports.Comment = exports.Class = exports.BehavioralEntity = exports.Alias = exports.Accessor = exports.Access = void 0;
|
|
4
|
+
var access_1 = require("./access");
|
|
5
|
+
Object.defineProperty(exports, "Access", { enumerable: true, get: function () { return access_1.Access; } });
|
|
6
|
+
var accessor_1 = require("./accessor");
|
|
7
|
+
Object.defineProperty(exports, "Accessor", { enumerable: true, get: function () { return accessor_1.Accessor; } });
|
|
8
|
+
var alias_1 = require("./alias");
|
|
9
|
+
Object.defineProperty(exports, "Alias", { enumerable: true, get: function () { return alias_1.Alias; } });
|
|
10
|
+
var behavioral_entity_1 = require("./behavioral_entity");
|
|
11
|
+
Object.defineProperty(exports, "BehavioralEntity", { enumerable: true, get: function () { return behavioral_entity_1.BehavioralEntity; } });
|
|
12
|
+
var class_1 = require("./class");
|
|
13
|
+
Object.defineProperty(exports, "Class", { enumerable: true, get: function () { return class_1.Class; } });
|
|
14
|
+
var comment_1 = require("./comment");
|
|
15
|
+
Object.defineProperty(exports, "Comment", { enumerable: true, get: function () { return comment_1.Comment; } });
|
|
16
|
+
var container_entity_1 = require("./container_entity");
|
|
17
|
+
Object.defineProperty(exports, "ContainerEntity", { enumerable: true, get: function () { return container_entity_1.ContainerEntity; } });
|
|
18
|
+
var concretisation_1 = require("./concretisation");
|
|
19
|
+
Object.defineProperty(exports, "Concretisation", { enumerable: true, get: function () { return concretisation_1.Concretisation; } });
|
|
20
|
+
var decorator_1 = require("./decorator");
|
|
21
|
+
Object.defineProperty(exports, "Decorator", { enumerable: true, get: function () { return decorator_1.Decorator; } });
|
|
22
|
+
var entity_1 = require("./entity");
|
|
23
|
+
Object.defineProperty(exports, "Entity", { enumerable: true, get: function () { return entity_1.Entity; } });
|
|
24
|
+
var enum_value_1 = require("./enum_value");
|
|
25
|
+
Object.defineProperty(exports, "EnumValue", { enumerable: true, get: function () { return enum_value_1.EnumValue; } });
|
|
26
|
+
var enum_1 = require("./enum");
|
|
27
|
+
Object.defineProperty(exports, "Enum", { enumerable: true, get: function () { return enum_1.Enum; } });
|
|
28
|
+
var property_1 = require("./property");
|
|
29
|
+
Object.defineProperty(exports, "Property", { enumerable: true, get: function () { return property_1.Property; } });
|
|
30
|
+
var function_1 = require("./function");
|
|
31
|
+
Object.defineProperty(exports, "Function", { enumerable: true, get: function () { return function_1.Function; } });
|
|
32
|
+
var import_clause_1 = require("./import_clause");
|
|
33
|
+
Object.defineProperty(exports, "ImportClause", { enumerable: true, get: function () { return import_clause_1.ImportClause; } });
|
|
34
|
+
var indexed_file_anchor_1 = require("./indexed_file_anchor");
|
|
35
|
+
Object.defineProperty(exports, "IndexedFileAnchor", { enumerable: true, get: function () { return indexed_file_anchor_1.IndexedFileAnchor; } });
|
|
36
|
+
var inheritance_1 = require("./inheritance");
|
|
37
|
+
Object.defineProperty(exports, "Inheritance", { enumerable: true, get: function () { return inheritance_1.Inheritance; } });
|
|
38
|
+
var interface_1 = require("./interface");
|
|
39
|
+
Object.defineProperty(exports, "Interface", { enumerable: true, get: function () { return interface_1.Interface; } });
|
|
40
|
+
var invocation_1 = require("./invocation");
|
|
41
|
+
Object.defineProperty(exports, "Invocation", { enumerable: true, get: function () { return invocation_1.Invocation; } });
|
|
42
|
+
var method_1 = require("./method");
|
|
43
|
+
Object.defineProperty(exports, "Method", { enumerable: true, get: function () { return method_1.Method; } });
|
|
44
|
+
var module_1 = require("./module");
|
|
45
|
+
Object.defineProperty(exports, "Module", { enumerable: true, get: function () { return module_1.Module; } });
|
|
46
|
+
var named_entity_1 = require("./named_entity");
|
|
47
|
+
Object.defineProperty(exports, "NamedEntity", { enumerable: true, get: function () { return named_entity_1.NamedEntity; } });
|
|
48
|
+
var parameter_type_1 = require("./parameter_type");
|
|
49
|
+
Object.defineProperty(exports, "ParameterType", { enumerable: true, get: function () { return parameter_type_1.ParameterType; } });
|
|
50
|
+
var parameter_1 = require("./parameter");
|
|
51
|
+
Object.defineProperty(exports, "Parameter", { enumerable: true, get: function () { return parameter_1.Parameter; } });
|
|
52
|
+
var parametric_class_1 = require("./parametric_class");
|
|
53
|
+
Object.defineProperty(exports, "ParametricClass", { enumerable: true, get: function () { return parametric_class_1.ParametricClass; } });
|
|
54
|
+
var parametric_interface_1 = require("./parametric_interface");
|
|
55
|
+
Object.defineProperty(exports, "ParametricInterface", { enumerable: true, get: function () { return parametric_interface_1.ParametricInterface; } });
|
|
56
|
+
var primitive_type_1 = require("./primitive_type");
|
|
57
|
+
Object.defineProperty(exports, "PrimitiveType", { enumerable: true, get: function () { return primitive_type_1.PrimitiveType; } });
|
|
58
|
+
var reference_1 = require("./reference");
|
|
59
|
+
Object.defineProperty(exports, "Reference", { enumerable: true, get: function () { return reference_1.Reference; } });
|
|
60
|
+
var scoping_entity_1 = require("./scoping_entity");
|
|
61
|
+
Object.defineProperty(exports, "ScopingEntity", { enumerable: true, get: function () { return scoping_entity_1.ScopingEntity; } });
|
|
62
|
+
var script_entity_1 = require("./script_entity");
|
|
63
|
+
Object.defineProperty(exports, "ScriptEntity", { enumerable: true, get: function () { return script_entity_1.ScriptEntity; } });
|
|
64
|
+
var source_anchor_1 = require("./source_anchor");
|
|
65
|
+
Object.defineProperty(exports, "SourceAnchor", { enumerable: true, get: function () { return source_anchor_1.SourceAnchor; } });
|
|
66
|
+
var source_language_1 = require("./source_language");
|
|
67
|
+
Object.defineProperty(exports, "SourceLanguage", { enumerable: true, get: function () { return source_language_1.SourceLanguage; } });
|
|
68
|
+
var sourced_entity_1 = require("./sourced_entity");
|
|
69
|
+
Object.defineProperty(exports, "SourcedEntity", { enumerable: true, get: function () { return sourced_entity_1.SourcedEntity; } });
|
|
70
|
+
var structural_entity_1 = require("./structural_entity");
|
|
71
|
+
Object.defineProperty(exports, "StructuralEntity", { enumerable: true, get: function () { return structural_entity_1.StructuralEntity; } });
|
|
72
|
+
var type_1 = require("./type");
|
|
73
|
+
Object.defineProperty(exports, "Type", { enumerable: true, get: function () { return type_1.Type; } });
|
|
74
|
+
var variable_1 = require("./variable");
|
|
75
|
+
Object.defineProperty(exports, "Variable", { enumerable: true, get: function () { return variable_1.Variable; } });
|
|
76
|
+
var parametric_function_1 = require("./parametric_function");
|
|
77
|
+
Object.defineProperty(exports, "ParametricFunction", { enumerable: true, get: function () { return parametric_function_1.ParametricFunction; } });
|
|
78
|
+
var parametric_method_1 = require("./parametric_method");
|
|
79
|
+
Object.defineProperty(exports, "ParametricMethod", { enumerable: true, get: function () { return parametric_method_1.ParametricMethod; } });
|
|
80
|
+
var arrow_function_1 = require("./arrow_function");
|
|
81
|
+
Object.defineProperty(exports, "ArrowFunction", { enumerable: true, get: function () { return arrow_function_1.ArrowFunction; } });
|
|
82
|
+
var parametric_arrow_function_1 = require("./parametric_arrow_function");
|
|
83
|
+
Object.defineProperty(exports, "ParametricArrowFunction", { enumerable: true, get: function () { return parametric_arrow_function_1.ParametricArrowFunction; } });
|
|
84
|
+
var parameter_concretisation_1 = require("./parameter_concretisation");
|
|
85
|
+
Object.defineProperty(exports, "ParameterConcretisation", { enumerable: true, get: function () { return parameter_concretisation_1.ParameterConcretisation; } });
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBa0M7QUFBekIsZ0dBQUEsTUFBTSxPQUFBO0FBQ2YsdUNBQXNDO0FBQTdCLG9HQUFBLFFBQVEsT0FBQTtBQUNqQixpQ0FBZ0M7QUFBdkIsOEZBQUEsS0FBSyxPQUFBO0FBQ2QseURBQXVEO0FBQTlDLHFIQUFBLGdCQUFnQixPQUFBO0FBQ3pCLGlDQUFnQztBQUF2Qiw4RkFBQSxLQUFLLE9BQUE7QUFDZCxxQ0FBb0M7QUFBM0Isa0dBQUEsT0FBTyxPQUFBO0FBQ2hCLHVEQUFxRDtBQUE1QyxtSEFBQSxlQUFlLE9BQUE7QUFDeEIsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2Qix5Q0FBd0M7QUFBL0Isc0dBQUEsU0FBUyxPQUFBO0FBQ2xCLG1DQUFrQztBQUF6QixnR0FBQSxNQUFNLE9BQUE7QUFDZiwyQ0FBeUM7QUFBaEMsdUdBQUEsU0FBUyxPQUFBO0FBQ2xCLCtCQUE4QjtBQUFyQiw0RkFBQSxJQUFJLE9BQUE7QUFDYix1Q0FBc0M7QUFBN0Isb0dBQUEsUUFBUSxPQUFBO0FBQ2pCLHVDQUFzQztBQUE3QixvR0FBQSxRQUFRLE9BQUE7QUFDakIsaURBQStDO0FBQXRDLDZHQUFBLFlBQVksT0FBQTtBQUNyQiw2REFBMEQ7QUFBakQsd0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsNkNBQTRDO0FBQW5DLDBHQUFBLFdBQVcsT0FBQTtBQUNwQix5Q0FBd0M7QUFBL0Isc0dBQUEsU0FBUyxPQUFBO0FBQ2xCLDJDQUEwQztBQUFqQyx3R0FBQSxVQUFVLE9BQUE7QUFDbkIsbUNBQWtDO0FBQXpCLGdHQUFBLE1BQU0sT0FBQTtBQUNmLG1DQUFrQztBQUF6QixnR0FBQSxNQUFNLE9BQUE7QUFDZiwrQ0FBNkM7QUFBcEMsMkdBQUEsV0FBVyxPQUFBO0FBQ3BCLG1EQUFpRDtBQUF4QywrR0FBQSxhQUFhLE9BQUE7QUFDdEIseUNBQXdDO0FBQS9CLHNHQUFBLFNBQVMsT0FBQTtBQUNsQix1REFBcUQ7QUFBNUMsbUhBQUEsZUFBZSxPQUFBO0FBQ3hCLCtEQUE2RDtBQUFwRCwySEFBQSxtQkFBbUIsT0FBQTtBQUM1QixtREFBaUQ7QUFBeEMsK0dBQUEsYUFBYSxPQUFBO0FBQ3RCLHlDQUF3QztBQUEvQixzR0FBQSxTQUFTLE9BQUE7QUFDbEIsbURBQWlEO0FBQXhDLCtHQUFBLGFBQWEsT0FBQTtBQUN0QixpREFBK0M7QUFBdEMsNkdBQUEsWUFBWSxPQUFBO0FBQ3JCLGlEQUErQztBQUF0Qyw2R0FBQSxZQUFZLE9BQUE7QUFDckIscURBQW1EO0FBQTFDLGlIQUFBLGNBQWMsT0FBQTtBQUN2QixtREFBaUQ7QUFBeEMsK0dBQUEsYUFBYSxPQUFBO0FBQ3RCLHlEQUF1RDtBQUE5QyxxSEFBQSxnQkFBZ0IsT0FBQTtBQUN6QiwrQkFBOEI7QUFBckIsNEZBQUEsSUFBSSxPQUFBO0FBQ2IsdUNBQXNDO0FBQTdCLG9HQUFBLFFBQVEsT0FBQTtBQUNqQiw2REFBMkQ7QUFBbEQseUhBQUEsa0JBQWtCLE9BQUE7QUFDM0IseURBQXVEO0FBQTlDLHFIQUFBLGdCQUFnQixPQUFBO0FBQ3pCLG1EQUFpRDtBQUF4QywrR0FBQSxhQUFhLE9BQUE7QUFDdEIseUVBQXNFO0FBQTdELG9JQUFBLHVCQUF1QixPQUFBO0FBQ2hDLHVFQUFxRTtBQUE1RCxtSUFBQSx1QkFBdUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEFjY2VzcyB9IGZyb20gXCIuL2FjY2Vzc1wiO1xyXG5leHBvcnQgeyBBY2Nlc3NvciB9IGZyb20gXCIuL2FjY2Vzc29yXCI7XHJcbmV4cG9ydCB7IEFsaWFzIH0gZnJvbSBcIi4vYWxpYXNcIjtcclxuZXhwb3J0IHsgQmVoYXZpb3JhbEVudGl0eSB9IGZyb20gXCIuL2JlaGF2aW9yYWxfZW50aXR5XCI7XHJcbmV4cG9ydCB7IENsYXNzIH0gZnJvbSBcIi4vY2xhc3NcIjtcclxuZXhwb3J0IHsgQ29tbWVudCB9IGZyb20gXCIuL2NvbW1lbnRcIjtcclxuZXhwb3J0IHsgQ29udGFpbmVyRW50aXR5IH0gZnJvbSBcIi4vY29udGFpbmVyX2VudGl0eVwiO1xyXG5leHBvcnQgeyBDb25jcmV0aXNhdGlvbiB9IGZyb20gXCIuL2NvbmNyZXRpc2F0aW9uXCI7XHJcbmV4cG9ydCB7IERlY29yYXRvciB9IGZyb20gXCIuL2RlY29yYXRvclwiO1xyXG5leHBvcnQgeyBFbnRpdHkgfSBmcm9tIFwiLi9lbnRpdHlcIjtcclxuZXhwb3J0IHsgRW51bVZhbHVlIH0gZnJvbSBcIi4vZW51bV92YWx1ZVwiO1xyXG5leHBvcnQgeyBFbnVtIH0gZnJvbSBcIi4vZW51bVwiO1xyXG5leHBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gXCIuL3Byb3BlcnR5XCI7XHJcbmV4cG9ydCB7IEZ1bmN0aW9uIH0gZnJvbSBcIi4vZnVuY3Rpb25cIjtcclxuZXhwb3J0IHsgSW1wb3J0Q2xhdXNlIH0gZnJvbSBcIi4vaW1wb3J0X2NsYXVzZVwiO1xyXG5leHBvcnQgeyBJbmRleGVkRmlsZUFuY2hvciB9IGZyb20gXCIuL2luZGV4ZWRfZmlsZV9hbmNob3JcIjtcclxuZXhwb3J0IHsgSW5oZXJpdGFuY2UgfSBmcm9tIFwiLi9pbmhlcml0YW5jZVwiO1xyXG5leHBvcnQgeyBJbnRlcmZhY2UgfSBmcm9tIFwiLi9pbnRlcmZhY2VcIjtcclxuZXhwb3J0IHsgSW52b2NhdGlvbiB9IGZyb20gXCIuL2ludm9jYXRpb25cIjtcclxuZXhwb3J0IHsgTWV0aG9kIH0gZnJvbSBcIi4vbWV0aG9kXCI7XHJcbmV4cG9ydCB7IE1vZHVsZSB9IGZyb20gXCIuL21vZHVsZVwiO1xyXG5leHBvcnQgeyBOYW1lZEVudGl0eSB9IGZyb20gXCIuL25hbWVkX2VudGl0eVwiO1xyXG5leHBvcnQgeyBQYXJhbWV0ZXJUeXBlIH0gZnJvbSBcIi4vcGFyYW1ldGVyX3R5cGVcIjtcclxuZXhwb3J0IHsgUGFyYW1ldGVyIH0gZnJvbSBcIi4vcGFyYW1ldGVyXCI7XHJcbmV4cG9ydCB7IFBhcmFtZXRyaWNDbGFzcyB9IGZyb20gXCIuL3BhcmFtZXRyaWNfY2xhc3NcIjtcclxuZXhwb3J0IHsgUGFyYW1ldHJpY0ludGVyZmFjZSB9IGZyb20gXCIuL3BhcmFtZXRyaWNfaW50ZXJmYWNlXCI7XHJcbmV4cG9ydCB7IFByaW1pdGl2ZVR5cGUgfSBmcm9tIFwiLi9wcmltaXRpdmVfdHlwZVwiO1xyXG5leHBvcnQgeyBSZWZlcmVuY2UgfSBmcm9tIFwiLi9yZWZlcmVuY2VcIjtcclxuZXhwb3J0IHsgU2NvcGluZ0VudGl0eSB9IGZyb20gXCIuL3Njb3BpbmdfZW50aXR5XCI7XHJcbmV4cG9ydCB7IFNjcmlwdEVudGl0eSB9IGZyb20gXCIuL3NjcmlwdF9lbnRpdHlcIjtcclxuZXhwb3J0IHsgU291cmNlQW5jaG9yIH0gZnJvbSBcIi4vc291cmNlX2FuY2hvclwiO1xyXG5leHBvcnQgeyBTb3VyY2VMYW5ndWFnZSB9IGZyb20gXCIuL3NvdXJjZV9sYW5ndWFnZVwiO1xyXG5leHBvcnQgeyBTb3VyY2VkRW50aXR5IH0gZnJvbSBcIi4vc291cmNlZF9lbnRpdHlcIjtcclxuZXhwb3J0IHsgU3RydWN0dXJhbEVudGl0eSB9IGZyb20gXCIuL3N0cnVjdHVyYWxfZW50aXR5XCI7XHJcbmV4cG9ydCB7IFR5cGUgfSBmcm9tIFwiLi90eXBlXCI7XHJcbmV4cG9ydCB7IFZhcmlhYmxlIH0gZnJvbSBcIi4vdmFyaWFibGVcIjtcclxuZXhwb3J0IHsgUGFyYW1ldHJpY0Z1bmN0aW9uIH0gZnJvbSBcIi4vcGFyYW1ldHJpY19mdW5jdGlvblwiO1xyXG5leHBvcnQgeyBQYXJhbWV0cmljTWV0aG9kIH0gZnJvbSBcIi4vcGFyYW1ldHJpY19tZXRob2RcIjtcclxuZXhwb3J0IHsgQXJyb3dGdW5jdGlvbiB9IGZyb20gXCIuL2Fycm93X2Z1bmN0aW9uXCI7XHJcbmV4cG9ydCB7IFBhcmFtZXRyaWNBcnJvd0Z1bmN0aW9uIH0gZnJvbSBcIi4vcGFyYW1ldHJpY19hcnJvd19mdW5jdGlvblwiO1xyXG5leHBvcnQgeyBQYXJhbWV0ZXJDb25jcmV0aXNhdGlvbiB9IGZyb20gXCIuL3BhcmFtZXRlcl9jb25jcmV0aXNhdGlvblwiO1xyXG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IndexedFileAnchor = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const source_anchor_1 = require("./source_anchor");
|
|
6
|
+
class IndexedFileAnchor extends source_anchor_1.SourceAnchor {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("IndexedFileAnchor", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("startPos", this.startPos);
|
|
15
|
+
exporter.addProperty("endPos", this.endPos);
|
|
16
|
+
exporter.addProperty("fileName", this.fileName);
|
|
17
|
+
}
|
|
18
|
+
get startPos() {
|
|
19
|
+
return this._startPos;
|
|
20
|
+
}
|
|
21
|
+
set startPos(startPos) {
|
|
22
|
+
this._startPos = startPos;
|
|
23
|
+
}
|
|
24
|
+
get endPos() {
|
|
25
|
+
return this._endPos;
|
|
26
|
+
}
|
|
27
|
+
set endPos(endPos) {
|
|
28
|
+
this._endPos = endPos;
|
|
29
|
+
}
|
|
30
|
+
get fileName() {
|
|
31
|
+
return this._fileName;
|
|
32
|
+
}
|
|
33
|
+
set fileName(fileName) {
|
|
34
|
+
this._fileName = fileName;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.IndexedFileAnchor = IndexedFileAnchor;
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXhlZF9maWxlX2FuY2hvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L2luZGV4ZWRfZmlsZV9hbmNob3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELG1EQUErQztBQUUvQyxNQUFhLGlCQUFrQixTQUFRLDRCQUFZO0lBTTFDLE9BQU87UUFDWixNQUFNLElBQUksR0FBc0IsSUFBSSx1Q0FBaUIsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQTJCO1FBQ3hELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUMsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUFnQjtRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFjO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksUUFBUSxDQUFDLFFBQWdCO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO0lBQzlCLENBQUM7Q0FDSjtBQTFDRCw4Q0EwQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFNvdXJjZUFuY2hvciB9IGZyb20gXCIuL3NvdXJjZV9hbmNob3JcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBJbmRleGVkRmlsZUFuY2hvciBleHRlbmRzIFNvdXJjZUFuY2hvciB7XHJcblxyXG4gIHByaXZhdGUgX3N0YXJ0UG9zITogbnVtYmVyO1xyXG4gIHByaXZhdGUgX2VuZFBvcyE6IG51bWJlcjtcclxuICBwcml2YXRlIF9maWxlTmFtZSE6IHN0cmluZztcclxuXHJcbiAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGpzb246IEZhbWl4SlNPTkV4cG9ydGVyID0gbmV3IEZhbWl4SlNPTkV4cG9ydGVyKFwiSW5kZXhlZEZpbGVBbmNob3JcIiwgdGhpcyk7XHJcbiAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgcmV0dXJuIGpzb24uZ2V0SlNPTigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgc3VwZXIuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXIpO1xyXG4gICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJzdGFydFBvc1wiLCB0aGlzLnN0YXJ0UG9zKTtcclxuICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiZW5kUG9zXCIsIHRoaXMuZW5kUG9zKTtcclxuICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiZmlsZU5hbWVcIiwgdGhpcy5maWxlTmFtZSk7XHJcbiAgfVxyXG5cclxuICAgIGdldCBzdGFydFBvcygpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zdGFydFBvcztcclxuICAgIH1cclxuXHJcbiAgICBzZXQgc3RhcnRQb3Moc3RhcnRQb3M6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuX3N0YXJ0UG9zID0gc3RhcnRQb3M7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGVuZFBvcygpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9lbmRQb3M7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGVuZFBvcyhlbmRQb3M6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuX2VuZFBvcyA9IGVuZFBvcztcclxuICAgIH1cclxuXHJcbiAgICBnZXQgZmlsZU5hbWUoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZmlsZU5hbWU7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGZpbGVOYW1lKGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9maWxlTmFtZSA9IGZpbGVOYW1lO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Inheritance = void 0;
|
|
4
|
+
const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
|
|
5
|
+
const entity_1 = require("./entity");
|
|
6
|
+
class Inheritance extends entity_1.Entity {
|
|
7
|
+
getJSON() {
|
|
8
|
+
const json = new famix_JSON_exporter_1.FamixJSONExporter("Inheritance", this);
|
|
9
|
+
this.addPropertiesToExporter(json);
|
|
10
|
+
return json.getJSON();
|
|
11
|
+
}
|
|
12
|
+
addPropertiesToExporter(exporter) {
|
|
13
|
+
super.addPropertiesToExporter(exporter);
|
|
14
|
+
exporter.addProperty("superclass", this.superclass);
|
|
15
|
+
exporter.addProperty("subclass", this.subclass);
|
|
16
|
+
}
|
|
17
|
+
get superclass() {
|
|
18
|
+
return this._superclass;
|
|
19
|
+
}
|
|
20
|
+
set superclass(superclass) {
|
|
21
|
+
this._superclass = superclass;
|
|
22
|
+
superclass.addSubInheritance(this);
|
|
23
|
+
}
|
|
24
|
+
get subclass() {
|
|
25
|
+
return this._subclass;
|
|
26
|
+
}
|
|
27
|
+
set subclass(subclass) {
|
|
28
|
+
this._subclass = subclass;
|
|
29
|
+
subclass.addSuperInheritance(this);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.Inheritance = Inheritance;
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5oZXJpdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9pbmhlcml0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFFOUQscUNBQWtDO0FBR2xDLE1BQWEsV0FBWSxTQUFRLGVBQU07SUFLNUIsT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQTJCO1FBQ3RELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksVUFBVSxDQUFDLFVBQTZCO1FBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBQzlCLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUEyQjtRQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixRQUFRLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztDQUNKO0FBbENELGtDQWtDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhbWl4SlNPTkV4cG9ydGVyIH0gZnJvbSBcIi4uLy4uL2ZhbWl4X0pTT05fZXhwb3J0ZXJcIjtcclxuaW1wb3J0IHsgQ2xhc3MgfSBmcm9tIFwiLi9jbGFzc1wiO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tIFwiLi9lbnRpdHlcIjtcclxuaW1wb3J0IHsgSW50ZXJmYWNlIH0gZnJvbSBcIi4vaW50ZXJmYWNlXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgSW5oZXJpdGFuY2UgZXh0ZW5kcyBFbnRpdHkge1xyXG5cclxuICAgIHByaXZhdGUgX3N1cGVyY2xhc3MhOiBDbGFzcyB8IEludGVyZmFjZTtcclxuICAgIHByaXZhdGUgX3N1YmNsYXNzITogQ2xhc3MgfCBJbnRlcmZhY2U7XHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIkluaGVyaXRhbmNlXCIsIHRoaXMpO1xyXG4gICAgICAgIHRoaXMuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoanNvbik7XHJcbiAgICAgICAgcmV0dXJuIGpzb24uZ2V0SlNPTigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcjogRmFtaXhKU09ORXhwb3J0ZXIpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcik7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJzdXBlcmNsYXNzXCIsIHRoaXMuc3VwZXJjbGFzcyk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJzdWJjbGFzc1wiLCB0aGlzLnN1YmNsYXNzKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgc3VwZXJjbGFzcygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc3VwZXJjbGFzcztcclxuICAgIH1cclxuXHJcbiAgICBzZXQgc3VwZXJjbGFzcyhzdXBlcmNsYXNzOiBDbGFzcyB8IEludGVyZmFjZSkge1xyXG4gICAgICAgIHRoaXMuX3N1cGVyY2xhc3MgPSBzdXBlcmNsYXNzO1xyXG4gICAgICAgIHN1cGVyY2xhc3MuYWRkU3ViSW5oZXJpdGFuY2UodGhpcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHN1YmNsYXNzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zdWJjbGFzcztcclxuICAgIH1cclxuXHJcbiAgICBzZXQgc3ViY2xhc3Moc3ViY2xhc3M6IENsYXNzIHwgSW50ZXJmYWNlKSB7XHJcbiAgICAgICAgdGhpcy5fc3ViY2xhc3MgPSBzdWJjbGFzcztcclxuICAgICAgICBzdWJjbGFzcy5hZGRTdXBlckluaGVyaXRhbmNlKHRoaXMpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|