UNPKG

@microsoft.azure/autorest.incubator

Version:
25 lines 1.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const text_manipulation_1 = require("../../common/text-manipulation"); const method_1 = require("./method"); const expression_1 = require("../../csharp/code-dom/expression"); class Constructor extends method_1.Method { constructor(containingClass, objectIntializer) { super(containingClass.name); this.containingClass = containingClass; this.apply(objectIntializer); } get declaration() { const parameterDeclaration = this.parameters.joinWith(p => p.declaration, text_manipulation_1.CommaChar); return ` ${this.summaryDocumentation} ${this.parameterDocumentation} ${this.access} ${this.static} ${this.abstract} ${this.name}(${parameterDeclaration}) `.slim(); } invoke(...parameters) { return { value: `new ${this.containingClass.name}(${parameters.joinWith(each => expression_1.valueOf(each))})` }; } } exports.Constructor = Constructor; //# sourceMappingURL=constructor.js.map