UNPKG

@jqassistant/ts-lce

Version:

Tool to extract language concepts from a TypeScript codebase and export them to a JSON file.

79 lines (78 loc) 2.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LCEConstructorDeclaration = exports.LCEParameterPropertyDeclaration = exports.LCEParameterDeclaration = exports.LCEMethodDeclaration = void 0; const concept_1 = require("../concept"); const property_declaration_concept_1 = require("./property-declaration.concept"); class LCEMethodDeclaration extends concept_1.LCENamedConcept { methodName; parameters; returnType; typeParameters; decorators; visibility; async; coordinates; override; abstract; isStatic; static conceptId = "method-declaration"; constructor(methodName, fqn, parameters, returnType, typeParameters, decorators, visibility, async, coordinates, override, abstract, isStatic) { super(fqn); this.methodName = methodName; this.parameters = parameters; this.returnType = returnType; this.typeParameters = typeParameters; this.decorators = decorators; this.visibility = visibility; this.async = async; this.coordinates = coordinates; this.override = override; this.abstract = abstract; this.isStatic = isStatic; } } exports.LCEMethodDeclaration = LCEMethodDeclaration; class LCEParameterDeclaration extends concept_1.LCEConcept { index; name; type; optional; decorators; coordinates; static conceptId = "parameter-declaration"; constructor(index, name, type, optional, decorators, coordinates) { super(); this.index = index; this.name = name; this.type = type; this.optional = optional; this.decorators = decorators; this.coordinates = coordinates; } } exports.LCEParameterDeclaration = LCEParameterDeclaration; class LCEParameterPropertyDeclaration extends property_declaration_concept_1.LCEPropertyDeclaration { index; static conceptId = "parameter-property-declaration"; constructor(index, propertyName, fqn, optional, type, decorators, visibility, readonly, coordinates, override) { super(propertyName, fqn, optional, type, decorators, visibility, readonly, coordinates, override, false, false); this.index = index; } } exports.LCEParameterPropertyDeclaration = LCEParameterPropertyDeclaration; class LCEConstructorDeclaration extends concept_1.LCENamedConcept { parameters; parameterProperties; coordinates; static conceptId = "constructor-declaration"; /** * @param parameterProperties maps parameter index numbers to declared parameter properties */ constructor(fqn, parameters, parameterProperties, coordinates) { super(fqn); this.parameters = parameters; this.parameterProperties = parameterProperties; this.coordinates = coordinates; } } exports.LCEConstructorDeclaration = LCEConstructorDeclaration;