ts2famix 2.0.3 → 2.1.0-beta.2
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 +19 -9
- package/dist/analyze_functions/process_functions.js +101 -71
- package/dist/famix2puml.js +126 -0
- package/dist/famix_functions/EntityDictionary.js +881 -509
- package/dist/famix_functions/helpers_creation.js +18 -8
- 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 +67 -2
- package/dist/lib/famix/index.js +18 -8
- 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 +18 -8
- package/dist/ts2famix-cli-wrapper.js +18 -8
- package/dist/ts2famix-cli.js +18 -8
- package/dist/ts2famix-tsconfig.js +18 -8
- 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,792 @@
|
|
|
1
|
+
@startuml
|
|
2
|
+
class FamixJSONExporter {
|
|
3
|
+
-element: FamixBaseElement
|
|
4
|
+
-bufferArray: any
|
|
5
|
+
-FamixPrefix: string
|
|
6
|
+
+addProperty(name: string, prop: unknown): void
|
|
7
|
+
+getJSON(): string
|
|
8
|
+
}
|
|
9
|
+
abstract class FamixBaseElement {
|
|
10
|
+
+id: number
|
|
11
|
+
+{abstract} getJSON(): string
|
|
12
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
13
|
+
}
|
|
14
|
+
class Entity extends FamixBaseElement {
|
|
15
|
+
+getJSON(): string
|
|
16
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
17
|
+
}
|
|
18
|
+
class SourceLanguage extends Entity {
|
|
19
|
+
-_sourcedEntities: Set<SourcedEntity>
|
|
20
|
+
+name: string
|
|
21
|
+
+addSourcedEntity(sourcedEntity: SourcedEntity): void
|
|
22
|
+
+getJSON(): string
|
|
23
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
24
|
+
+sourcedEntities: Set<SourcedEntity>
|
|
25
|
+
}
|
|
26
|
+
class Comment extends SourcedEntity {
|
|
27
|
+
-_isJSDoc: boolean
|
|
28
|
+
-_container: SourcedEntity
|
|
29
|
+
-_content: string
|
|
30
|
+
+getJSON(): string
|
|
31
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
32
|
+
+isJSDoc: boolean
|
|
33
|
+
+isJSDoc: boolean
|
|
34
|
+
+container: SourcedEntity
|
|
35
|
+
+container: SourcedEntity
|
|
36
|
+
+content: string
|
|
37
|
+
+content: string
|
|
38
|
+
}
|
|
39
|
+
class SourceAnchor extends Entity {
|
|
40
|
+
-_element: SourcedEntity
|
|
41
|
+
+getJSON(): string
|
|
42
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
43
|
+
+element: SourcedEntity
|
|
44
|
+
+element: SourcedEntity
|
|
45
|
+
}
|
|
46
|
+
class SourcedEntity extends Entity {
|
|
47
|
+
-_isStub: boolean
|
|
48
|
+
-_sourceAnchor: SourceAnchor
|
|
49
|
+
-_comments: Set<Comment>
|
|
50
|
+
+addComment(comment: Comment): void
|
|
51
|
+
-_declaredSourceLanguage: SourceLanguage
|
|
52
|
+
+getJSON(): string
|
|
53
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
54
|
+
+isStub: boolean
|
|
55
|
+
+isStub: boolean
|
|
56
|
+
+sourceAnchor: SourceAnchor
|
|
57
|
+
+sourceAnchor: SourceAnchor
|
|
58
|
+
+comments: Set<Comment>
|
|
59
|
+
+declaredSourceLanguage: SourceLanguage
|
|
60
|
+
+declaredSourceLanguage: SourceLanguage
|
|
61
|
+
}
|
|
62
|
+
class ScopingEntity extends ContainerEntity {
|
|
63
|
+
-_modules: Set<Module>
|
|
64
|
+
+addModule(childModule: Module): void
|
|
65
|
+
+getJSON(): string
|
|
66
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
67
|
+
+modules: Set<Module>
|
|
68
|
+
}
|
|
69
|
+
class ScriptEntity extends ScopingEntity {
|
|
70
|
+
-_numberOfLinesOfText: number
|
|
71
|
+
-_numberOfCharacters: number
|
|
72
|
+
+getJSON(): string
|
|
73
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
74
|
+
+numberOfLinesOfText: number
|
|
75
|
+
+numberOfLinesOfText: number
|
|
76
|
+
+numberOfCharacters: number
|
|
77
|
+
+numberOfCharacters: number
|
|
78
|
+
}
|
|
79
|
+
class Module extends ScriptEntity {
|
|
80
|
+
+isAmbient: boolean
|
|
81
|
+
+isAmbient: boolean
|
|
82
|
+
-_isAmbient: boolean
|
|
83
|
+
+isNamespace: boolean
|
|
84
|
+
+isNamespace: boolean
|
|
85
|
+
-_isNamespace: boolean
|
|
86
|
+
+isModule: boolean
|
|
87
|
+
+isModule: boolean
|
|
88
|
+
-_isModule: boolean
|
|
89
|
+
-_parentScope: ScopingEntity
|
|
90
|
+
-_outgoingImports: Set<ImportClause>
|
|
91
|
+
+addOutgoingImport(importClause: ImportClause): void
|
|
92
|
+
+getJSON(): string
|
|
93
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
94
|
+
+parentScope: ScopingEntity
|
|
95
|
+
+parentScope: ScopingEntity
|
|
96
|
+
+outgoingImports: Set<ImportClause>
|
|
97
|
+
}
|
|
98
|
+
class ImportClause extends Entity {
|
|
99
|
+
-_importingEntity: Module
|
|
100
|
+
-_importedEntity: NamedEntity
|
|
101
|
+
-_moduleSpecifier: string
|
|
102
|
+
+getJSON(): string
|
|
103
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
104
|
+
+importingEntity: Module
|
|
105
|
+
+importingEntity: Module
|
|
106
|
+
+importedEntity: NamedEntity
|
|
107
|
+
+importedEntity: NamedEntity
|
|
108
|
+
+moduleSpecifier: string
|
|
109
|
+
+moduleSpecifier: string
|
|
110
|
+
}
|
|
111
|
+
class Alias extends NamedEntity {
|
|
112
|
+
-_parentEntity: NamedEntity
|
|
113
|
+
-_aliasedEntity: Type
|
|
114
|
+
+getJSON(): string
|
|
115
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
116
|
+
+parentEntity: NamedEntity
|
|
117
|
+
+parentEntity: NamedEntity
|
|
118
|
+
+aliasedEntity: Type
|
|
119
|
+
+aliasedEntity: Type
|
|
120
|
+
}
|
|
121
|
+
class Decorator extends NamedEntity {
|
|
122
|
+
-_decoratorExpression: string
|
|
123
|
+
-_decoratedEntity: NamedEntity
|
|
124
|
+
+getJSON(): string
|
|
125
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
126
|
+
+decoratorExpression: string
|
|
127
|
+
+decoratorExpression: string
|
|
128
|
+
+decoratedEntity: NamedEntity
|
|
129
|
+
+decoratedEntity: NamedEntity
|
|
130
|
+
}
|
|
131
|
+
class NamedEntity extends SourcedEntity {
|
|
132
|
+
-_fullyQualifiedName: string
|
|
133
|
+
-_receivedInvocations: Set<Invocation>
|
|
134
|
+
+addReceivedInvocation(receivedInvocation: Invocation): void
|
|
135
|
+
-_incomingImports: Set<ImportClause>
|
|
136
|
+
+addIncomingImport(anImport: ImportClause): void
|
|
137
|
+
-_name: string
|
|
138
|
+
-_aliases: Set<Alias>
|
|
139
|
+
+addAlias(alias: Alias): void
|
|
140
|
+
-_decorators: Set<Decorator>
|
|
141
|
+
+addDecorator(decorator: Decorator): void
|
|
142
|
+
+getJSON(): string
|
|
143
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
144
|
+
+fullyQualifiedName: string
|
|
145
|
+
+fullyQualifiedName: string
|
|
146
|
+
+receivedInvocations: Set<Invocation>
|
|
147
|
+
+incomingImports: Set<ImportClause>
|
|
148
|
+
+name: string
|
|
149
|
+
+name: string
|
|
150
|
+
+aliases: Set<Alias>
|
|
151
|
+
+decorators: Set<Decorator>
|
|
152
|
+
}
|
|
153
|
+
class Parameter extends StructuralEntity {
|
|
154
|
+
-_parentEntity: BehavioralEntity
|
|
155
|
+
+getJSON(): string
|
|
156
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
157
|
+
+parentEntity: BehavioralEntity
|
|
158
|
+
+parentEntity: BehavioralEntity
|
|
159
|
+
}
|
|
160
|
+
class Property extends StructuralEntity {
|
|
161
|
+
-_isClassSide: boolean
|
|
162
|
+
+readOnly: boolean
|
|
163
|
+
+readOnly: boolean
|
|
164
|
+
-_readOnly: boolean
|
|
165
|
+
-_parentEntity: Class | Interface
|
|
166
|
+
+isDefinitelyAssigned: boolean
|
|
167
|
+
+isDefinitelyAssigned: boolean
|
|
168
|
+
+isOptional: boolean
|
|
169
|
+
+isOptional: boolean
|
|
170
|
+
+isJavaScriptPrivate: boolean
|
|
171
|
+
+isJavaScriptPrivate: boolean
|
|
172
|
+
-_isDefinitelyAssigned: boolean
|
|
173
|
+
-_isOptional: boolean
|
|
174
|
+
-_isJavaScriptPrivate: boolean
|
|
175
|
+
+visibility: VisibilityTypes
|
|
176
|
+
+visibility: VisibilityTypes
|
|
177
|
+
-_visibility: VisibilityTypes
|
|
178
|
+
+getJSON(): string
|
|
179
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
180
|
+
+isClassSide: boolean
|
|
181
|
+
+isClassSide: boolean
|
|
182
|
+
+parentEntity: Class | Interface
|
|
183
|
+
+parentEntity: Class | Interface
|
|
184
|
+
}
|
|
185
|
+
class Inheritance extends Entity {
|
|
186
|
+
-_superclass: Class | Interface
|
|
187
|
+
-_subclass: Class | Interface
|
|
188
|
+
+getJSON(): string
|
|
189
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
190
|
+
+superclass: Class | Interface
|
|
191
|
+
+superclass: Class | Interface
|
|
192
|
+
+subclass: Class | Interface
|
|
193
|
+
+subclass: Class | Interface
|
|
194
|
+
}
|
|
195
|
+
class Class extends Type {
|
|
196
|
+
-_isAbstract: boolean
|
|
197
|
+
-_properties: Set<Property>
|
|
198
|
+
+addProperty(property: Property): void
|
|
199
|
+
-_methods: Set<Method>
|
|
200
|
+
+addMethod(method: Method): void
|
|
201
|
+
-_superInheritances: Set<Inheritance>
|
|
202
|
+
+addSuperInheritance(superInheritance: Inheritance): void
|
|
203
|
+
-_subInheritances: Set<Inheritance>
|
|
204
|
+
+addSubInheritance(subInheritance: Inheritance): void
|
|
205
|
+
+getJSON(): string
|
|
206
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
207
|
+
+isAbstract: boolean
|
|
208
|
+
+isAbstract: boolean
|
|
209
|
+
+properties: Set<Property>
|
|
210
|
+
+methods: Set<Method>
|
|
211
|
+
+superInheritances: Set<Inheritance>
|
|
212
|
+
+subInheritances: Set<Inheritance>
|
|
213
|
+
}
|
|
214
|
+
class Method extends BehavioralEntity {
|
|
215
|
+
-_parentEntity: Class | Interface
|
|
216
|
+
-_kind: string
|
|
217
|
+
-_isAbstract: boolean
|
|
218
|
+
-_isClassSide: boolean
|
|
219
|
+
-_isPrivate: boolean
|
|
220
|
+
-_isPublic: boolean
|
|
221
|
+
-_isProtected: boolean
|
|
222
|
+
+getJSON(): string
|
|
223
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
224
|
+
+parentEntity: Class | Interface
|
|
225
|
+
+parentEntity: Class | Interface
|
|
226
|
+
+kind: string
|
|
227
|
+
+kind: string
|
|
228
|
+
+isAbstract: boolean
|
|
229
|
+
+isAbstract: boolean
|
|
230
|
+
+isClassSide: boolean
|
|
231
|
+
+isClassSide: boolean
|
|
232
|
+
+isPrivate: boolean
|
|
233
|
+
+isPrivate: boolean
|
|
234
|
+
+isPublic: boolean
|
|
235
|
+
+isPublic: boolean
|
|
236
|
+
+isProtected: boolean
|
|
237
|
+
+isProtected: boolean
|
|
238
|
+
}
|
|
239
|
+
class Interface extends Type {
|
|
240
|
+
-_properties: Set<Property>
|
|
241
|
+
+addProperty(property: Property): void
|
|
242
|
+
-_methods: Set<Method>
|
|
243
|
+
+addMethod(method: Method): void
|
|
244
|
+
-_superInheritances: Set<Inheritance>
|
|
245
|
+
+addSuperInheritance(superInheritance: Inheritance): void
|
|
246
|
+
-_subInheritances: Set<Inheritance>
|
|
247
|
+
+addSubInheritance(subInheritance: Inheritance): void
|
|
248
|
+
+getJSON(): string
|
|
249
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
250
|
+
+properties: Set<Property>
|
|
251
|
+
+methods: Set<Method>
|
|
252
|
+
+superInheritances: Set<Inheritance>
|
|
253
|
+
+subInheritances: Set<Inheritance>
|
|
254
|
+
}
|
|
255
|
+
class PrimitiveType extends Type {
|
|
256
|
+
+getJSON(): string
|
|
257
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
258
|
+
}
|
|
259
|
+
class ParametricClass extends Class {
|
|
260
|
+
-_genericParameters: Set<ParameterType>
|
|
261
|
+
+addGenericParameter(genericParameter: ParameterType): void
|
|
262
|
+
+clearGenericParameters(): void
|
|
263
|
+
-_concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
264
|
+
+addConcreteParameter(concreteParameter: Class | Interface | PrimitiveType): void
|
|
265
|
+
+getJSON(): string
|
|
266
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
267
|
+
+genericParameters: Set<ParameterType>
|
|
268
|
+
+concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
269
|
+
}
|
|
270
|
+
class ParametricInterface extends Interface {
|
|
271
|
+
-_genericParameters: Set<ParameterType>
|
|
272
|
+
+addGenericParameter(genericParameter: ParameterType): void
|
|
273
|
+
+clearGenericParameters(): void
|
|
274
|
+
-_concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
275
|
+
+addConcreteParameter(concreteParameter: Class | Interface | PrimitiveType): void
|
|
276
|
+
+getJSON(): string
|
|
277
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
278
|
+
+genericParameters: Set<ParameterType>
|
|
279
|
+
+concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
280
|
+
}
|
|
281
|
+
class Function extends BehavioralEntity {
|
|
282
|
+
+getJSON(): string
|
|
283
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
284
|
+
}
|
|
285
|
+
class Accessor extends Method {
|
|
286
|
+
+getJSON(): string
|
|
287
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
288
|
+
}
|
|
289
|
+
class ParametricMethod extends Method {
|
|
290
|
+
-_concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
291
|
+
+addConcreteParameter(concreteParameter: Class | Interface | PrimitiveType): void
|
|
292
|
+
+getJSON(): string
|
|
293
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
294
|
+
+concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
295
|
+
}
|
|
296
|
+
class ParametricFunction extends Function {
|
|
297
|
+
-_concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
298
|
+
+addConcreteParameter(concreteParameter: Class | Interface | PrimitiveType): void
|
|
299
|
+
+getJSON(): string
|
|
300
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
301
|
+
+concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
302
|
+
}
|
|
303
|
+
class ArrowFunction extends BehavioralEntity {
|
|
304
|
+
+getJSON(): string
|
|
305
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
306
|
+
}
|
|
307
|
+
class ParametricArrowFunction extends ArrowFunction {
|
|
308
|
+
-_concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
309
|
+
+addConcreteParameter(concreteParameter: Class | Interface | PrimitiveType): void
|
|
310
|
+
+getJSON(): string
|
|
311
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
312
|
+
+concreteParameters: Set<Class | Interface | PrimitiveType>
|
|
313
|
+
}
|
|
314
|
+
class ParameterType extends Type {
|
|
315
|
+
-_parentGeneric: Method | ParametricArrowFunction | ArrowFunction | ParametricClass | ParametricInterface | ParametricMethod | Accessor | FamixFunction | ParametricFunction
|
|
316
|
+
-_baseType: Type
|
|
317
|
+
-_arguments: Set<Type>
|
|
318
|
+
+addArgument(argument: Type): void
|
|
319
|
+
+getJSON(): string
|
|
320
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
321
|
+
+parentGeneric: Method | ParametricArrowFunction | ArrowFunction | ParametricClass | ParametricInterface | ParametricMethod | Accessor | FamixFunction | ParametricFunction
|
|
322
|
+
+parentGeneric: Method | ParametricArrowFunction | ArrowFunction | ParametricClass | ParametricInterface | ParametricMethod | Accessor | FamixFunction | ParametricFunction
|
|
323
|
+
+baseType: Type
|
|
324
|
+
+baseType: Type
|
|
325
|
+
+arguments: Set<Type>
|
|
326
|
+
}
|
|
327
|
+
class BehavioralEntity extends ContainerEntity {
|
|
328
|
+
-_signature: string
|
|
329
|
+
-_parameters: Set<Parameter>
|
|
330
|
+
+addParameter(parameter: Parameter): void
|
|
331
|
+
-_numberOfParameters: number
|
|
332
|
+
-_incomingInvocations: Set<Invocation>
|
|
333
|
+
+addIncomingInvocation(incomingInvocation: Invocation): void
|
|
334
|
+
-_declaredType: Type
|
|
335
|
+
-_genericParameters: Set<ParameterType>
|
|
336
|
+
+addGenericParameter(genericParameter: ParameterType): void
|
|
337
|
+
+clearGenericParameters(): void
|
|
338
|
+
+getJSON(): string
|
|
339
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
340
|
+
+signature: string
|
|
341
|
+
+signature: string
|
|
342
|
+
+parameters: Set<Parameter>
|
|
343
|
+
+numberOfParameters: number
|
|
344
|
+
+numberOfParameters: number
|
|
345
|
+
+incomingInvocations: Set<Invocation>
|
|
346
|
+
+declaredType: Type
|
|
347
|
+
+declaredType: Type
|
|
348
|
+
+genericParameters: Set<ParameterType>
|
|
349
|
+
}
|
|
350
|
+
class Invocation extends Entity {
|
|
351
|
+
-_candidates: Set<BehavioralEntity>
|
|
352
|
+
+addCandidate(candidate: BehavioralEntity): void
|
|
353
|
+
-_receiver: NamedEntity
|
|
354
|
+
-_sender: ContainerEntity
|
|
355
|
+
-_signature: string
|
|
356
|
+
+getJSON(): string
|
|
357
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
358
|
+
+candidates: Set<BehavioralEntity>
|
|
359
|
+
+receiver: NamedEntity
|
|
360
|
+
+receiver: NamedEntity
|
|
361
|
+
+sender: ContainerEntity
|
|
362
|
+
+sender: ContainerEntity
|
|
363
|
+
+signature: string
|
|
364
|
+
+signature: string
|
|
365
|
+
}
|
|
366
|
+
class Reference extends Entity {
|
|
367
|
+
-_source: ContainerEntity
|
|
368
|
+
-_target: Type
|
|
369
|
+
+getJSON(): string
|
|
370
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
371
|
+
+source: ContainerEntity
|
|
372
|
+
+source: ContainerEntity
|
|
373
|
+
+target: Type
|
|
374
|
+
+target: Type
|
|
375
|
+
}
|
|
376
|
+
class Variable extends StructuralEntity {
|
|
377
|
+
-_parentContainerEntity: ContainerEntity
|
|
378
|
+
+getJSON(): string
|
|
379
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
380
|
+
+parentContainerEntity: ContainerEntity
|
|
381
|
+
+parentContainerEntity: ContainerEntity
|
|
382
|
+
}
|
|
383
|
+
class ContainerEntity extends NamedEntity {
|
|
384
|
+
-_parentContainerEntity: ContainerEntity
|
|
385
|
+
-_childrenContainerEntities: Set<ContainerEntity>
|
|
386
|
+
+addChildContainerEntity(childContainerEntity: ContainerEntity): void
|
|
387
|
+
-_cyclomaticComplexity: number
|
|
388
|
+
-_numberOfStatements: number
|
|
389
|
+
-_outgoingReferences: Set<Reference>
|
|
390
|
+
+addOutgoingReference(outgoingReference: Reference): void
|
|
391
|
+
-_numberOfLinesOfCode: number
|
|
392
|
+
-_outgoingInvocations: Set<Invocation>
|
|
393
|
+
+addOutgoingInvocation(outgoingInvocation: Invocation): void
|
|
394
|
+
-_accesses: Set<Access>
|
|
395
|
+
+addAccess(access: Access): void
|
|
396
|
+
-childrenTypes: Set<Type>
|
|
397
|
+
+addType(childType: Type): void
|
|
398
|
+
-childrenFunctions: Set<FamixFunctionEntity>
|
|
399
|
+
+addFunction(childFunction: FamixFunctionEntity): void
|
|
400
|
+
-_variables: Set<Variable>
|
|
401
|
+
+addVariable(variable: Variable): void
|
|
402
|
+
+getJSON(): string
|
|
403
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
404
|
+
+parentContainerEntity: ContainerEntity
|
|
405
|
+
+parentContainerEntity: ContainerEntity
|
|
406
|
+
+childrenContainerEntities: Set<ContainerEntity>
|
|
407
|
+
+cyclomaticComplexity: number
|
|
408
|
+
+cyclomaticComplexity: number
|
|
409
|
+
+numberOfStatements: number
|
|
410
|
+
+numberOfStatements: number
|
|
411
|
+
+outgoingReferences: Set<Reference>
|
|
412
|
+
+numberOfLinesOfCode: number
|
|
413
|
+
+numberOfLinesOfCode: number
|
|
414
|
+
+outgoingInvocations: Set<Invocation>
|
|
415
|
+
+accesses: Set<Access>
|
|
416
|
+
+types: Set<Type>
|
|
417
|
+
+functions: Set<FamixFunctionEntity>
|
|
418
|
+
+variables: Set<Variable>
|
|
419
|
+
}
|
|
420
|
+
class Type extends ContainerEntity {
|
|
421
|
+
-_container: ContainerEntity
|
|
422
|
+
-_typeAliases: Set<Alias>
|
|
423
|
+
+addTypeAlias(typeAlias: Alias): void
|
|
424
|
+
-_structuresWithDeclaredType: Set<StructuralEntity>
|
|
425
|
+
+addStructureWithDeclaredType(structureWithDeclaredType: StructuralEntity): void
|
|
426
|
+
-_behavioralEntitiesWithDeclaredType: Set<BehavioralEntity>
|
|
427
|
+
+addBehavioralEntityWithDeclaredType(behavioralEntityWithDeclaredType: BehavioralEntity): void
|
|
428
|
+
-_incomingReferences: Set<Reference>
|
|
429
|
+
+addIncomingReference(incomingReference: Reference): void
|
|
430
|
+
+getJSON(): string
|
|
431
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
432
|
+
+container: ContainerEntity
|
|
433
|
+
+container: ContainerEntity
|
|
434
|
+
+typeAliases: Set<Alias>
|
|
435
|
+
+structuresWithDeclaredType: Set<StructuralEntity>
|
|
436
|
+
+behavioralEntitiesWithDeclaredType: Set<BehavioralEntity>
|
|
437
|
+
+incomingReferences: Set<Reference>
|
|
438
|
+
}
|
|
439
|
+
class StructuralEntity extends NamedEntity {
|
|
440
|
+
-_incomingAccesses: Set<Access>
|
|
441
|
+
+addIncomingAccess(incomingAccess: Access): void
|
|
442
|
+
-_declaredType: Type
|
|
443
|
+
+getJSON(): string
|
|
444
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
445
|
+
+incomingAccesses: Set<Access>
|
|
446
|
+
+declaredType: Type
|
|
447
|
+
+declaredType: Type
|
|
448
|
+
}
|
|
449
|
+
class Access extends Entity {
|
|
450
|
+
-_accessor: ContainerEntity
|
|
451
|
+
-_variable: StructuralEntity
|
|
452
|
+
-_isWrite: boolean
|
|
453
|
+
+getJSON(): string
|
|
454
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
455
|
+
+accessor: ContainerEntity
|
|
456
|
+
+accessor: ContainerEntity
|
|
457
|
+
+variable: StructuralEntity
|
|
458
|
+
+variable: StructuralEntity
|
|
459
|
+
+isWrite: boolean
|
|
460
|
+
+isWrite: boolean
|
|
461
|
+
}
|
|
462
|
+
class Concretisation extends Entity {
|
|
463
|
+
-_genericEntity: ParametricClass | ParametricInterface | ParametricMethod | ParametricFunction
|
|
464
|
+
-_concreteEntity: ParametricClass | ParametricInterface | ParametricMethod | ParametricFunction
|
|
465
|
+
+getJSON(): string
|
|
466
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
467
|
+
+genericEntity: ParametricClass | ParametricInterface | ParametricMethod | ParametricFunction
|
|
468
|
+
+genericEntity: ParametricClass | ParametricInterface | ParametricMethod | ParametricFunction
|
|
469
|
+
+concreteEntity: ParametricClass | ParametricInterface | ParametricMethod | ParametricFunction
|
|
470
|
+
+concreteEntity: ParametricClass | ParametricInterface | ParametricMethod | ParametricFunction
|
|
471
|
+
}
|
|
472
|
+
class Enum extends Type {
|
|
473
|
+
-_values: Set<EnumValue>
|
|
474
|
+
+addValue(value: EnumValue): void
|
|
475
|
+
+getJSON(): string
|
|
476
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
477
|
+
+values: Set<EnumValue>
|
|
478
|
+
}
|
|
479
|
+
class EnumValue extends StructuralEntity {
|
|
480
|
+
-_parentEntity: Enum
|
|
481
|
+
+getJSON(): string
|
|
482
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
483
|
+
+parentEntity: Enum
|
|
484
|
+
+parentEntity: Enum
|
|
485
|
+
}
|
|
486
|
+
class IndexedFileAnchor extends SourceAnchor {
|
|
487
|
+
-_startPos: number
|
|
488
|
+
-_endPos: number
|
|
489
|
+
-_fileName: string
|
|
490
|
+
+getJSON(): string
|
|
491
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
492
|
+
+startPos: number
|
|
493
|
+
+startPos: number
|
|
494
|
+
+endPos: number
|
|
495
|
+
+endPos: number
|
|
496
|
+
+fileName: string
|
|
497
|
+
+fileName: string
|
|
498
|
+
}
|
|
499
|
+
class ParameterConcretisation extends Entity {
|
|
500
|
+
-_genericParameter: ParameterType
|
|
501
|
+
-_concreteParameter: PrimitiveType
|
|
502
|
+
-_concretisations: Set<Concretisation>
|
|
503
|
+
+addConcretisation(concretisation: Concretisation): void
|
|
504
|
+
+getJSON(): string
|
|
505
|
+
+addPropertiesToExporter(exporter: FamixJSONExporter): void
|
|
506
|
+
+genericParameter: ParameterType
|
|
507
|
+
+genericParameter: ParameterType
|
|
508
|
+
+concreteParameter: PrimitiveType
|
|
509
|
+
+concreteParameter: PrimitiveType
|
|
510
|
+
+concretisations: Set<Concretisation>
|
|
511
|
+
}
|
|
512
|
+
interface SearchParameters {
|
|
513
|
+
+searchArray: string[]
|
|
514
|
+
+targetArray: string[]
|
|
515
|
+
+start?: number | undefined
|
|
516
|
+
}
|
|
517
|
+
class EntityDictionary {
|
|
518
|
+
+famixRep: FamixRepository
|
|
519
|
+
-fmxAliasMap: Map<string, Famix.Alias>
|
|
520
|
+
-fmxClassMap: Map<string, Famix.Class | Famix.ParametricClass>
|
|
521
|
+
-fmxInterfaceMap: Map<string, Famix.Interface | Famix.ParametricInterface>
|
|
522
|
+
-fmxModuleMap: Map<string, Famix.Module>
|
|
523
|
+
-fmxFileMap: Map<string, Famix.Module | Famix.ScriptEntity>
|
|
524
|
+
-fmxTypeMap: Map<TSMorphTypeDeclaration, Famix.Type | Famix.ParameterType>
|
|
525
|
+
-fmxPrimitiveTypeMap: Map<string, Famix.PrimitiveType>
|
|
526
|
+
-fmxFunctionAndMethodMap: Map<string, Famix.Method | Famix.ParametricMethod | Famix.Function | Famix.ParametricFunction>
|
|
527
|
+
-fmxArrowFunctionMap: Map<string, Famix.ArrowFunction>
|
|
528
|
+
-UNKNOWN_VALUE: string
|
|
529
|
+
+fmxElementObjectMap: Map<Famix.Entity, TSMorphObjectType>
|
|
530
|
+
+tsMorphElementObjectMap: Map<TSMorphObjectType, Famix.Entity>
|
|
531
|
+
+addSourceAnchor(fmx: Famix.SourcedEntity, node: TSMorphObjectType): Famix.IndexedFileAnchor
|
|
532
|
+
+makeFamixIndexFileAnchor(sourceElement: TSMorphObjectType, famixElement: Famix.SourcedEntity): void
|
|
533
|
+
+createOrGetFamixFile(f: SourceFile, isModule: boolean): Famix.Module | Famix.ScriptEntity
|
|
534
|
+
+createOrGetFamixModule(m: ModuleDeclaration): Famix.Module
|
|
535
|
+
+createFamixAlias(a: TypeAliasDeclaration): Famix.Alias
|
|
536
|
+
+createOrGetFamixClass(cls: ClassDeclaration): Famix.Class | Famix.ParametricClass
|
|
537
|
+
+createOrGetFamixInterface(inter: InterfaceDeclaration): Famix.Interface | Famix.ParametricInterface
|
|
538
|
+
+createOrGetFamixConcreteElement(concreteElement: ParametricVariantType, concreteElementDeclaration: ConcreteElementTSMorphType, concreteArguments: TypeNode<ts.TypeNode>[]): ParametricVariantType
|
|
539
|
+
+createFamixProperty(property: PropertyDeclaration | PropertySignature): Famix.Property
|
|
540
|
+
+createOrGetFamixMethod(method: MethodDeclaration | ConstructorDeclaration | MethodSignature | GetAccessorDeclaration | SetAccessorDeclaration, currentCC: { [key: string]: number; }): Famix.Method | Famix.ParametricMethod | Famix.Accessor
|
|
541
|
+
+createOrGetFamixFunction(func: FunctionDeclaration | FunctionExpression, currentCC: { [key: string]: number; }): Famix.Function | Famix.ParametricFunction
|
|
542
|
+
+createFamixParameter(param: ParameterDeclaration): Famix.Parameter
|
|
543
|
+
+createFamixParameterType(tp: TypeParameterDeclaration): Famix.ParameterType
|
|
544
|
+
+createOrGetFamixConcreteType(element: TypeNode<ts.TypeNode>): Famix.Class | Famix.Interface | Famix.ParameterType | Famix.PrimitiveType
|
|
545
|
+
+createFamixVariable(variable: VariableDeclaration): Famix.Variable
|
|
546
|
+
+createFamixEnum(enumEntity: EnumDeclaration): Famix.Enum
|
|
547
|
+
+createFamixEnumValue(enumMember: EnumMember): Famix.EnumValue
|
|
548
|
+
+createOrGetFamixDecorator(decorator: Decorator, decoratedEntity: PropertyDeclaration | MethodDeclaration | GetAccessorDeclaration | SetAccessorDeclaration | ParameterDeclaration | ClassDeclaration): Famix.Decorator
|
|
549
|
+
+createFamixComment(comment: CommentRange, fmxScope: Famix.NamedEntity, isJSDoc: boolean): Famix.Comment
|
|
550
|
+
+createOrGetFamixType(typeName: string, element: TSMorphTypeDeclaration): Famix.Type
|
|
551
|
+
+createOrGetFamixParametricType(typeName: string, element: TSMorphParametricType): Famix.Type
|
|
552
|
+
+createOrGetFamixParameterType(parameterTypeName: string, element: TypeParameterDeclaration): Famix.ParameterType
|
|
553
|
+
+createOrGetFamixPrimitiveType(typeName: string): Famix.PrimitiveType
|
|
554
|
+
+createFamixAccess(node: Identifier, id: number): void
|
|
555
|
+
+createFamixInvocation(nodeReferringToInvocable: Identifier, invocable: InvocableType, id: number): void
|
|
556
|
+
+createFamixInheritance(cls: ClassDeclaration | InterfaceDeclaration, inhClass: ClassDeclaration | InterfaceDeclaration | ExpressionWithTypeArguments): void
|
|
557
|
+
+createFamixImportClause(importedEntity: Famix.NamedEntity, importingEntity: Famix.Module): void
|
|
558
|
+
+oldCreateFamixImportClause(importClauseInfo: { importDeclaration?: ImportEqualsDeclaration | ImportDeclaration | undefined; importerSourceFile: SourceFile; moduleSpecifierFilePath: string; importElement: ImportSpecifier | Identifier; isInExports: boolean; isDefaultExport: boolean; }): void
|
|
559
|
+
+createOrGetFamixArrowFunction(arrowExpression: Expression<ts.Expression>, currentCC: { [key: string]: number; }): Famix.ParametricArrowFunction | Famix.ArrowFunction
|
|
560
|
+
+createFamixConcretisation(conEntity: Famix.ParametricClass | Famix.ParametricInterface | Famix.ParametricMethod | Famix.ParametricFunction, genEntity: Famix.ParametricClass | Famix.ParametricInterface | Famix.ParametricMethod | Famix.ParametricFunction): Famix.Concretisation
|
|
561
|
+
+createFamixParameterConcretisation(concretisation: Famix.Concretisation): Famix.ParameterConcretisation | undefined
|
|
562
|
+
+createFamixConcretisationClassOrInterfaceSpecialisation(element: ClassDeclaration | InterfaceDeclaration): void
|
|
563
|
+
+createFamixConcretisationGenericInstantiation(cls: ClassDeclaration): void
|
|
564
|
+
+createFamixConcretisationFunctionInstantiation(element: MethodDeclaration | FunctionDeclaration): void
|
|
565
|
+
+createFamixConcretisationInterfaceClass(cls: ClassDeclaration): void
|
|
566
|
+
+createFamixConcretisationTypeInstanciation(element: ClassDeclaration | InterfaceDeclaration): void
|
|
567
|
+
+convertToRelativePath(absolutePath: string, absolutePathProject: string): string
|
|
568
|
+
}
|
|
569
|
+
class FamixRepository {
|
|
570
|
+
-elements: Set<FamixBaseElement>
|
|
571
|
+
-famixClasses: Set<Class>
|
|
572
|
+
-famixInterfaces: Set<Interface>
|
|
573
|
+
-famixModules: Set<Module>
|
|
574
|
+
-famixMethods: Set<Method>
|
|
575
|
+
-famixVariables: Set<Variable>
|
|
576
|
+
-famixFunctions: Set<FamixFunctionEntity>
|
|
577
|
+
-famixFiles: Set<Module | ScriptEntity>
|
|
578
|
+
-idCounter: number
|
|
579
|
+
-absolutePath: string
|
|
580
|
+
-fmxElementObjectMap: Map<Famix.Entity, TSMorphObjectType>
|
|
581
|
+
-tsMorphObjectMap: Map<TSMorphObjectType, Famix.Entity>
|
|
582
|
+
+setFmxElementObjectMap(fmxElementObjectMap: Map<Famix.Entity, TSMorphObjectType>): void
|
|
583
|
+
+getFmxElementObjectMap(): Map<Famix.Entity, TSMorphObjectType>
|
|
584
|
+
+getAbsolutePath(): string
|
|
585
|
+
+setAbsolutePath(path: string): void
|
|
586
|
+
+getFamixEntityById(id: number): FamixBaseElement | undefined
|
|
587
|
+
+getFamixEntityByFullyQualifiedName(fullyQualifiedName: string): FamixBaseElement | undefined
|
|
588
|
+
+getFamixAccessByAccessorAndVariable(accessor: Famix.ContainerEntity, variable: Famix.StructuralEntity): Famix.Access | undefined
|
|
589
|
+
+export(arg0: { format: string; }): string
|
|
590
|
+
+_getAllEntities(): Set<FamixBaseElement>
|
|
591
|
+
+_getAllEntitiesWithType(theType: string): Set<FamixBaseElement>
|
|
592
|
+
+_getFamixClass(fullyQualifiedName: string): Class | undefined
|
|
593
|
+
+_getFamixInterface(fullyQualifiedName: string): Interface | undefined
|
|
594
|
+
+_getFamixMethod(fullyQualifiedName: string): Method | undefined
|
|
595
|
+
+_getFamixFunction(fullyQualifiedName: string): FamixFunctionEntity | undefined
|
|
596
|
+
+_getFamixVariable(fullyQualifiedName: string): Variable | undefined
|
|
597
|
+
+_getFamixModule(fullyQualifiedName: string): Module | undefined
|
|
598
|
+
+_getFamixModules(): Set<Module>
|
|
599
|
+
+_getFamixFile(fullyQualifiedName: string): Module | ScriptEntity | undefined
|
|
600
|
+
+_getFamixFiles(): Set<Module | ScriptEntity>
|
|
601
|
+
+_methodNamesAsSetFromClass(className: string): Set<string>
|
|
602
|
+
+_methodParentsAsSetFromClass(className: string): Set<Type>
|
|
603
|
+
+_initMapFromModel(model: string): Map<number, unknown>
|
|
604
|
+
+addElement(element: FamixBaseElement): void
|
|
605
|
+
-validateFQNs(): void
|
|
606
|
+
+getJSON(): string
|
|
607
|
+
}
|
|
608
|
+
class Importer {
|
|
609
|
+
-project: Project
|
|
610
|
+
+famixRepFromPaths(paths: string[]): FamixRepository
|
|
611
|
+
-processEntities(project: Project): void
|
|
612
|
+
+famixRepFromSource(filename: string, source: string): FamixRepository
|
|
613
|
+
+famixRepFromProject(project: Project): FamixRepository
|
|
614
|
+
}
|
|
615
|
+
FamixJSONExporter --> "1" FamixBaseElement
|
|
616
|
+
FamixBaseElement --> "1" FamixJSONExporter
|
|
617
|
+
Entity --> "1" FamixJSONExporter
|
|
618
|
+
SourceLanguage --> "1" SourcedEntity
|
|
619
|
+
SourceLanguage --> "1" FamixJSONExporter
|
|
620
|
+
Comment --> "1" SourcedEntity
|
|
621
|
+
Comment --> "1" FamixJSONExporter
|
|
622
|
+
SourceAnchor --> "1" SourcedEntity
|
|
623
|
+
SourceAnchor --> "1" FamixJSONExporter
|
|
624
|
+
SourcedEntity --> "1" SourceAnchor
|
|
625
|
+
SourcedEntity --> "1" Comment
|
|
626
|
+
SourcedEntity --> "1" SourceLanguage
|
|
627
|
+
SourcedEntity --> "1" FamixJSONExporter
|
|
628
|
+
ScopingEntity --> "1" Module
|
|
629
|
+
ScopingEntity --> "1" FamixJSONExporter
|
|
630
|
+
ScriptEntity --> "1" FamixJSONExporter
|
|
631
|
+
Module --> "1" ScopingEntity
|
|
632
|
+
Module --> "1" ImportClause
|
|
633
|
+
Module --> "1" FamixJSONExporter
|
|
634
|
+
ImportClause --> "1" Module
|
|
635
|
+
ImportClause --> "1" NamedEntity
|
|
636
|
+
ImportClause --> "1" FamixJSONExporter
|
|
637
|
+
Alias --> "1" NamedEntity
|
|
638
|
+
Alias --> "1" Type
|
|
639
|
+
Alias --> "1" FamixJSONExporter
|
|
640
|
+
Decorator --> "1" NamedEntity
|
|
641
|
+
Decorator --> "1" FamixJSONExporter
|
|
642
|
+
NamedEntity --> "1" Invocation
|
|
643
|
+
NamedEntity --> "1" ImportClause
|
|
644
|
+
NamedEntity --> "1" Alias
|
|
645
|
+
NamedEntity --> "1" Decorator
|
|
646
|
+
NamedEntity --> "1" FamixJSONExporter
|
|
647
|
+
Parameter --> "1" BehavioralEntity
|
|
648
|
+
Parameter --> "1" FamixJSONExporter
|
|
649
|
+
Property --> "1" Class
|
|
650
|
+
Property --> "1" Interface
|
|
651
|
+
Property --> "1" FamixJSONExporter
|
|
652
|
+
Inheritance --> "1" Class
|
|
653
|
+
Inheritance --> "1" Interface
|
|
654
|
+
Inheritance --> "1" FamixJSONExporter
|
|
655
|
+
Class --> "1" Property
|
|
656
|
+
Class --> "1" Method
|
|
657
|
+
Class --> "1" Inheritance
|
|
658
|
+
Class --> "1" FamixJSONExporter
|
|
659
|
+
Method --> "1" Class
|
|
660
|
+
Method --> "1" Interface
|
|
661
|
+
Method --> "1" FamixJSONExporter
|
|
662
|
+
Interface --> "1" Property
|
|
663
|
+
Interface --> "1" Method
|
|
664
|
+
Interface --> "1" Inheritance
|
|
665
|
+
Interface --> "1" FamixJSONExporter
|
|
666
|
+
PrimitiveType --> "1" FamixJSONExporter
|
|
667
|
+
ParametricClass --> "1" ParameterType
|
|
668
|
+
ParametricClass --> "1" Class
|
|
669
|
+
ParametricClass --> "1" Interface
|
|
670
|
+
ParametricClass --> "1" PrimitiveType
|
|
671
|
+
ParametricClass --> "1" FamixJSONExporter
|
|
672
|
+
ParametricInterface --> "1" ParameterType
|
|
673
|
+
ParametricInterface --> "1" Class
|
|
674
|
+
ParametricInterface --> "1" Interface
|
|
675
|
+
ParametricInterface --> "1" PrimitiveType
|
|
676
|
+
ParametricInterface --> "1" FamixJSONExporter
|
|
677
|
+
Function --> "1" FamixJSONExporter
|
|
678
|
+
Accessor --> "1" FamixJSONExporter
|
|
679
|
+
ParametricMethod --> "1" Class
|
|
680
|
+
ParametricMethod --> "1" Interface
|
|
681
|
+
ParametricMethod --> "1" PrimitiveType
|
|
682
|
+
ParametricMethod --> "1" FamixJSONExporter
|
|
683
|
+
ParametricFunction --> "1" Class
|
|
684
|
+
ParametricFunction --> "1" Interface
|
|
685
|
+
ParametricFunction --> "1" PrimitiveType
|
|
686
|
+
ParametricFunction --> "1" FamixJSONExporter
|
|
687
|
+
ArrowFunction --> "1" FamixJSONExporter
|
|
688
|
+
ParametricArrowFunction --> "1" Class
|
|
689
|
+
ParametricArrowFunction --> "1" Interface
|
|
690
|
+
ParametricArrowFunction --> "1" PrimitiveType
|
|
691
|
+
ParametricArrowFunction --> "1" FamixJSONExporter
|
|
692
|
+
ParameterType --> "1" Method
|
|
693
|
+
ParameterType --> "1" ParametricArrowFunction
|
|
694
|
+
ParameterType --> "1" ArrowFunction
|
|
695
|
+
ParameterType --> "1" ParametricClass
|
|
696
|
+
ParameterType --> "1" ParametricInterface
|
|
697
|
+
ParameterType --> "1" ParametricMethod
|
|
698
|
+
ParameterType --> "1" Accessor
|
|
699
|
+
ParameterType --> "1" ParametricFunction
|
|
700
|
+
ParameterType --> "1" Type
|
|
701
|
+
ParameterType --> "1" FamixJSONExporter
|
|
702
|
+
BehavioralEntity --> "1" Parameter
|
|
703
|
+
BehavioralEntity --> "1" Invocation
|
|
704
|
+
BehavioralEntity --> "1" Type
|
|
705
|
+
BehavioralEntity --> "1" ParameterType
|
|
706
|
+
BehavioralEntity --> "1" FamixJSONExporter
|
|
707
|
+
Invocation --> "1" BehavioralEntity
|
|
708
|
+
Invocation --> "1" NamedEntity
|
|
709
|
+
Invocation --> "1" ContainerEntity
|
|
710
|
+
Invocation --> "1" FamixJSONExporter
|
|
711
|
+
Reference --> "1" ContainerEntity
|
|
712
|
+
Reference --> "1" Type
|
|
713
|
+
Reference --> "1" FamixJSONExporter
|
|
714
|
+
Variable --> "1" ContainerEntity
|
|
715
|
+
Variable --> "1" FamixJSONExporter
|
|
716
|
+
ContainerEntity --> "1" Reference
|
|
717
|
+
ContainerEntity --> "1" Invocation
|
|
718
|
+
ContainerEntity --> "1" Access
|
|
719
|
+
ContainerEntity --> "1" Type
|
|
720
|
+
ContainerEntity --> "1" Variable
|
|
721
|
+
ContainerEntity --> "1" FamixJSONExporter
|
|
722
|
+
Type --> "1" ContainerEntity
|
|
723
|
+
Type --> "1" Alias
|
|
724
|
+
Type --> "1" StructuralEntity
|
|
725
|
+
Type --> "1" BehavioralEntity
|
|
726
|
+
Type --> "1" Reference
|
|
727
|
+
Type --> "1" FamixJSONExporter
|
|
728
|
+
StructuralEntity --> "1" Access
|
|
729
|
+
StructuralEntity --> "1" Type
|
|
730
|
+
StructuralEntity --> "1" FamixJSONExporter
|
|
731
|
+
Access --> "1" ContainerEntity
|
|
732
|
+
Access --> "1" StructuralEntity
|
|
733
|
+
Access --> "1" FamixJSONExporter
|
|
734
|
+
Concretisation --> "1" ParametricClass
|
|
735
|
+
Concretisation --> "1" ParametricInterface
|
|
736
|
+
Concretisation --> "1" ParametricMethod
|
|
737
|
+
Concretisation --> "1" ParametricFunction
|
|
738
|
+
Concretisation --> "1" FamixJSONExporter
|
|
739
|
+
Enum --> "1" EnumValue
|
|
740
|
+
Enum --> "1" FamixJSONExporter
|
|
741
|
+
EnumValue --> "1" Enum
|
|
742
|
+
EnumValue --> "1" FamixJSONExporter
|
|
743
|
+
IndexedFileAnchor --> "1" FamixJSONExporter
|
|
744
|
+
ParameterConcretisation --> "1" ParameterType
|
|
745
|
+
ParameterConcretisation --> "1" PrimitiveType
|
|
746
|
+
ParameterConcretisation --> "1" Concretisation
|
|
747
|
+
ParameterConcretisation --> "1" FamixJSONExporter
|
|
748
|
+
EntityDictionary --> "1" FamixRepository
|
|
749
|
+
EntityDictionary --> "1" Alias
|
|
750
|
+
EntityDictionary --> "1" Class
|
|
751
|
+
EntityDictionary --> "1" ParametricClass
|
|
752
|
+
EntityDictionary --> "1" Interface
|
|
753
|
+
EntityDictionary --> "1" ParametricInterface
|
|
754
|
+
EntityDictionary --> "1" Module
|
|
755
|
+
EntityDictionary --> "1" ScriptEntity
|
|
756
|
+
EntityDictionary --> "1" Type
|
|
757
|
+
EntityDictionary --> "1" ParameterType
|
|
758
|
+
EntityDictionary --> "1" PrimitiveType
|
|
759
|
+
EntityDictionary --> "1" Method
|
|
760
|
+
EntityDictionary --> "1" ParametricMethod
|
|
761
|
+
EntityDictionary --> "1" Function
|
|
762
|
+
EntityDictionary --> "1" ParametricFunction
|
|
763
|
+
EntityDictionary --> "1" ArrowFunction
|
|
764
|
+
EntityDictionary --> "1" Entity
|
|
765
|
+
EntityDictionary --> "1" SourcedEntity
|
|
766
|
+
EntityDictionary --> "1" IndexedFileAnchor
|
|
767
|
+
EntityDictionary --> "1" Property
|
|
768
|
+
EntityDictionary --> "1" Accessor
|
|
769
|
+
EntityDictionary --> "1" Parameter
|
|
770
|
+
EntityDictionary --> "1" Variable
|
|
771
|
+
EntityDictionary --> "1" Enum
|
|
772
|
+
EntityDictionary --> "1" EnumValue
|
|
773
|
+
EntityDictionary --> "1" Decorator
|
|
774
|
+
EntityDictionary --> "1" NamedEntity
|
|
775
|
+
EntityDictionary --> "1" Comment
|
|
776
|
+
EntityDictionary --> "1" ParametricArrowFunction
|
|
777
|
+
EntityDictionary --> "1" Concretisation
|
|
778
|
+
EntityDictionary --> "1" ParameterConcretisation
|
|
779
|
+
FamixRepository --> "1" FamixBaseElement
|
|
780
|
+
FamixRepository --> "1" Class
|
|
781
|
+
FamixRepository --> "1" Interface
|
|
782
|
+
FamixRepository --> "1" Module
|
|
783
|
+
FamixRepository --> "1" Method
|
|
784
|
+
FamixRepository --> "1" Variable
|
|
785
|
+
FamixRepository --> "1" ScriptEntity
|
|
786
|
+
FamixRepository --> "1" Entity
|
|
787
|
+
FamixRepository --> "1" ContainerEntity
|
|
788
|
+
FamixRepository --> "1" StructuralEntity
|
|
789
|
+
FamixRepository --> "1" Access
|
|
790
|
+
FamixRepository --> "1" Type
|
|
791
|
+
Importer --> "1" FamixRepository
|
|
792
|
+
@enduml
|