ts2famix 2.1.0-beta.2 → 3.0.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 (192) hide show
  1. package/.eslintrc.json +24 -24
  2. package/LICENSE +24 -24
  3. package/README.md +78 -78
  4. package/dist/analyze.js +3 -3
  5. package/dist/analyze_functions/process_functions.js +92 -62
  6. package/dist/famix_functions/EntityDictionary.js +672 -597
  7. package/dist/famix_functions/helpers_creation.js +18 -12
  8. package/dist/fqn.js +351 -18
  9. package/dist/lib/famix/famix_JSON_exporter.js +1 -1
  10. package/dist/lib/famix/famix_base_element.js +1 -1
  11. package/dist/lib/famix/famix_repository.js +14 -5
  12. package/dist/lib/famix/index.js +1 -1
  13. package/dist/lib/famix/model/famix/access.js +1 -1
  14. package/dist/lib/famix/model/famix/accessor.js +1 -1
  15. package/dist/lib/famix/model/famix/alias.js +1 -1
  16. package/dist/lib/famix/model/famix/arrow_function.js +1 -1
  17. package/dist/lib/famix/model/famix/behavioral_entity.js +1 -1
  18. package/dist/lib/famix/model/famix/class.js +1 -1
  19. package/dist/lib/famix/model/famix/comment.js +1 -1
  20. package/dist/lib/famix/model/famix/concretisation.js +1 -1
  21. package/dist/lib/famix/model/famix/container_entity.js +1 -1
  22. package/dist/lib/famix/model/famix/decorator.js +1 -1
  23. package/dist/lib/famix/model/famix/entity.js +1 -1
  24. package/dist/lib/famix/model/famix/enum.js +1 -1
  25. package/dist/lib/famix/model/famix/enum_value.js +1 -1
  26. package/dist/lib/famix/model/famix/function.js +1 -1
  27. package/dist/lib/famix/model/famix/import_clause.js +1 -1
  28. package/dist/lib/famix/model/famix/index.js +1 -1
  29. package/dist/lib/famix/model/famix/indexed_file_anchor.js +1 -1
  30. package/dist/lib/famix/model/famix/inheritance.js +1 -1
  31. package/dist/lib/famix/model/famix/interface.js +1 -1
  32. package/dist/lib/famix/model/famix/invocation.js +1 -1
  33. package/dist/lib/famix/model/famix/method.js +1 -1
  34. package/dist/lib/famix/model/famix/module.js +2 -2
  35. package/dist/lib/famix/model/famix/named_entity.js +1 -1
  36. package/dist/lib/famix/model/famix/parameter.js +1 -1
  37. package/dist/lib/famix/model/famix/parameter_concretisation.js +1 -1
  38. package/dist/lib/famix/model/famix/parameter_type.js +1 -1
  39. package/dist/lib/famix/model/famix/parametric_arrow_function.js +1 -1
  40. package/dist/lib/famix/model/famix/parametric_class.js +1 -1
  41. package/dist/lib/famix/model/famix/parametric_function.js +1 -1
  42. package/dist/lib/famix/model/famix/parametric_interface.js +1 -1
  43. package/dist/lib/famix/model/famix/parametric_method.js +1 -1
  44. package/dist/lib/famix/model/famix/primitive_type.js +1 -1
  45. package/dist/lib/famix/model/famix/property.js +1 -1
  46. package/dist/lib/famix/model/famix/reference.js +1 -1
  47. package/dist/lib/famix/model/famix/scoping_entity.js +1 -1
  48. package/dist/lib/famix/model/famix/script_entity.js +1 -1
  49. package/dist/lib/famix/model/famix/source_anchor.js +1 -1
  50. package/dist/lib/famix/model/famix/source_language.js +1 -1
  51. package/dist/lib/famix/model/famix/sourced_entity.js +1 -1
  52. package/dist/lib/famix/model/famix/structural_entity.js +1 -1
  53. package/dist/lib/famix/model/famix/type.js +1 -1
  54. package/dist/lib/famix/model/famix/variable.js +1 -1
  55. package/dist/lib/ts-complex/cyclomatic-service.js +1 -1
  56. package/dist/refactorer/refactor-getter-setter.js +1 -1
  57. package/dist/ts2famix-cli-wrapper.js +1 -1
  58. package/dist/ts2famix-cli.js +1 -1
  59. package/doc-uml/famix-typescript-model.puml +619 -607
  60. package/doc-uml/famix-typescript-model.svg +1 -1
  61. package/eslint.config.mjs +28 -28
  62. package/jest.config.json +1 -1
  63. package/package.json +70 -70
  64. package/src/analyze.ts +120 -120
  65. package/src/analyze_functions/process_functions.ts +1069 -1040
  66. package/src/famix_functions/EntityDictionary.ts +2061 -2016
  67. package/src/famix_functions/helpers_creation.ts +143 -135
  68. package/src/fqn.ts +416 -50
  69. package/src/generate_uml.sh +20 -20
  70. package/src/lib/famix/License.md +22 -22
  71. package/src/lib/famix/famix_JSON_exporter.ts +56 -56
  72. package/src/lib/famix/famix_base_element.ts +22 -22
  73. package/src/lib/famix/famix_repository.ts +288 -278
  74. package/src/lib/famix/index.ts +8 -8
  75. package/src/lib/famix/model/famix/access.ts +50 -50
  76. package/src/lib/famix/model/famix/accessor.ts +15 -15
  77. package/src/lib/famix/model/famix/alias.ts +39 -39
  78. package/src/lib/famix/model/famix/arrow_function.ts +15 -15
  79. package/src/lib/famix/model/famix/behavioral_entity.ts +97 -97
  80. package/src/lib/famix/model/famix/class.ts +85 -85
  81. package/src/lib/famix/model/famix/comment.ts +47 -47
  82. package/src/lib/famix/model/famix/concretisation.ts +40 -40
  83. package/src/lib/famix/model/famix/container_entity.ts +160 -160
  84. package/src/lib/famix/model/famix/decorator.ts +37 -37
  85. package/src/lib/famix/model/famix/entity.ts +15 -15
  86. package/src/lib/famix/model/famix/enum.ts +30 -30
  87. package/src/lib/famix/model/famix/enum_value.ts +28 -28
  88. package/src/lib/famix/model/famix/function.ts +15 -15
  89. package/src/lib/famix/model/famix/import_clause.ts +51 -51
  90. package/src/lib/famix/model/famix/index.ts +41 -41
  91. package/src/lib/famix/model/famix/indexed_file_anchor.ts +46 -46
  92. package/src/lib/famix/model/famix/inheritance.ts +40 -40
  93. package/src/lib/famix/model/famix/interface.ts +75 -75
  94. package/src/lib/famix/model/famix/invocation.ts +65 -65
  95. package/src/lib/famix/model/famix/method.ts +89 -89
  96. package/src/lib/famix/model/famix/module.ts +71 -71
  97. package/src/lib/famix/model/famix/named_entity.ts +95 -95
  98. package/src/lib/famix/model/famix/parameter.ts +28 -28
  99. package/src/lib/famix/model/famix/parameter_concretisation.ts +51 -51
  100. package/src/lib/famix/model/famix/parameter_type.ts +58 -58
  101. package/src/lib/famix/model/famix/parametric_arrow_function.ts +32 -32
  102. package/src/lib/famix/model/famix/parametric_class.ts +49 -49
  103. package/src/lib/famix/model/famix/parametric_function.ts +32 -32
  104. package/src/lib/famix/model/famix/parametric_interface.ts +49 -49
  105. package/src/lib/famix/model/famix/parametric_method.ts +32 -32
  106. package/src/lib/famix/model/famix/primitive_type.ts +15 -15
  107. package/src/lib/famix/model/famix/property.ts +94 -94
  108. package/src/lib/famix/model/famix/reference.ts +40 -40
  109. package/src/lib/famix/model/famix/scoping_entity.ts +35 -35
  110. package/src/lib/famix/model/famix/script_entity.ts +34 -34
  111. package/src/lib/famix/model/famix/source_anchor.ts +30 -30
  112. package/src/lib/famix/model/famix/source_language.ts +35 -35
  113. package/src/lib/famix/model/famix/sourced_entity.ts +70 -70
  114. package/src/lib/famix/model/famix/structural_entity.ts +43 -43
  115. package/src/lib/famix/model/famix/type.ts +87 -87
  116. package/src/lib/famix/model/famix/variable.ts +27 -27
  117. package/src/lib/famix/package.json +28 -28
  118. package/src/lib/ts-complex/cyclomatic-service.ts +83 -83
  119. package/src/refactorer/refactor-getter-setter.ts +140 -140
  120. package/src/ts2famix-cli-wrapper.ts +21 -21
  121. package/src/ts2famix-cli.ts +60 -60
  122. package/tsconfig.check-tests.json +14 -14
  123. package/tsconfig.json +73 -72
  124. package/.vscode/settings.json +0 -4
  125. package/TODO +0 -1
  126. package/arwea-fix.json +0 -1
  127. package/bogus.ts +0 -3
  128. package/class-diagram.puml +0 -792
  129. package/debug.txt +0 -13332
  130. package/debuglog.txt +0 -12073
  131. package/dist/famix2puml.js +0 -126
  132. package/dist/getClasses-arrow-body.js +0 -43
  133. package/dist/lib/famix/src/famix_JSON_exporter.js +0 -55
  134. package/dist/lib/famix/src/famix_base_element.js +0 -18
  135. package/dist/lib/famix/src/famix_repository.js +0 -224
  136. package/dist/lib/famix/src/index.js +0 -31
  137. package/dist/lib/famix/src/model/famix/access.js +0 -40
  138. package/dist/lib/famix/src/model/famix/accessor.js +0 -17
  139. package/dist/lib/famix/src/model/famix/alias.js +0 -33
  140. package/dist/lib/famix/src/model/famix/arrowFunction.js +0 -17
  141. package/dist/lib/famix/src/model/famix/arrow_function.js +0 -17
  142. package/dist/lib/famix/src/model/famix/behavioral_entity.js +0 -79
  143. package/dist/lib/famix/src/model/famix/class.js +0 -71
  144. package/dist/lib/famix/src/model/famix/comment.js +0 -39
  145. package/dist/lib/famix/src/model/famix/concretisation.js +0 -31
  146. package/dist/lib/famix/src/model/famix/container_entity.js +0 -126
  147. package/dist/lib/famix/src/model/famix/decorator.js +0 -32
  148. package/dist/lib/famix/src/model/famix/entity.js +0 -17
  149. package/dist/lib/famix/src/model/famix/enum.js +0 -31
  150. package/dist/lib/famix/src/model/famix/enum_value.js +0 -25
  151. package/dist/lib/famix/src/model/famix/function.js +0 -17
  152. package/dist/lib/famix/src/model/famix/implicit_variable.js +0 -17
  153. package/dist/lib/famix/src/model/famix/import_clause.js +0 -41
  154. package/dist/lib/famix/src/model/famix/index.js +0 -86
  155. package/dist/lib/famix/src/model/famix/indexed_file_anchor.js +0 -38
  156. package/dist/lib/famix/src/model/famix/inheritance.js +0 -33
  157. package/dist/lib/famix/src/model/famix/interface.js +0 -64
  158. package/dist/lib/famix/src/model/famix/invocation.js +0 -54
  159. package/dist/lib/famix/src/model/famix/method.js +0 -67
  160. package/dist/lib/famix/src/model/famix/module.js +0 -60
  161. package/dist/lib/famix/src/model/famix/named_entity.js +0 -78
  162. package/dist/lib/famix/src/model/famix/parameter.js +0 -25
  163. package/dist/lib/famix/src/model/famix/parameterConcretisation.js +0 -44
  164. package/dist/lib/famix/src/model/famix/parameter_concretisation.js +0 -44
  165. package/dist/lib/famix/src/model/famix/parameter_type.js +0 -45
  166. package/dist/lib/famix/src/model/famix/parametricArrowFunction.js +0 -29
  167. package/dist/lib/famix/src/model/famix/parametric_arrow_function.js +0 -31
  168. package/dist/lib/famix/src/model/famix/parametric_class.js +0 -44
  169. package/dist/lib/famix/src/model/famix/parametric_function.js +0 -31
  170. package/dist/lib/famix/src/model/famix/parametric_interface.js +0 -44
  171. package/dist/lib/famix/src/model/famix/parametric_method.js +0 -31
  172. package/dist/lib/famix/src/model/famix/primitive_type.js +0 -17
  173. package/dist/lib/famix/src/model/famix/property.js +0 -73
  174. package/dist/lib/famix/src/model/famix/reference.js +0 -33
  175. package/dist/lib/famix/src/model/famix/scoping_entity.js +0 -36
  176. package/dist/lib/famix/src/model/famix/script_entity.js +0 -29
  177. package/dist/lib/famix/src/model/famix/source_anchor.js +0 -27
  178. package/dist/lib/famix/src/model/famix/source_language.js +0 -35
  179. package/dist/lib/famix/src/model/famix/sourced_entity.js +0 -60
  180. package/dist/lib/famix/src/model/famix/structural_entity.js +0 -39
  181. package/dist/lib/famix/src/model/famix/text_anchor.js +0 -38
  182. package/dist/lib/famix/src/model/famix/type.js +0 -73
  183. package/dist/lib/famix/src/model/famix/variable.js +0 -24
  184. package/fqn-model.json +0 -1
  185. package/iterateGenericTypes.ts +0 -69
  186. package/out/class-diagram/class-diagram.svg +0 -1
  187. package/sample.json +0 -1
  188. package/sample.ts +0 -1
  189. package/stats.txt +0 -3091
  190. package/tabby-debug-output.txt +0 -19433
  191. package/ts2famix.log +0 -22656
  192. package/validate-references.js +0 -103
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Reference = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const entity_1 = require("./entity");
6
- class Reference extends entity_1.Entity {
7
- getJSON() {
8
- const json = new famix_JSON_exporter_1.FamixJSONExporter("Reference", this);
9
- this.addPropertiesToExporter(json);
10
- return json.getJSON();
11
- }
12
- addPropertiesToExporter(exporter) {
13
- super.addPropertiesToExporter(exporter);
14
- exporter.addProperty("source", this.source);
15
- exporter.addProperty("target", this.target);
16
- }
17
- get source() {
18
- return this._source;
19
- }
20
- set source(source) {
21
- this._source = source;
22
- source.addOutgoingReference(this);
23
- }
24
- get target() {
25
- return this._target;
26
- }
27
- set target(target) {
28
- this._target = target;
29
- target.addIncomingReference(this);
30
- }
31
- }
32
- exports.Reference = Reference;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9mYW1peC9zcmMvbW9kZWwvZmFtaXgvcmVmZXJlbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1FQUE4RDtBQUc5RCxxQ0FBa0M7QUFFbEMsTUFBYSxTQUFVLFNBQVEsZUFBTTtJQUsxQixPQUFPO1FBQ1YsTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDdEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxRQUFRLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUMsTUFBdUI7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsTUFBTSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQVk7UUFDbkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsTUFBTSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDSjtBQWxDRCw4QkFrQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFR5cGUgfSBmcm9tIFwiLi90eXBlXCI7XHJcbmltcG9ydCB7IENvbnRhaW5lckVudGl0eSB9IGZyb20gXCIuL2NvbnRhaW5lcl9lbnRpdHlcIjtcclxuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSBcIi4vZW50aXR5XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlIGV4dGVuZHMgRW50aXR5IHtcclxuXHJcbiAgICBwcml2YXRlIF9zb3VyY2UhOiBDb250YWluZXJFbnRpdHk7XHJcbiAgICBwcml2YXRlIF90YXJnZXQhOiBUeXBlO1xyXG5cclxuICAgIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJSZWZlcmVuY2VcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcInNvdXJjZVwiLCB0aGlzLnNvdXJjZSk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJ0YXJnZXRcIiwgdGhpcy50YXJnZXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBzb3VyY2UoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgc291cmNlKHNvdXJjZTogQ29udGFpbmVyRW50aXR5KSB7XHJcbiAgICAgICAgdGhpcy5fc291cmNlID0gc291cmNlO1xyXG4gICAgICAgIHNvdXJjZS5hZGRPdXRnb2luZ1JlZmVyZW5jZSh0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgdGFyZ2V0KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl90YXJnZXQ7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IHRhcmdldCh0YXJnZXQ6IFR5cGUpIHtcclxuICAgICAgICB0aGlzLl90YXJnZXQgPSB0YXJnZXQ7XHJcbiAgICAgICAgdGFyZ2V0LmFkZEluY29taW5nUmVmZXJlbmNlKHRoaXMpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScopingEntity = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const container_entity_1 = require("./container_entity");
6
- const analyze_1 = require("../../../../../analyze");
7
- class ScopingEntity extends container_entity_1.ContainerEntity {
8
- constructor() {
9
- super(...arguments);
10
- this._modules = new Set();
11
- }
12
- addModule(childModule) {
13
- if (!this._modules.has(childModule)) {
14
- analyze_1.logger.debug("Adding module " + childModule.name + " to " + this.name);
15
- this._modules.add(childModule);
16
- childModule.parentScope = this;
17
- }
18
- else {
19
- analyze_1.logger.debug("Module " + childModule.name + " already added to " + this.name);
20
- }
21
- }
22
- getJSON() {
23
- const json = new famix_JSON_exporter_1.FamixJSONExporter("ScopingEntity", this);
24
- this.addPropertiesToExporter(json);
25
- return json.getJSON();
26
- }
27
- addPropertiesToExporter(exporter) {
28
- super.addPropertiesToExporter(exporter);
29
- // exporter.addProperty("namespaces", this.getModules());
30
- }
31
- get modules() {
32
- return this._modules;
33
- }
34
- }
35
- exports.ScopingEntity = ScopingEntity;
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcGluZ19lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9zY29waW5nX2VudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFDOUQseURBQXFEO0FBQ3JELG9EQUFnRDtBQUdoRCxNQUFhLGFBQWMsU0FBUSxrQ0FBZTtJQUFsRDs7UUFFWSxhQUFRLEdBQWdCLElBQUksR0FBRyxFQUFFLENBQUM7SUEyQjlDLENBQUM7SUF6QlUsU0FBUyxDQUFDLFdBQW1CO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ2xDLGdCQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxJQUFJLEdBQUcsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2RSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMvQixXQUFXLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUNuQyxDQUFDO2FBQU0sQ0FBQztZQUNKLGdCQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUMsSUFBSSxHQUFHLG9CQUFvQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRixDQUFDO0lBQ0wsQ0FBQztJQUdNLE9BQU87UUFDVixNQUFNLElBQUksR0FBc0IsSUFBSSx1Q0FBaUIsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxRQUEyQjtRQUN0RCxLQUFLLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEMsNERBQTREO0lBQ2hFLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztDQUNKO0FBN0JELHNDQTZCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhbWl4SlNPTkV4cG9ydGVyIH0gZnJvbSBcIi4uLy4uL2ZhbWl4X0pTT05fZXhwb3J0ZXJcIjtcclxuaW1wb3J0IHsgQ29udGFpbmVyRW50aXR5IH0gZnJvbSBcIi4vY29udGFpbmVyX2VudGl0eVwiO1xyXG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vYW5hbHl6ZVwiO1xyXG5pbXBvcnQgeyBNb2R1bGUgfSBmcm9tIFwiLi9tb2R1bGVcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBTY29waW5nRW50aXR5IGV4dGVuZHMgQ29udGFpbmVyRW50aXR5IHtcclxuXHJcbiAgICBwcml2YXRlIF9tb2R1bGVzOiBTZXQ8TW9kdWxlPiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkTW9kdWxlKGNoaWxkTW9kdWxlOiBNb2R1bGUpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuX21vZHVsZXMuaGFzKGNoaWxkTW9kdWxlKSkge1xyXG4gICAgICAgICAgICBsb2dnZXIuZGVidWcoXCJBZGRpbmcgbW9kdWxlIFwiICsgY2hpbGRNb2R1bGUubmFtZSArIFwiIHRvIFwiICsgdGhpcy5uYW1lKTtcclxuICAgICAgICAgICAgdGhpcy5fbW9kdWxlcy5hZGQoY2hpbGRNb2R1bGUpO1xyXG4gICAgICAgICAgICBjaGlsZE1vZHVsZS5wYXJlbnRTY29wZSA9IHRoaXM7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKFwiTW9kdWxlIFwiICsgY2hpbGRNb2R1bGUubmFtZSArIFwiIGFscmVhZHkgYWRkZWQgdG8gXCIgKyB0aGlzLm5hbWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIlNjb3BpbmdFbnRpdHlcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICAvLyAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcIm5hbWVzcGFjZXNcIiwgdGhpcy5nZXRNb2R1bGVzKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBtb2R1bGVzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9tb2R1bGVzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScriptEntity = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const scoping_entity_1 = require("./scoping_entity");
6
- class ScriptEntity extends scoping_entity_1.ScopingEntity {
7
- getJSON() {
8
- const json = new famix_JSON_exporter_1.FamixJSONExporter("ScriptEntity", this);
9
- this.addPropertiesToExporter(json);
10
- return json.getJSON();
11
- }
12
- addPropertiesToExporter(exporter) {
13
- super.addPropertiesToExporter(exporter);
14
- }
15
- get numberOfLinesOfText() {
16
- return this._numberOfLinesOfText;
17
- }
18
- set numberOfLinesOfText(numberOfLinesOfText) {
19
- this._numberOfLinesOfText = numberOfLinesOfText;
20
- }
21
- get numberOfCharacters() {
22
- return this._numberOfCharacters;
23
- }
24
- set numberOfCharacters(numberOfCharacters) {
25
- this._numberOfCharacters = numberOfCharacters;
26
- }
27
- }
28
- exports.ScriptEntity = ScriptEntity;
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyaXB0X2VudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L3NjcmlwdF9lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELHFEQUFpRDtBQUVqRCxNQUFhLFlBQWEsU0FBUSw4QkFBYTtJQUtwQyxPQUFPO1FBQ1YsTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDdEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLG1CQUFtQjtRQUNuQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxtQkFBbUIsQ0FBQyxtQkFBMkI7UUFDL0MsSUFBSSxDQUFDLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNsQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxrQkFBa0IsQ0FBQyxrQkFBMEI7UUFDN0MsSUFBSSxDQUFDLG1CQUFtQixHQUFHLGtCQUFrQixDQUFDO0lBQ2xELENBQUM7Q0FDSjtBQTlCRCxvQ0E4QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFNjb3BpbmdFbnRpdHkgfSBmcm9tIFwiLi9zY29waW5nX2VudGl0eVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNjcmlwdEVudGl0eSBleHRlbmRzIFNjb3BpbmdFbnRpdHkge1xyXG5cclxuICAgIHByaXZhdGUgX251bWJlck9mTGluZXNPZlRleHQhOiBudW1iZXI7XHJcbiAgICBwcml2YXRlIF9udW1iZXJPZkNoYXJhY3RlcnMhOiBudW1iZXI7XHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIlNjcmlwdEVudGl0eVwiLCB0aGlzKTtcclxuICAgICAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBudW1iZXJPZkxpbmVzT2ZUZXh0KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJPZkxpbmVzT2ZUZXh0O1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBudW1iZXJPZkxpbmVzT2ZUZXh0KG51bWJlck9mTGluZXNPZlRleHQ6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuX251bWJlck9mTGluZXNPZlRleHQgPSBudW1iZXJPZkxpbmVzT2ZUZXh0O1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBudW1iZXJPZkNoYXJhY3RlcnMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlck9mQ2hhcmFjdGVycztcclxuICAgIH1cclxuXHJcbiAgICBzZXQgbnVtYmVyT2ZDaGFyYWN0ZXJzKG51bWJlck9mQ2hhcmFjdGVyczogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5fbnVtYmVyT2ZDaGFyYWN0ZXJzID0gbnVtYmVyT2ZDaGFyYWN0ZXJzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SourceAnchor = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const entity_1 = require("./entity");
6
- class SourceAnchor extends entity_1.Entity {
7
- getJSON() {
8
- const json = new famix_JSON_exporter_1.FamixJSONExporter("SourceAnchor", this);
9
- this.addPropertiesToExporter(json);
10
- return json.getJSON();
11
- }
12
- addPropertiesToExporter(exporter) {
13
- super.addPropertiesToExporter(exporter);
14
- exporter.addProperty("element", this.element);
15
- }
16
- get element() {
17
- return this._element;
18
- }
19
- set element(element) {
20
- if (this._element === undefined) {
21
- this._element = element;
22
- element.sourceAnchor = this;
23
- }
24
- }
25
- }
26
- exports.SourceAnchor = SourceAnchor;
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlX2FuY2hvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L3NvdXJjZV9hbmNob3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBQzlELHFDQUFrQztBQUdsQyxNQUFhLFlBQWEsU0FBUSxlQUFNO0lBSTdCLE9BQU87UUFDVixNQUFNLElBQUksR0FBc0IsSUFBSSx1Q0FBaUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxRQUEyQjtRQUN0RCxLQUFLLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLE9BQXNCO1FBQzlCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUN4QixPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUNoQyxDQUFDO0lBQ0wsQ0FBQztDQUNKO0FBekJELG9DQXlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhbWl4SlNPTkV4cG9ydGVyIH0gZnJvbSBcIi4uLy4uL2ZhbWl4X0pTT05fZXhwb3J0ZXJcIjtcclxuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSBcIi4vZW50aXR5XCI7XHJcbmltcG9ydCB7IFNvdXJjZWRFbnRpdHkgfSBmcm9tIFwiLi9zb3VyY2VkX2VudGl0eVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNvdXJjZUFuY2hvciBleHRlbmRzIEVudGl0eSB7XHJcblxyXG4gICAgcHJpdmF0ZSBfZWxlbWVudCE6IFNvdXJjZWRFbnRpdHk7XHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIlNvdXJjZUFuY2hvclwiLCB0aGlzKTtcclxuICAgICAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXIpO1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiZWxlbWVudFwiLCB0aGlzLmVsZW1lbnQpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBlbGVtZW50KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50O1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBlbGVtZW50KGVsZW1lbnQ6IFNvdXJjZWRFbnRpdHkpIHtcclxuICAgICAgICBpZiAodGhpcy5fZWxlbWVudCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgPSBlbGVtZW50O1xyXG4gICAgICAgICAgICBlbGVtZW50LnNvdXJjZUFuY2hvciA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SourceLanguage = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const entity_1 = require("./entity");
6
- class SourceLanguage extends entity_1.Entity {
7
- constructor() {
8
- super(...arguments);
9
- this._sourcedEntities = new Set();
10
- }
11
- // name of the source language
12
- get name() {
13
- return "TypeScript";
14
- }
15
- addSourcedEntity(sourcedEntity) {
16
- if (!this._sourcedEntities.has(sourcedEntity)) {
17
- this._sourcedEntities.add(sourcedEntity);
18
- sourcedEntity.declaredSourceLanguage = this;
19
- }
20
- }
21
- getJSON() {
22
- const json = new famix_JSON_exporter_1.FamixJSONExporter("SourceLanguage", this);
23
- this.addPropertiesToExporter(json);
24
- return json.getJSON();
25
- }
26
- addPropertiesToExporter(exporter) {
27
- super.addPropertiesToExporter(exporter);
28
- exporter.addProperty("sourcedEntities", this.sourcedEntities);
29
- }
30
- get sourcedEntities() {
31
- return this._sourcedEntities;
32
- }
33
- }
34
- exports.SourceLanguage = SourceLanguage;
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlX2xhbmd1YWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9mYW1peC9zcmMvbW9kZWwvZmFtaXgvc291cmNlX2xhbmd1YWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1FQUE4RDtBQUM5RCxxQ0FBa0M7QUFHbEMsTUFBYSxjQUFlLFNBQVEsZUFBTTtJQUExQzs7UUFFWSxxQkFBZ0IsR0FBdUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQTRCN0QsQ0FBQztJQTFCRyw4QkFBOEI7SUFDOUIsSUFBSSxJQUFJO1FBQ0osT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQztJQUVNLGdCQUFnQixDQUFDLGFBQTRCO1FBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN6QyxhQUFhLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO1FBQ2hELENBQUM7SUFDTCxDQUFDO0lBRU0sT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDdEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDZixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxDQUFDO0NBQ0o7QUE5QkQsd0NBOEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmFtaXhKU09ORXhwb3J0ZXIgfSBmcm9tIFwiLi4vLi4vZmFtaXhfSlNPTl9leHBvcnRlclwiO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tIFwiLi9lbnRpdHlcIjtcclxuaW1wb3J0IHsgU291cmNlZEVudGl0eSB9IGZyb20gXCIuL3NvdXJjZWRfZW50aXR5XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgU291cmNlTGFuZ3VhZ2UgZXh0ZW5kcyBFbnRpdHkge1xyXG5cclxuICAgIHByaXZhdGUgX3NvdXJjZWRFbnRpdGllczogU2V0PFNvdXJjZWRFbnRpdHk+ID0gbmV3IFNldCgpO1xyXG5cclxuICAgIC8vIG5hbWUgb2YgdGhlIHNvdXJjZSBsYW5ndWFnZVxyXG4gICAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gXCJUeXBlU2NyaXB0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFNvdXJjZWRFbnRpdHkoc291cmNlZEVudGl0eTogU291cmNlZEVudGl0eSk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fc291cmNlZEVudGl0aWVzLmhhcyhzb3VyY2VkRW50aXR5KSkge1xyXG4gICAgICAgICAgICB0aGlzLl9zb3VyY2VkRW50aXRpZXMuYWRkKHNvdXJjZWRFbnRpdHkpO1xyXG4gICAgICAgICAgICBzb3VyY2VkRW50aXR5LmRlY2xhcmVkU291cmNlTGFuZ3VhZ2UgPSB0aGlzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IGpzb246IEZhbWl4SlNPTkV4cG9ydGVyID0gbmV3IEZhbWl4SlNPTkV4cG9ydGVyKFwiU291cmNlTGFuZ3VhZ2VcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcInNvdXJjZWRFbnRpdGllc1wiLCB0aGlzLnNvdXJjZWRFbnRpdGllcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHNvdXJjZWRFbnRpdGllcygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc291cmNlZEVudGl0aWVzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SourcedEntity = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const entity_1 = require("./entity");
6
- const analyze_1 = require("../../../../../analyze");
7
- class SourcedEntity extends entity_1.Entity {
8
- constructor() {
9
- super(...arguments);
10
- this._comments = new Set();
11
- }
12
- addComment(comment) {
13
- if (!this._comments.has(comment)) {
14
- this._comments.add(comment);
15
- comment.container = this;
16
- }
17
- else {
18
- analyze_1.logger.debug("Adding comment that is already in comments: " + comment.getJSON() + " to " + this.getJSON());
19
- }
20
- }
21
- getJSON() {
22
- const json = new famix_JSON_exporter_1.FamixJSONExporter("SourcedEntity", this);
23
- this.addPropertiesToExporter(json);
24
- return json.getJSON();
25
- }
26
- addPropertiesToExporter(exporter) {
27
- super.addPropertiesToExporter(exporter);
28
- exporter.addProperty("isStub", this.isStub);
29
- exporter.addProperty("sourceAnchor", this.sourceAnchor);
30
- exporter.addProperty("comments", this.comments);
31
- exporter.addProperty("declaredSourceLanguage", this.declaredSourceLanguage);
32
- }
33
- get isStub() {
34
- return this._isStub;
35
- }
36
- set isStub(isStub) {
37
- this._isStub = isStub;
38
- }
39
- get sourceAnchor() {
40
- return this._sourceAnchor;
41
- }
42
- set sourceAnchor(sourceAnchor) {
43
- if (this._sourceAnchor === undefined) {
44
- this._sourceAnchor = sourceAnchor;
45
- sourceAnchor.element = this;
46
- }
47
- }
48
- get comments() {
49
- return this._comments;
50
- }
51
- get declaredSourceLanguage() {
52
- return this._declaredSourceLanguage;
53
- }
54
- set declaredSourceLanguage(declaredSourceLanguage) {
55
- this._declaredSourceLanguage = declaredSourceLanguage;
56
- declaredSourceLanguage.addSourcedEntity(this);
57
- }
58
- }
59
- exports.SourcedEntity = SourcedEntity;
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlZF9lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9zb3VyY2VkX2VudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFFOUQscUNBQWtDO0FBR2xDLG9EQUFnRDtBQUVoRCxNQUFhLGFBQWMsU0FBUSxlQUFNO0lBQXpDOztRQUlZLGNBQVMsR0FBaUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQTBEaEQsQ0FBQztJQXhEVSxVQUFVLENBQUMsT0FBZ0I7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUIsT0FBTyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDN0IsQ0FBQzthQUFNLENBQUM7WUFDSixnQkFBTSxDQUFDLEtBQUssQ0FBQyw4Q0FBOEMsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQy9HLENBQUM7SUFDTCxDQUFDO0lBSU0sT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQTJCO1FBQ3RELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxRQUFRLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3hELFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxRQUFRLENBQUMsV0FBVyxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQWU7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxZQUFZLENBQUMsWUFBMEI7UUFDdkMsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1lBQ2xDLFlBQVksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLHNCQUFzQjtRQUN0QixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxzQkFBc0IsQ0FBQyxzQkFBc0M7UUFDN0QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLHNCQUFzQixDQUFDO1FBQ3RELHNCQUFzQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xELENBQUM7Q0FDSjtBQTlERCxzQ0E4REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFNvdXJjZUxhbmd1YWdlIH0gZnJvbSBcIi4vc291cmNlX2xhbmd1YWdlXCI7XHJcbmltcG9ydCB7IEVudGl0eSB9IGZyb20gXCIuL2VudGl0eVwiO1xyXG5pbXBvcnQgeyBDb21tZW50IH0gZnJvbSBcIi4vY29tbWVudFwiO1xyXG5pbXBvcnQgeyBTb3VyY2VBbmNob3IgfSBmcm9tIFwiLi9zb3VyY2VfYW5jaG9yXCI7XHJcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9hbmFseXplXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgU291cmNlZEVudGl0eSBleHRlbmRzIEVudGl0eSB7XHJcblxyXG4gICAgcHJpdmF0ZSBfaXNTdHViITogYm9vbGVhbjtcclxuICAgIHByaXZhdGUgX3NvdXJjZUFuY2hvciE6IFNvdXJjZUFuY2hvcjtcclxuICAgIHByaXZhdGUgX2NvbW1lbnRzOiBTZXQ8Q29tbWVudD4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgcHVibGljIGFkZENvbW1lbnQoY29tbWVudDogQ29tbWVudCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fY29tbWVudHMuaGFzKGNvbW1lbnQpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NvbW1lbnRzLmFkZChjb21tZW50KTtcclxuICAgICAgICAgICAgY29tbWVudC5jb250YWluZXIgPSB0aGlzO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxvZ2dlci5kZWJ1ZyhcIkFkZGluZyBjb21tZW50IHRoYXQgaXMgYWxyZWFkeSBpbiBjb21tZW50czogXCIgKyBjb21tZW50LmdldEpTT04oKSArIFwiIHRvIFwiICsgdGhpcy5nZXRKU09OKCkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9kZWNsYXJlZFNvdXJjZUxhbmd1YWdlITogU291cmNlTGFuZ3VhZ2U7XHJcblxyXG4gICAgcHVibGljIGdldEpTT04oKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBqc29uOiBGYW1peEpTT05FeHBvcnRlciA9IG5ldyBGYW1peEpTT05FeHBvcnRlcihcIlNvdXJjZWRFbnRpdHlcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcImlzU3R1YlwiLCB0aGlzLmlzU3R1Yik7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJzb3VyY2VBbmNob3JcIiwgdGhpcy5zb3VyY2VBbmNob3IpO1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiY29tbWVudHNcIiwgdGhpcy5jb21tZW50cyk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJkZWNsYXJlZFNvdXJjZUxhbmd1YWdlXCIsIHRoaXMuZGVjbGFyZWRTb3VyY2VMYW5ndWFnZSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGlzU3R1YigpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faXNTdHViO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBpc1N0dWIoaXNTdHViOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5faXNTdHViID0gaXNTdHViO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBzb3VyY2VBbmNob3IoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NvdXJjZUFuY2hvcjtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgc291cmNlQW5jaG9yKHNvdXJjZUFuY2hvcjogU291cmNlQW5jaG9yKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX3NvdXJjZUFuY2hvciA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NvdXJjZUFuY2hvciA9IHNvdXJjZUFuY2hvcjtcclxuICAgICAgICAgICAgc291cmNlQW5jaG9yLmVsZW1lbnQgPSB0aGlzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXQgY29tbWVudHMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbW1lbnRzO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZWNsYXJlZFNvdXJjZUxhbmd1YWdlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kZWNsYXJlZFNvdXJjZUxhbmd1YWdlO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBkZWNsYXJlZFNvdXJjZUxhbmd1YWdlKGRlY2xhcmVkU291cmNlTGFuZ3VhZ2U6IFNvdXJjZUxhbmd1YWdlKSB7XHJcbiAgICAgICAgdGhpcy5fZGVjbGFyZWRTb3VyY2VMYW5ndWFnZSA9IGRlY2xhcmVkU291cmNlTGFuZ3VhZ2U7XHJcbiAgICAgICAgZGVjbGFyZWRTb3VyY2VMYW5ndWFnZS5hZGRTb3VyY2VkRW50aXR5KHRoaXMpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StructuralEntity = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const named_entity_1 = require("./named_entity");
6
- class StructuralEntity extends named_entity_1.NamedEntity {
7
- constructor() {
8
- super(...arguments);
9
- this._incomingAccesses = new Set();
10
- }
11
- addIncomingAccess(incomingAccess) {
12
- if (!this._incomingAccesses.has(incomingAccess)) {
13
- this._incomingAccesses.add(incomingAccess);
14
- incomingAccess.variable = this;
15
- }
16
- }
17
- getJSON() {
18
- const json = new famix_JSON_exporter_1.FamixJSONExporter("StructuralEntity", this);
19
- this.addPropertiesToExporter(json);
20
- return json.getJSON();
21
- }
22
- addPropertiesToExporter(exporter) {
23
- super.addPropertiesToExporter(exporter);
24
- exporter.addProperty("incomingAccesses", this.incomingAccesses);
25
- exporter.addProperty("declaredType", this.declaredType);
26
- }
27
- get incomingAccesses() {
28
- return this._incomingAccesses;
29
- }
30
- get declaredType() {
31
- return this._declaredType;
32
- }
33
- set declaredType(declaredType) {
34
- this._declaredType = declaredType;
35
- declaredType.addStructureWithDeclaredType(this);
36
- }
37
- }
38
- exports.StructuralEntity = StructuralEntity;
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RydWN0dXJhbF9lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC9zdHJ1Y3R1cmFsX2VudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFHOUQsaURBQTZDO0FBRTdDLE1BQWEsZ0JBQWlCLFNBQVEsMEJBQVc7SUFBakQ7O1FBRVksc0JBQWlCLEdBQWdCLElBQUksR0FBRyxFQUFFLENBQUM7SUFtQ3ZELENBQUM7SUFqQ1UsaUJBQWlCLENBQUMsY0FBc0I7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzNDLGNBQWMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ25DLENBQUM7SUFDTCxDQUFDO0lBSU0sT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDdEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDaEUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ1osT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLFlBQVksQ0FBQyxZQUFrQjtRQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQztRQUNsQyxZQUFZLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNKO0FBckNELDRDQXFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhbWl4SlNPTkV4cG9ydGVyIH0gZnJvbSBcIi4uLy4uL2ZhbWl4X0pTT05fZXhwb3J0ZXJcIjtcclxuaW1wb3J0IHsgVHlwZSB9IGZyb20gXCIuL3R5cGVcIjtcclxuaW1wb3J0IHsgQWNjZXNzIH0gZnJvbSBcIi4vYWNjZXNzXCI7XHJcbmltcG9ydCB7IE5hbWVkRW50aXR5IH0gZnJvbSBcIi4vbmFtZWRfZW50aXR5XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgU3RydWN0dXJhbEVudGl0eSBleHRlbmRzIE5hbWVkRW50aXR5IHtcclxuXHJcbiAgICBwcml2YXRlIF9pbmNvbWluZ0FjY2Vzc2VzOiBTZXQ8QWNjZXNzPiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkSW5jb21pbmdBY2Nlc3MoaW5jb21pbmdBY2Nlc3M6IEFjY2Vzcyk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5faW5jb21pbmdBY2Nlc3Nlcy5oYXMoaW5jb21pbmdBY2Nlc3MpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2luY29taW5nQWNjZXNzZXMuYWRkKGluY29taW5nQWNjZXNzKTtcclxuICAgICAgICAgICAgaW5jb21pbmdBY2Nlc3MudmFyaWFibGUgPSB0aGlzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9kZWNsYXJlZFR5cGUhOiBUeXBlO1xyXG5cclxuICAgIHB1YmxpYyBnZXRKU09OKCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJTdHJ1Y3R1cmFsRW50aXR5XCIsIHRoaXMpO1xyXG4gICAgICAgIHRoaXMuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoanNvbik7XHJcbiAgICAgICAgcmV0dXJuIGpzb24uZ2V0SlNPTigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcjogRmFtaXhKU09ORXhwb3J0ZXIpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcik7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJpbmNvbWluZ0FjY2Vzc2VzXCIsIHRoaXMuaW5jb21pbmdBY2Nlc3Nlcyk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJkZWNsYXJlZFR5cGVcIiwgdGhpcy5kZWNsYXJlZFR5cGUpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBpbmNvbWluZ0FjY2Vzc2VzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9pbmNvbWluZ0FjY2Vzc2VzO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBkZWNsYXJlZFR5cGUoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RlY2xhcmVkVHlwZTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgZGVjbGFyZWRUeXBlKGRlY2xhcmVkVHlwZTogVHlwZSkge1xyXG4gICAgICAgIHRoaXMuX2RlY2xhcmVkVHlwZSA9IGRlY2xhcmVkVHlwZTtcclxuICAgICAgICBkZWNsYXJlZFR5cGUuYWRkU3RydWN0dXJlV2l0aERlY2xhcmVkVHlwZSh0aGlzKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TextAnchor = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const source_anchor_1 = require("./source_anchor");
6
- class TextAnchor extends source_anchor_1.SourceAnchor {
7
- getStartPos() {
8
- return this.startPos;
9
- }
10
- setStartPos(startPos) {
11
- this.startPos = startPos;
12
- }
13
- getEndPos() {
14
- return this.endPos;
15
- }
16
- setEndPos(endPos) {
17
- this.endPos = endPos;
18
- }
19
- getFileName() {
20
- return this.fileName;
21
- }
22
- setFileName(fileName) {
23
- this.fileName = fileName;
24
- }
25
- getJSON() {
26
- const json = new famix_JSON_exporter_1.FamixJSONExporter("TextAnchor", this);
27
- this.addPropertiesToExporter(json);
28
- return json.getJSON();
29
- }
30
- addPropertiesToExporter(exporter) {
31
- super.addPropertiesToExporter(exporter);
32
- exporter.addProperty("startPos", this.getStartPos());
33
- exporter.addProperty("endPos", this.getEndPos());
34
- exporter.addProperty("fileName", this.getFileName());
35
- }
36
- }
37
- exports.TextAnchor = TextAnchor;
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dF9hbmNob3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC90ZXh0X2FuY2hvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFDOUQsbURBQStDO0FBRS9DLE1BQWEsVUFBVyxTQUFRLDRCQUFZO0lBSW5DLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxXQUFXLENBQUMsUUFBZ0I7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUlNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFjO1FBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFJTSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sV0FBVyxDQUFDLFFBQWdCO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFHTSxPQUFPO1FBQ1osTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDeEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7Q0FDRjtBQTdDRCxnQ0E2Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFNvdXJjZUFuY2hvciB9IGZyb20gXCIuL3NvdXJjZV9hbmNob3JcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBUZXh0QW5jaG9yIGV4dGVuZHMgU291cmNlQW5jaG9yIHtcclxuXHJcbiAgcHJpdmF0ZSBzdGFydFBvczogbnVtYmVyO1xyXG5cclxuICBwdWJsaWMgZ2V0U3RhcnRQb3MoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXJ0UG9zO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFN0YXJ0UG9zKHN0YXJ0UG9zOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuc3RhcnRQb3MgPSBzdGFydFBvcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZW5kUG9zOiBudW1iZXI7XHJcblxyXG4gIHB1YmxpYyBnZXRFbmRQb3MoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLmVuZFBvcztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRFbmRQb3MoZW5kUG9zOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuZW5kUG9zID0gZW5kUG9zO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaWxlTmFtZTogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgZ2V0RmlsZU5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmZpbGVOYW1lO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldEZpbGVOYW1lKGZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlTmFtZTtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgY29uc3QganNvbjogRmFtaXhKU09ORXhwb3J0ZXIgPSBuZXcgRmFtaXhKU09ORXhwb3J0ZXIoXCJUZXh0QW5jaG9yXCIsIHRoaXMpO1xyXG4gICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihleHBvcnRlcjogRmFtaXhKU09ORXhwb3J0ZXIpOiB2b2lkIHtcclxuICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwic3RhcnRQb3NcIiwgdGhpcy5nZXRTdGFydFBvcygpKTtcclxuICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiZW5kUG9zXCIsIHRoaXMuZ2V0RW5kUG9zKCkpO1xyXG4gICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJmaWxlTmFtZVwiLCB0aGlzLmdldEZpbGVOYW1lKCkpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,73 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Type = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const container_entity_1 = require("./container_entity");
6
- class Type extends container_entity_1.ContainerEntity {
7
- constructor() {
8
- super(...arguments);
9
- this._typeAliases = new Set();
10
- this._structuresWithDeclaredType = new Set();
11
- this._behavioralEntitiesWithDeclaredType = new Set();
12
- this._incomingReferences = new Set();
13
- }
14
- addTypeAlias(typeAlias) {
15
- if (!this._typeAliases.has(typeAlias)) {
16
- this._typeAliases.add(typeAlias);
17
- typeAlias.aliasedEntity = this;
18
- }
19
- }
20
- addStructureWithDeclaredType(structureWithDeclaredType) {
21
- if (!this._structuresWithDeclaredType.has(structureWithDeclaredType)) {
22
- this._structuresWithDeclaredType.add(structureWithDeclaredType);
23
- structureWithDeclaredType.declaredType = this;
24
- }
25
- }
26
- addBehavioralEntityWithDeclaredType(behavioralEntityWithDeclaredType) {
27
- if (!this._behavioralEntitiesWithDeclaredType.has(behavioralEntityWithDeclaredType)) {
28
- this._behavioralEntitiesWithDeclaredType.add(behavioralEntityWithDeclaredType);
29
- behavioralEntityWithDeclaredType.declaredType = this;
30
- }
31
- }
32
- addIncomingReference(incomingReference) {
33
- if (!this._incomingReferences.has(incomingReference)) {
34
- this._incomingReferences.add(incomingReference);
35
- incomingReference.target = this;
36
- }
37
- }
38
- getJSON() {
39
- const json = new famix_JSON_exporter_1.FamixJSONExporter("Type", this);
40
- this.addPropertiesToExporter(json);
41
- return json.getJSON();
42
- }
43
- addPropertiesToExporter(exporter) {
44
- super.addPropertiesToExporter(exporter);
45
- exporter.addProperty("typeContainer", this.container);
46
- /* unsupported properties in MM so far */
47
- // exporter.addProperty("typeAliases", this.getTypeAliases());
48
- // exporter.addProperty("structuresWithDeclaredType", this.getStructuresWithDeclaredType());
49
- // exporter.addProperty("behavioralEntitiesWithDeclaredType", this.getBehavioralEntitiesWithDeclaredType());
50
- exporter.addProperty("incomingReferences", this.incomingReferences);
51
- }
52
- get container() {
53
- return this._container;
54
- }
55
- set container(container) {
56
- this._container = container;
57
- container.addType(this);
58
- }
59
- get typeAliases() {
60
- return this._typeAliases;
61
- }
62
- get structuresWithDeclaredType() {
63
- return this._structuresWithDeclaredType;
64
- }
65
- get behavioralEntitiesWithDeclaredType() {
66
- return this._behavioralEntitiesWithDeclaredType;
67
- }
68
- get incomingReferences() {
69
- return this._incomingReferences;
70
- }
71
- }
72
- exports.Type = Type;
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZmFtaXgvc3JjL21vZGVsL2ZhbWl4L3R5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQThEO0FBRTlELHlEQUFxRDtBQUtyRCxNQUFhLElBQUssU0FBUSxrQ0FBZTtJQUF6Qzs7UUFHWSxpQkFBWSxHQUFlLElBQUksR0FBRyxFQUFFLENBQUM7UUFTckMsZ0NBQTJCLEdBQTBCLElBQUksR0FBRyxFQUFFLENBQUM7UUFTL0Qsd0NBQW1DLEdBQTBCLElBQUksR0FBRyxFQUFFLENBQUM7UUFTdkUsd0JBQW1CLEdBQW1CLElBQUksR0FBRyxFQUFFLENBQUM7SUFpRDVELENBQUM7SUExRVUsWUFBWSxDQUFDLFNBQWdCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQ25DLENBQUM7SUFDTCxDQUFDO0lBSU0sNEJBQTRCLENBQUMseUJBQTJDO1FBQzNFLElBQUksQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztZQUNuRSxJQUFJLENBQUMsMkJBQTJCLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7WUFDaEUseUJBQXlCLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUNsRCxDQUFDO0lBQ0wsQ0FBQztJQUlNLG1DQUFtQyxDQUFDLGdDQUFrRDtRQUN6RixJQUFJLENBQUMsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLEdBQUcsQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFLENBQUM7WUFDbEYsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLEdBQUcsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1lBQy9FLGdDQUFnQyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekQsQ0FBQztJQUNMLENBQUM7SUFJTSxvQkFBb0IsQ0FBQyxpQkFBNEI7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUNoRCxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLENBQUM7SUFDTCxDQUFDO0lBRU0sT0FBTztRQUNWLE1BQU0sSUFBSSxHQUFzQixJQUFJLHVDQUFpQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLHVCQUF1QixDQUFDLFFBQTJCO1FBQ3RELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxRQUFRLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEQseUNBQXlDO1FBQ3pDLDhEQUE4RDtRQUM5RCw0RkFBNEY7UUFDNUYsNEdBQTRHO1FBQzVHLFFBQVEsQ0FBQyxXQUFXLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsU0FBMEI7UUFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLDBCQUEwQjtRQUMxQixPQUFPLElBQUksQ0FBQywyQkFBMkIsQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBSSxrQ0FBa0M7UUFDbEMsT0FBTyxJQUFJLENBQUMsbUNBQW1DLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BDLENBQUM7Q0FDSjtBQS9FRCxvQkErRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGYW1peEpTT05FeHBvcnRlciB9IGZyb20gXCIuLi8uLi9mYW1peF9KU09OX2V4cG9ydGVyXCI7XHJcbmltcG9ydCB7IFN0cnVjdHVyYWxFbnRpdHkgfSBmcm9tIFwiLi9zdHJ1Y3R1cmFsX2VudGl0eVwiO1xyXG5pbXBvcnQgeyBDb250YWluZXJFbnRpdHkgfSBmcm9tIFwiLi9jb250YWluZXJfZW50aXR5XCI7XHJcbmltcG9ydCB7IFJlZmVyZW5jZSB9IGZyb20gXCIuL3JlZmVyZW5jZVwiO1xyXG5pbXBvcnQgeyBCZWhhdmlvcmFsRW50aXR5IH0gZnJvbSBcIi4vYmVoYXZpb3JhbF9lbnRpdHlcIjtcclxuaW1wb3J0IHsgQWxpYXMgfSBmcm9tIFwiLi9hbGlhc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFR5cGUgZXh0ZW5kcyBDb250YWluZXJFbnRpdHkge1xyXG5cclxuICAgIHByaXZhdGUgX2NvbnRhaW5lciE6IENvbnRhaW5lckVudGl0eTtcclxuICAgIHByaXZhdGUgX3R5cGVBbGlhc2VzOiBTZXQ8QWxpYXM+ID0gbmV3IFNldCgpO1xyXG5cclxuICAgIHB1YmxpYyBhZGRUeXBlQWxpYXModHlwZUFsaWFzOiBBbGlhcyk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fdHlwZUFsaWFzZXMuaGFzKHR5cGVBbGlhcykpIHtcclxuICAgICAgICAgICAgdGhpcy5fdHlwZUFsaWFzZXMuYWRkKHR5cGVBbGlhcyk7XHJcbiAgICAgICAgICAgIHR5cGVBbGlhcy5hbGlhc2VkRW50aXR5ID0gdGhpcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc3RydWN0dXJlc1dpdGhEZWNsYXJlZFR5cGU6IFNldDxTdHJ1Y3R1cmFsRW50aXR5PiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkU3RydWN0dXJlV2l0aERlY2xhcmVkVHlwZShzdHJ1Y3R1cmVXaXRoRGVjbGFyZWRUeXBlOiBTdHJ1Y3R1cmFsRW50aXR5KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9zdHJ1Y3R1cmVzV2l0aERlY2xhcmVkVHlwZS5oYXMoc3RydWN0dXJlV2l0aERlY2xhcmVkVHlwZSkpIHtcclxuICAgICAgICAgICAgdGhpcy5fc3RydWN0dXJlc1dpdGhEZWNsYXJlZFR5cGUuYWRkKHN0cnVjdHVyZVdpdGhEZWNsYXJlZFR5cGUpO1xyXG4gICAgICAgICAgICBzdHJ1Y3R1cmVXaXRoRGVjbGFyZWRUeXBlLmRlY2xhcmVkVHlwZSA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2JlaGF2aW9yYWxFbnRpdGllc1dpdGhEZWNsYXJlZFR5cGU6IFNldDxCZWhhdmlvcmFsRW50aXR5PiA9IG5ldyBTZXQoKTtcclxuXHJcbiAgICBwdWJsaWMgYWRkQmVoYXZpb3JhbEVudGl0eVdpdGhEZWNsYXJlZFR5cGUoYmVoYXZpb3JhbEVudGl0eVdpdGhEZWNsYXJlZFR5cGU6IEJlaGF2aW9yYWxFbnRpdHkpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuX2JlaGF2aW9yYWxFbnRpdGllc1dpdGhEZWNsYXJlZFR5cGUuaGFzKGJlaGF2aW9yYWxFbnRpdHlXaXRoRGVjbGFyZWRUeXBlKSkge1xyXG4gICAgICAgICAgICB0aGlzLl9iZWhhdmlvcmFsRW50aXRpZXNXaXRoRGVjbGFyZWRUeXBlLmFkZChiZWhhdmlvcmFsRW50aXR5V2l0aERlY2xhcmVkVHlwZSk7XHJcbiAgICAgICAgICAgIGJlaGF2aW9yYWxFbnRpdHlXaXRoRGVjbGFyZWRUeXBlLmRlY2xhcmVkVHlwZSA9IHRoaXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2luY29taW5nUmVmZXJlbmNlczogU2V0PFJlZmVyZW5jZT4gPSBuZXcgU2V0KCk7XHJcblxyXG4gICAgcHVibGljIGFkZEluY29taW5nUmVmZXJlbmNlKGluY29taW5nUmVmZXJlbmNlOiBSZWZlcmVuY2UpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuX2luY29taW5nUmVmZXJlbmNlcy5oYXMoaW5jb21pbmdSZWZlcmVuY2UpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2luY29taW5nUmVmZXJlbmNlcy5hZGQoaW5jb21pbmdSZWZlcmVuY2UpO1xyXG4gICAgICAgICAgICBpbmNvbWluZ1JlZmVyZW5jZS50YXJnZXQgPSB0aGlzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IGpzb246IEZhbWl4SlNPTkV4cG9ydGVyID0gbmV3IEZhbWl4SlNPTkV4cG9ydGVyKFwiVHlwZVwiLCB0aGlzKTtcclxuICAgICAgICB0aGlzLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGpzb24pO1xyXG4gICAgICAgIHJldHVybiBqc29uLmdldEpTT04oKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXI6IEZhbWl4SlNPTkV4cG9ydGVyKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIuYWRkUHJvcGVydGllc1RvRXhwb3J0ZXIoZXhwb3J0ZXIpO1xyXG4gICAgICAgIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwidHlwZUNvbnRhaW5lclwiLCB0aGlzLmNvbnRhaW5lcik7XHJcbiAgICAgICAgLyogdW5zdXBwb3J0ZWQgcHJvcGVydGllcyBpbiBNTSBzbyBmYXIgKi9cclxuICAgICAgICAvLyBleHBvcnRlci5hZGRQcm9wZXJ0eShcInR5cGVBbGlhc2VzXCIsIHRoaXMuZ2V0VHlwZUFsaWFzZXMoKSk7XHJcbiAgICAgICAgLy8gZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJzdHJ1Y3R1cmVzV2l0aERlY2xhcmVkVHlwZVwiLCB0aGlzLmdldFN0cnVjdHVyZXNXaXRoRGVjbGFyZWRUeXBlKCkpO1xyXG4gICAgICAgIC8vIGV4cG9ydGVyLmFkZFByb3BlcnR5KFwiYmVoYXZpb3JhbEVudGl0aWVzV2l0aERlY2xhcmVkVHlwZVwiLCB0aGlzLmdldEJlaGF2aW9yYWxFbnRpdGllc1dpdGhEZWNsYXJlZFR5cGUoKSk7XHJcbiAgICAgICAgZXhwb3J0ZXIuYWRkUHJvcGVydHkoXCJpbmNvbWluZ1JlZmVyZW5jZXNcIiwgdGhpcy5pbmNvbWluZ1JlZmVyZW5jZXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjb250YWluZXIoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbnRhaW5lcjtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgY29udGFpbmVyKGNvbnRhaW5lcjogQ29udGFpbmVyRW50aXR5KSB7XHJcbiAgICAgICAgdGhpcy5fY29udGFpbmVyID0gY29udGFpbmVyO1xyXG4gICAgICAgIGNvbnRhaW5lci5hZGRUeXBlKHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCB0eXBlQWxpYXNlcygpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdHlwZUFsaWFzZXM7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHN0cnVjdHVyZXNXaXRoRGVjbGFyZWRUeXBlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zdHJ1Y3R1cmVzV2l0aERlY2xhcmVkVHlwZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgYmVoYXZpb3JhbEVudGl0aWVzV2l0aERlY2xhcmVkVHlwZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYmVoYXZpb3JhbEVudGl0aWVzV2l0aERlY2xhcmVkVHlwZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgaW5jb21pbmdSZWZlcmVuY2VzKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9pbmNvbWluZ1JlZmVyZW5jZXM7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Variable = void 0;
4
- const famix_JSON_exporter_1 = require("../../famix_JSON_exporter");
5
- const structural_entity_1 = require("./structural_entity");
6
- class Variable extends structural_entity_1.StructuralEntity {
7
- getJSON() {
8
- const json = new famix_JSON_exporter_1.FamixJSONExporter("Variable", this);
9
- this.addPropertiesToExporter(json);
10
- return json.getJSON();
11
- }
12
- addPropertiesToExporter(exporter) {
13
- super.addPropertiesToExporter(exporter);
14
- exporter.addProperty("parentBehaviouralEntity", this.parentContainerEntity);
15
- }
16
- get parentContainerEntity() {
17
- return this._parentContainerEntity;
18
- }
19
- set parentContainerEntity(parentContainerEntity) {
20
- this._parentContainerEntity = parentContainerEntity;
21
- }
22
- }
23
- exports.Variable = Variable;
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFyaWFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ZhbWl4L3NyYy9tb2RlbC9mYW1peC92YXJpYWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtRUFBOEQ7QUFFOUQsMkRBQXVEO0FBRXZELE1BQWEsUUFBUyxTQUFRLG9DQUFnQjtJQUluQyxPQUFPO1FBQ1YsTUFBTSxJQUFJLEdBQXNCLElBQUksdUNBQWlCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBMkI7UUFDdEQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsQ0FBQyxXQUFXLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELElBQUkscUJBQXFCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLHFCQUFxQixDQUFDLHFCQUFzQztRQUM1RCxJQUFJLENBQUMsc0JBQXNCLEdBQUcscUJBQXFCLENBQUM7SUFDeEQsQ0FBQztDQUNKO0FBdEJELDRCQXNCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZhbWl4SlNPTkV4cG9ydGVyIH0gZnJvbSBcIi4uLy4uL2ZhbWl4X0pTT05fZXhwb3J0ZXJcIjtcclxuaW1wb3J0IHsgQ29udGFpbmVyRW50aXR5IH0gZnJvbSBcIi4vY29udGFpbmVyX2VudGl0eVwiO1xyXG5pbXBvcnQgeyBTdHJ1Y3R1cmFsRW50aXR5IH0gZnJvbSBcIi4vc3RydWN0dXJhbF9lbnRpdHlcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBWYXJpYWJsZSBleHRlbmRzIFN0cnVjdHVyYWxFbnRpdHkge1xyXG5cclxuICAgIHByaXZhdGUgX3BhcmVudENvbnRhaW5lckVudGl0eSE6IENvbnRhaW5lckVudGl0eTtcclxuXHJcbiAgICBwdWJsaWMgZ2V0SlNPTigpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IGpzb246IEZhbWl4SlNPTkV4cG9ydGVyID0gbmV3IEZhbWl4SlNPTkV4cG9ydGVyKFwiVmFyaWFibGVcIiwgdGhpcyk7XHJcbiAgICAgICAgdGhpcy5hZGRQcm9wZXJ0aWVzVG9FeHBvcnRlcihqc29uKTtcclxuICAgICAgICByZXR1cm4ganNvbi5nZXRKU09OKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyOiBGYW1peEpTT05FeHBvcnRlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmFkZFByb3BlcnRpZXNUb0V4cG9ydGVyKGV4cG9ydGVyKTtcclxuICAgICAgICBleHBvcnRlci5hZGRQcm9wZXJ0eShcInBhcmVudEJlaGF2aW91cmFsRW50aXR5XCIsIHRoaXMucGFyZW50Q29udGFpbmVyRW50aXR5KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgcGFyZW50Q29udGFpbmVyRW50aXR5KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9wYXJlbnRDb250YWluZXJFbnRpdHk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IHBhcmVudENvbnRhaW5lckVudGl0eShwYXJlbnRDb250YWluZXJFbnRpdHk6IENvbnRhaW5lckVudGl0eSkge1xyXG4gICAgICAgIHRoaXMuX3BhcmVudENvbnRhaW5lckVudGl0eSA9IHBhcmVudENvbnRhaW5lckVudGl0eTtcclxuICAgIH1cclxufVxyXG4iXX0=
package/fqn-model.json DELETED
@@ -1 +0,0 @@
1
- [{"FM3":"FamixTypeScript.SourceLanguage","id":1,"sourcedEntities":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":2,"element":{"ref":3},"startPos":1,"endPos":658,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Module","id":3,"sourceAnchor":{"ref":2},"comments":[],"incomingImports":[],"name":"sample.ts","decorators":[],"types":[{"ref":5},{"ref":10},{"ref":14},{"ref":18},{"ref":22},{"ref":26},{"ref":30},{"ref":40},{"ref":44},{"ref":65},{"ref":69},{"ref":73},{"ref":77}],"functions":[{"ref":32},{"ref":42},{"ref":46},{"ref":38},{"ref":48},{"ref":57},{"ref":67},{"ref":75}],"localVariables":[{"ref":12},{"ref":16},{"ref":20},{"ref":24},{"ref":28}],"outgoingImports":[{"ref":83}]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":4,"element":{"ref":5},"startPos":32,"endPos":67,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Class","id":5,"sourceAnchor":{"ref":4},"comments":[],"incomingImports":[],"name":"MyClass","decorators":[],"types":[],"functions":[],"localVariables":[],"incomingReferences":[],"isAbstract":false,"attributes":[],"methods":[{"ref":7}],"superInheritances":[],"subInheritances":[]},{"FM3":"FamixTypeScript.PrimitiveType","id":6,"isStub":true,"comments":[],"incomingImports":[],"name":"void","decorators":[],"types":[],"functions":[],"localVariables":[],"incomingReferences":[]},{"FM3":"FamixTypeScript.Method","id":7,"sourceAnchor":{"ref":8},"comments":[],"incomingImports":[],"name":"myMethod","decorators":[],"cyclomaticComplexity":1,"numberOfStatements":0,"numberOfLinesOfCode":0,"types":[],"functions":[],"localVariables":[],"signature":"myMethod()","parameters":[],"numberOfParameters":0,"incomingInvocations":[{"ref":87}],"declaredType":{"ref":6},"parentType":{"ref":5},"isAbstract":false,"isClassSide":false,"isPrivate":false,"isPublic":true,"isProtected":false},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":8,"element":{"ref":7},"startPos":51,"endPos":64,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":9,"element":{"ref":10},"startPos":75,"endPos":144,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":10,"sourceAnchor":{"ref":9},"comments":[],"incomingImports":[],"name":"() => typeof A","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":11,"element":{"ref":12},"startPos":75,"endPos":144,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":12,"sourceAnchor":{"ref":11},"comments":[],"incomingImports":[],"name":"createClassA1","decorators":[],"incomingAccesses":[{"ref":84}],"declaredType":{"ref":10},"parentBehaviouralEntity":{"ref":3}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":13,"element":{"ref":14},"startPos":153,"endPos":222,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":14,"sourceAnchor":{"ref":13},"comments":[],"incomingImports":[],"name":"() => typeof A","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":15,"element":{"ref":16},"startPos":153,"endPos":222,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":16,"sourceAnchor":{"ref":15},"comments":[],"incomingImports":[],"name":"createClassA2","decorators":[],"incomingAccesses":[{"ref":85}],"declaredType":{"ref":14},"parentBehaviouralEntity":{"ref":3}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":17,"element":{"ref":18},"startPos":231,"endPos":258,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":18,"sourceAnchor":{"ref":17},"comments":[],"incomingImports":[],"name":"typeof A","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":19,"element":{"ref":20},"startPos":231,"endPos":258,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":20,"sourceAnchor":{"ref":19},"comments":[],"incomingImports":[],"name":"instance1","decorators":[],"incomingAccesses":[],"declaredType":{"ref":18},"parentBehaviouralEntity":{"ref":3}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":21,"element":{"ref":22},"startPos":267,"endPos":294,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":22,"sourceAnchor":{"ref":21},"comments":[],"incomingImports":[],"name":"typeof A","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":23,"element":{"ref":24},"startPos":267,"endPos":294,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":24,"sourceAnchor":{"ref":23},"comments":[],"incomingImports":[],"name":"instance2","decorators":[],"incomingAccesses":[],"declaredType":{"ref":22},"parentBehaviouralEntity":{"ref":3}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":25,"element":{"ref":26},"startPos":382,"endPos":539,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":26,"sourceAnchor":{"ref":25},"comments":[],"incomingImports":[],"name":"any[]","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":27,"element":{"ref":28},"startPos":382,"endPos":539,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":28,"sourceAnchor":{"ref":27},"comments":[],"incomingImports":[],"name":"handlers","decorators":[],"incomingAccesses":[],"declaredType":{"ref":26},"parentBehaviouralEntity":{"ref":3}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":29,"element":{"ref":30},"startPos":299,"endPos":365,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":30,"sourceAnchor":{"ref":29},"comments":[],"incomingImports":[],"name":"() => void","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":31,"element":{"ref":32},"startPos":299,"endPos":365,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Function","id":32,"sourceAnchor":{"ref":31},"comments":[],"incomingImports":[],"name":"a","decorators":[],"cyclomaticComplexity":1,"numberOfStatements":1,"numberOfLinesOfCode":2,"types":[{"ref":34}],"functions":[{"ref":38}],"localVariables":[],"signature":"export function a(c: MyClass)","parameters":[{"ref":36}],"numberOfParameters":1,"incomingInvocations":[],"declaredType":{"ref":30}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":33,"element":{"ref":34},"startPos":317,"endPos":327,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":34,"sourceAnchor":{"ref":33},"comments":[],"incomingImports":[],"name":"MyClass","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":32},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":35,"element":{"ref":36},"startPos":317,"endPos":327,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":36,"sourceAnchor":{"ref":35},"comments":[],"incomingImports":[],"name":"c","decorators":[],"incomingAccesses":[{"ref":86}],"declaredType":{"ref":34},"parentBehaviouralEntity":{"ref":32}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":37,"element":{"ref":38},"startPos":341,"endPos":361,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":38,"sourceAnchor":{"ref":37},"comments":[],"incomingImports":[],"name":"(NO_NAME)","decorators":[],"numberOfStatements":0,"numberOfLinesOfCode":0,"types":[],"functions":[],"localVariables":[],"signature":"() => void","parameters":[],"numberOfParameters":0,"incomingInvocations":[],"declaredType":{"ref":6}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":39,"element":{"ref":40},"startPos":91,"endPos":144,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":40,"sourceAnchor":{"ref":39},"comments":[],"incomingImports":[],"name":"typeof A","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":41,"element":{"ref":42},"startPos":91,"endPos":144,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":42,"sourceAnchor":{"ref":41},"comments":[],"incomingImports":[],"name":"createClassA1","decorators":[],"numberOfStatements":1,"numberOfLinesOfCode":4,"types":[],"functions":[],"localVariables":[],"signature":"() => typeof A","parameters":[],"numberOfParameters":0,"incomingInvocations":[],"declaredType":{"ref":40}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":43,"element":{"ref":44},"startPos":169,"endPos":222,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":44,"sourceAnchor":{"ref":43},"comments":[],"incomingImports":[],"name":"typeof A","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":45,"element":{"ref":46},"startPos":169,"endPos":222,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":46,"sourceAnchor":{"ref":45},"comments":[],"incomingImports":[],"name":"createClassA2","decorators":[],"numberOfStatements":1,"numberOfLinesOfCode":4,"types":[],"functions":[],"localVariables":[],"signature":"() => typeof A","parameters":[],"numberOfParameters":0,"incomingInvocations":[],"declaredType":{"ref":44}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":47,"element":{"ref":48},"startPos":441,"endPos":463,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":48,"sourceAnchor":{"ref":47},"comments":[],"incomingImports":[],"name":"(NO_NAME)","decorators":[],"numberOfStatements":0,"numberOfLinesOfCode":0,"types":[],"functions":[],"localVariables":[],"signature":"(_req, res, ctx) => void","parameters":[{"ref":51},{"ref":53},{"ref":55}],"numberOfParameters":3,"incomingInvocations":[],"declaredType":{"ref":6}},{"FM3":"FamixTypeScript.PrimitiveType","id":49,"isStub":true,"comments":[],"incomingImports":[],"name":"any","decorators":[],"types":[],"functions":[],"localVariables":[],"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":50,"element":{"ref":51},"startPos":442,"endPos":446,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":51,"sourceAnchor":{"ref":50},"comments":[],"incomingImports":[],"name":"_req","decorators":[],"incomingAccesses":[],"declaredType":{"ref":49},"parentBehaviouralEntity":{"ref":48}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":52,"element":{"ref":53},"startPos":448,"endPos":451,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":53,"sourceAnchor":{"ref":52},"comments":[],"incomingImports":[],"name":"res","decorators":[],"incomingAccesses":[],"declaredType":{"ref":49},"parentBehaviouralEntity":{"ref":48}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":54,"element":{"ref":55},"startPos":453,"endPos":456,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":55,"sourceAnchor":{"ref":54},"comments":[],"incomingImports":[],"name":"ctx","decorators":[],"incomingAccesses":[],"declaredType":{"ref":49},"parentBehaviouralEntity":{"ref":48}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":56,"element":{"ref":57},"startPos":512,"endPos":534,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":57,"sourceAnchor":{"ref":56},"comments":[],"incomingImports":[],"name":"(NO_NAME)","decorators":[],"numberOfStatements":0,"numberOfLinesOfCode":0,"types":[],"functions":[],"localVariables":[],"signature":"(_req, res, ctx) => void","parameters":[{"ref":59},{"ref":61},{"ref":63}],"numberOfParameters":3,"incomingInvocations":[],"declaredType":{"ref":6}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":58,"element":{"ref":59},"startPos":513,"endPos":517,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":59,"sourceAnchor":{"ref":58},"comments":[],"incomingImports":[],"name":"_req","decorators":[],"incomingAccesses":[],"declaredType":{"ref":49},"parentBehaviouralEntity":{"ref":57}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":60,"element":{"ref":61},"startPos":519,"endPos":522,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":61,"sourceAnchor":{"ref":60},"comments":[],"incomingImports":[],"name":"res","decorators":[],"incomingAccesses":[],"declaredType":{"ref":49},"parentBehaviouralEntity":{"ref":57}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":62,"element":{"ref":63},"startPos":524,"endPos":527,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Parameter","id":63,"sourceAnchor":{"ref":62},"comments":[],"incomingImports":[],"name":"ctx","decorators":[],"incomingAccesses":[],"declaredType":{"ref":49},"parentBehaviouralEntity":{"ref":57}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":64,"element":{"ref":65},"startPos":561,"endPos":596,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":65,"sourceAnchor":{"ref":64},"comments":[],"incomingImports":[],"name":"Promise<void>","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":66,"element":{"ref":67},"startPos":561,"endPos":596,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":67,"sourceAnchor":{"ref":66},"comments":[],"incomingImports":[],"name":"(NO_NAME)","decorators":[],"numberOfStatements":1,"numberOfLinesOfCode":2,"types":[],"functions":[],"localVariables":[{"ref":71}],"signature":"() => Promise<void>","parameters":[],"numberOfParameters":0,"incomingInvocations":[],"declaredType":{"ref":65}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":68,"element":{"ref":69},"startPos":584,"endPos":592,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":69,"sourceAnchor":{"ref":68},"comments":[],"incomingImports":[],"name":"1","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":70,"element":{"ref":71},"startPos":584,"endPos":592,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":71,"sourceAnchor":{"ref":70},"comments":[],"incomingImports":[],"name":"resp","decorators":[],"incomingAccesses":[],"declaredType":{"ref":69},"parentBehaviouralEntity":{"ref":67}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":72,"element":{"ref":73},"startPos":619,"endPos":654,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":73,"sourceAnchor":{"ref":72},"comments":[],"incomingImports":[],"name":"Promise<void>","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":74,"element":{"ref":75},"startPos":619,"endPos":654,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.ArrowFunction","id":75,"sourceAnchor":{"ref":74},"comments":[],"incomingImports":[],"name":"(NO_NAME)","decorators":[],"numberOfStatements":1,"numberOfLinesOfCode":2,"types":[],"functions":[],"localVariables":[{"ref":79}],"signature":"() => Promise<void>","parameters":[],"numberOfParameters":0,"incomingInvocations":[],"declaredType":{"ref":73}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":76,"element":{"ref":77},"startPos":642,"endPos":650,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Type","id":77,"sourceAnchor":{"ref":76},"comments":[],"incomingImports":[],"name":"2","decorators":[],"types":[],"functions":[],"localVariables":[],"typeContainer":{"ref":3},"incomingReferences":[]},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":78,"element":{"ref":79},"startPos":642,"endPos":650,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.Variable","id":79,"sourceAnchor":{"ref":78},"comments":[],"incomingImports":[],"name":"resp","decorators":[],"incomingAccesses":[],"declaredType":{"ref":77},"parentBehaviouralEntity":{"ref":75}},{"FM3":"FamixTypeScript.IndexedFileAnchor","id":80,"element":{"ref":82},"startPos":10,"endPos":14,"fileName":"sample.ts"},{"FM3":"FamixTypeScript.NamedEntity","id":82,"isStub":true,"sourceAnchor":{"ref":80},"comments":[],"incomingImports":[{"ref":83}],"name":"rest","decorators":[]},{"FM3":"FamixTypeScript.ImportClause","id":83,"importingEntity":{"ref":3},"importedEntity":{"ref":82}},{"FM3":"FamixTypeScript.Access","id":84,"accessor":{"ref":3},"variable":{"ref":12}},{"FM3":"FamixTypeScript.Access","id":85,"accessor":{"ref":3},"variable":{"ref":16}},{"FM3":"FamixTypeScript.Access","id":86,"accessor":{"ref":32},"variable":{"ref":36}},{"FM3":"FamixTypeScript.Invocation","id":87,"candidates":[{"ref":7}],"receiver":{"ref":5},"sender":{"ref":32},"signature":"myMethod()"}]
@@ -1,69 +0,0 @@
1
- import { Project, SyntaxKind } from "ts-morph";
2
-
3
- const project = new Project({
4
- useInMemoryFileSystem: true,
5
- });
6
-
7
- // Example source files in the project
8
- project.createSourceFile("file1.ts", `
9
- type MyType<T> = T;
10
- type Example1 = MyType<AnotherType>;
11
- class A<T> {
12
- prop: T;
13
- }
14
- class B extends A<AnotherType> {}
15
- `);
16
-
17
- project.createSourceFile("file2.ts", `
18
- type Example2 = MyType<YetAnotherType>;
19
- `);
20
-
21
- // Iterate through all source files in the project
22
- project.getSourceFiles().forEach((sourceFile) => {
23
- // Get all type aliases in the source file
24
- const typeAliases = sourceFile.getTypeAliases();
25
-
26
- typeAliases.forEach((typeAlias) => {
27
- console.log(`Type alias: ${typeAlias.getName()}`);
28
-
29
- // Get the type parameters of the alias
30
- const typeParameters = typeAlias.getTypeParameters();
31
- if (typeParameters.length > 0) {
32
- typeParameters.forEach((typeParam) => {
33
- console.log(`Type alias: ${typeAlias.getName()}, Type parameter: ${typeParam.getName()}`);
34
- });
35
- }
36
-
37
- // Get the type node of the alias
38
- const typeNode = typeAlias.getTypeNode();
39
- if (typeNode && typeNode.getKind() === SyntaxKind.TypeReference) {
40
- const typeReference = typeNode.asKindOrThrow(SyntaxKind.TypeReference);
41
-
42
- // Get type arguments
43
- const typeArguments = typeReference.getTypeArguments();
44
-
45
- // Process type arguments (example: log them)
46
- typeArguments.forEach((typeArg) => {
47
- console.log(`Type alias: ${typeAlias.getName()}, Type argument: ${typeArg.getText()}`);
48
- });
49
- } else {
50
- // Log type aliases that are not type references
51
- console.log(`Type alias: ${typeAlias.getName()}, Type: ${typeNode?.getText()}`);
52
- }
53
- });
54
-
55
- // Get all classes in the source file
56
- const classes = sourceFile.getClasses();
57
-
58
- classes.forEach((classDeclaration) => {
59
- console.log(`Class: ${classDeclaration.getName()}`);
60
-
61
- // Get the type parameters of the class
62
- const typeParameters = classDeclaration.getTypeParameters();
63
- if (typeParameters.length > 0) {
64
- typeParameters.forEach((typeParam) => {
65
- console.log(`Class: ${classDeclaration.getName()}, Type parameter: ${typeParam.getName()}`);
66
- });
67
- }
68
- });
69
- });