@ttsc/factory 0.15.9 → 0.15.11
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/README.md +3 -2
- package/lib/TsPrinter.d.ts +51 -11
- package/lib/TsPrinter.js +555 -70
- package/lib/TsPrinter.js.map +1 -1
- package/lib/TsPrinter.mjs +1827 -0
- package/lib/TsPrinter.mjs.map +1 -0
- package/lib/comments.mjs +76 -0
- package/lib/comments.mjs.map +1 -0
- package/lib/factory/clauses/createHeritageClause.mjs +26 -0
- package/lib/factory/clauses/createHeritageClause.mjs.map +1 -0
- package/lib/factory/clauses/createParameterDeclaration.mjs +43 -0
- package/lib/factory/clauses/createParameterDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createClassDeclaration.mjs +44 -0
- package/lib/factory/declarations/createClassDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createClassStaticBlockDeclaration.mjs +25 -0
- package/lib/factory/declarations/createClassStaticBlockDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createConstructorDeclaration.mjs +28 -0
- package/lib/factory/declarations/createConstructorDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createEnumDeclaration.mjs +31 -0
- package/lib/factory/declarations/createEnumDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createEnumMember.mjs +26 -0
- package/lib/factory/declarations/createEnumMember.mjs.map +1 -0
- package/lib/factory/declarations/createExternalModuleReference.mjs +23 -0
- package/lib/factory/declarations/createExternalModuleReference.mjs.map +1 -0
- package/lib/factory/declarations/createFunctionDeclaration.mjs +48 -0
- package/lib/factory/declarations/createFunctionDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createGetAccessorDeclaration.mjs +39 -0
- package/lib/factory/declarations/createGetAccessorDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createImportEqualsDeclaration.mjs +35 -0
- package/lib/factory/declarations/createImportEqualsDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createInterfaceDeclaration.mjs +40 -0
- package/lib/factory/declarations/createInterfaceDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createMethodDeclaration.mjs +50 -0
- package/lib/factory/declarations/createMethodDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createModuleBlock.mjs +25 -0
- package/lib/factory/declarations/createModuleBlock.mjs.map +1 -0
- package/lib/factory/declarations/createModuleDeclaration.mjs +43 -0
- package/lib/factory/declarations/createModuleDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createNamespaceExportDeclaration.mjs +24 -0
- package/lib/factory/declarations/createNamespaceExportDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createPropertyDeclaration.mjs +41 -0
- package/lib/factory/declarations/createPropertyDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createSemicolonClassElement.mjs +20 -0
- package/lib/factory/declarations/createSemicolonClassElement.mjs.map +1 -0
- package/lib/factory/declarations/createSetAccessorDeclaration.mjs +37 -0
- package/lib/factory/declarations/createSetAccessorDeclaration.mjs.map +1 -0
- package/lib/factory/declarations/createTypeAliasDeclaration.mjs +35 -0
- package/lib/factory/declarations/createTypeAliasDeclaration.mjs.map +1 -0
- package/lib/factory/expressions/createAdd.mjs +26 -0
- package/lib/factory/expressions/createAdd.mjs.map +1 -0
- package/lib/factory/expressions/createArrayBindingPattern.mjs +23 -0
- package/lib/factory/expressions/createArrayBindingPattern.mjs.map +1 -0
- package/lib/factory/expressions/createArrayLiteralExpression.mjs +25 -0
- package/lib/factory/expressions/createArrayLiteralExpression.mjs.map +1 -0
- package/lib/factory/expressions/createArrowFunction.mjs +32 -0
- package/lib/factory/expressions/createArrowFunction.mjs.map +1 -0
- package/lib/factory/expressions/createAsExpression.mjs +23 -0
- package/lib/factory/expressions/createAsExpression.mjs.map +1 -0
- package/lib/factory/expressions/createAssignment.mjs +26 -0
- package/lib/factory/expressions/createAssignment.mjs.map +1 -0
- package/lib/factory/expressions/createAwaitExpression.mjs +22 -0
- package/lib/factory/expressions/createAwaitExpression.mjs.map +1 -0
- package/lib/factory/expressions/createBinaryExpression.mjs +33 -0
- package/lib/factory/expressions/createBinaryExpression.mjs.map +1 -0
- package/lib/factory/expressions/createBindingElement.mjs +39 -0
- package/lib/factory/expressions/createBindingElement.mjs.map +1 -0
- package/lib/factory/expressions/createBitwiseAnd.mjs +26 -0
- package/lib/factory/expressions/createBitwiseAnd.mjs.map +1 -0
- package/lib/factory/expressions/createBitwiseNot.mjs +25 -0
- package/lib/factory/expressions/createBitwiseNot.mjs.map +1 -0
- package/lib/factory/expressions/createBitwiseOr.mjs +25 -0
- package/lib/factory/expressions/createBitwiseOr.mjs.map +1 -0
- package/lib/factory/expressions/createBitwiseXor.mjs +25 -0
- package/lib/factory/expressions/createBitwiseXor.mjs.map +1 -0
- package/lib/factory/expressions/createCallChain.mjs +35 -0
- package/lib/factory/expressions/createCallChain.mjs.map +1 -0
- package/lib/factory/expressions/createCallExpression.mjs +29 -0
- package/lib/factory/expressions/createCallExpression.mjs.map +1 -0
- package/lib/factory/expressions/createClassExpression.mjs +34 -0
- package/lib/factory/expressions/createClassExpression.mjs.map +1 -0
- package/lib/factory/expressions/createComma.mjs +28 -0
- package/lib/factory/expressions/createComma.mjs.map +1 -0
- package/lib/factory/expressions/createCommaListExpression.mjs +23 -0
- package/lib/factory/expressions/createCommaListExpression.mjs.map +1 -0
- package/lib/factory/expressions/createComputedPropertyName.mjs +23 -0
- package/lib/factory/expressions/createComputedPropertyName.mjs.map +1 -0
- package/lib/factory/expressions/createConditionalExpression.mjs +28 -0
- package/lib/factory/expressions/createConditionalExpression.mjs.map +1 -0
- package/lib/factory/expressions/createDeleteExpression.mjs +22 -0
- package/lib/factory/expressions/createDeleteExpression.mjs.map +1 -0
- package/lib/factory/expressions/createDivide.mjs +25 -0
- package/lib/factory/expressions/createDivide.mjs.map +1 -0
- package/lib/factory/expressions/createElementAccessChain.mjs +32 -0
- package/lib/factory/expressions/createElementAccessChain.mjs.map +1 -0
- package/lib/factory/expressions/createElementAccessExpression.mjs +28 -0
- package/lib/factory/expressions/createElementAccessExpression.mjs.map +1 -0
- package/lib/factory/expressions/createEquality.mjs +27 -0
- package/lib/factory/expressions/createEquality.mjs.map +1 -0
- package/lib/factory/expressions/createExponent.mjs +26 -0
- package/lib/factory/expressions/createExponent.mjs.map +1 -0
- package/lib/factory/expressions/createFunctionExpression.mjs +38 -0
- package/lib/factory/expressions/createFunctionExpression.mjs.map +1 -0
- package/lib/factory/expressions/createGreaterThan.mjs +27 -0
- package/lib/factory/expressions/createGreaterThan.mjs.map +1 -0
- package/lib/factory/expressions/createGreaterThanEquals.mjs +27 -0
- package/lib/factory/expressions/createGreaterThanEquals.mjs.map +1 -0
- package/lib/factory/expressions/createImmediatelyInvokedArrowFunction.mjs +29 -0
- package/lib/factory/expressions/createImmediatelyInvokedArrowFunction.mjs.map +1 -0
- package/lib/factory/expressions/createImmediatelyInvokedFunctionExpression.mjs +29 -0
- package/lib/factory/expressions/createImmediatelyInvokedFunctionExpression.mjs.map +1 -0
- package/lib/factory/expressions/createInequality.mjs +27 -0
- package/lib/factory/expressions/createInequality.mjs.map +1 -0
- package/lib/factory/expressions/createLeftShift.mjs +26 -0
- package/lib/factory/expressions/createLeftShift.mjs.map +1 -0
- package/lib/factory/expressions/createLessThan.mjs +26 -0
- package/lib/factory/expressions/createLessThan.mjs.map +1 -0
- package/lib/factory/expressions/createLessThanEquals.mjs +27 -0
- package/lib/factory/expressions/createLessThanEquals.mjs.map +1 -0
- package/lib/factory/expressions/createLogicalAnd.mjs +27 -0
- package/lib/factory/expressions/createLogicalAnd.mjs.map +1 -0
- package/lib/factory/expressions/createLogicalNot.mjs +25 -0
- package/lib/factory/expressions/createLogicalNot.mjs.map +1 -0
- package/lib/factory/expressions/createLogicalOr.mjs +26 -0
- package/lib/factory/expressions/createLogicalOr.mjs.map +1 -0
- package/lib/factory/expressions/createMetaProperty.mjs +29 -0
- package/lib/factory/expressions/createMetaProperty.mjs.map +1 -0
- package/lib/factory/expressions/createModulo.mjs +24 -0
- package/lib/factory/expressions/createModulo.mjs.map +1 -0
- package/lib/factory/expressions/createMultiply.mjs +24 -0
- package/lib/factory/expressions/createMultiply.mjs.map +1 -0
- package/lib/factory/expressions/createNewExpression.mjs +30 -0
- package/lib/factory/expressions/createNewExpression.mjs.map +1 -0
- package/lib/factory/expressions/createNonNullChain.mjs +24 -0
- package/lib/factory/expressions/createNonNullChain.mjs.map +1 -0
- package/lib/factory/expressions/createNonNullExpression.mjs +24 -0
- package/lib/factory/expressions/createNonNullExpression.mjs.map +1 -0
- package/lib/factory/expressions/createObjectBindingPattern.mjs +24 -0
- package/lib/factory/expressions/createObjectBindingPattern.mjs.map +1 -0
- package/lib/factory/expressions/createObjectLiteralExpression.mjs +27 -0
- package/lib/factory/expressions/createObjectLiteralExpression.mjs.map +1 -0
- package/lib/factory/expressions/createOmittedExpression.mjs +23 -0
- package/lib/factory/expressions/createOmittedExpression.mjs.map +1 -0
- package/lib/factory/expressions/createParenthesizedExpression.mjs +24 -0
- package/lib/factory/expressions/createParenthesizedExpression.mjs.map +1 -0
- package/lib/factory/expressions/createPartiallyEmittedExpression.mjs +26 -0
- package/lib/factory/expressions/createPartiallyEmittedExpression.mjs.map +1 -0
- package/lib/factory/expressions/createPostfixDecrement.mjs +23 -0
- package/lib/factory/expressions/createPostfixDecrement.mjs.map +1 -0
- package/lib/factory/expressions/createPostfixIncrement.mjs +23 -0
- package/lib/factory/expressions/createPostfixIncrement.mjs.map +1 -0
- package/lib/factory/expressions/createPostfixUnaryExpression.mjs +25 -0
- package/lib/factory/expressions/createPostfixUnaryExpression.mjs.map +1 -0
- package/lib/factory/expressions/createPrefixDecrement.mjs +23 -0
- package/lib/factory/expressions/createPrefixDecrement.mjs.map +1 -0
- package/lib/factory/expressions/createPrefixIncrement.mjs +23 -0
- package/lib/factory/expressions/createPrefixIncrement.mjs.map +1 -0
- package/lib/factory/expressions/createPrefixMinus.mjs +23 -0
- package/lib/factory/expressions/createPrefixMinus.mjs.map +1 -0
- package/lib/factory/expressions/createPrefixPlus.mjs +23 -0
- package/lib/factory/expressions/createPrefixPlus.mjs.map +1 -0
- package/lib/factory/expressions/createPrefixUnaryExpression.mjs +25 -0
- package/lib/factory/expressions/createPrefixUnaryExpression.mjs.map +1 -0
- package/lib/factory/expressions/createPropertyAccessChain.mjs +32 -0
- package/lib/factory/expressions/createPropertyAccessChain.mjs.map +1 -0
- package/lib/factory/expressions/createPropertyAccessExpression.mjs +28 -0
- package/lib/factory/expressions/createPropertyAccessExpression.mjs.map +1 -0
- package/lib/factory/expressions/createPropertyAssignment.mjs +26 -0
- package/lib/factory/expressions/createPropertyAssignment.mjs.map +1 -0
- package/lib/factory/expressions/createRegularExpressionLiteral.mjs +23 -0
- package/lib/factory/expressions/createRegularExpressionLiteral.mjs.map +1 -0
- package/lib/factory/expressions/createRightShift.mjs +24 -0
- package/lib/factory/expressions/createRightShift.mjs.map +1 -0
- package/lib/factory/expressions/createSatisfiesExpression.mjs +25 -0
- package/lib/factory/expressions/createSatisfiesExpression.mjs.map +1 -0
- package/lib/factory/expressions/createShorthandPropertyAssignment.mjs +31 -0
- package/lib/factory/expressions/createShorthandPropertyAssignment.mjs.map +1 -0
- package/lib/factory/expressions/createSpreadAssignment.mjs +23 -0
- package/lib/factory/expressions/createSpreadAssignment.mjs.map +1 -0
- package/lib/factory/expressions/createSpreadElement.mjs +23 -0
- package/lib/factory/expressions/createSpreadElement.mjs.map +1 -0
- package/lib/factory/expressions/createStrictEquality.mjs +24 -0
- package/lib/factory/expressions/createStrictEquality.mjs.map +1 -0
- package/lib/factory/expressions/createStrictInequality.mjs +24 -0
- package/lib/factory/expressions/createStrictInequality.mjs.map +1 -0
- package/lib/factory/expressions/createSubtract.mjs +24 -0
- package/lib/factory/expressions/createSubtract.mjs.map +1 -0
- package/lib/factory/expressions/createTaggedTemplateExpression.mjs +27 -0
- package/lib/factory/expressions/createTaggedTemplateExpression.mjs.map +1 -0
- package/lib/factory/expressions/createTemplateExpression.mjs +27 -0
- package/lib/factory/expressions/createTemplateExpression.mjs.map +1 -0
- package/lib/factory/expressions/createTemplateSpan.mjs +28 -0
- package/lib/factory/expressions/createTemplateSpan.mjs.map +1 -0
- package/lib/factory/expressions/createTypeAssertion.mjs +25 -0
- package/lib/factory/expressions/createTypeAssertion.mjs.map +1 -0
- package/lib/factory/expressions/createTypeOfExpression.mjs +22 -0
- package/lib/factory/expressions/createTypeOfExpression.mjs.map +1 -0
- package/lib/factory/expressions/createUnsignedRightShift.mjs +24 -0
- package/lib/factory/expressions/createUnsignedRightShift.mjs.map +1 -0
- package/lib/factory/expressions/createVoidExpression.mjs +23 -0
- package/lib/factory/expressions/createVoidExpression.mjs.map +1 -0
- package/lib/factory/expressions/createVoidZero.mjs +22 -0
- package/lib/factory/expressions/createVoidZero.mjs.map +1 -0
- package/lib/factory/expressions/createYieldExpression.mjs +26 -0
- package/lib/factory/expressions/createYieldExpression.mjs.map +1 -0
- package/lib/factory/file/createBundle.mjs +29 -0
- package/lib/factory/file/createBundle.mjs.map +1 -0
- package/lib/factory/file/createNodeArray.mjs +24 -0
- package/lib/factory/file/createNodeArray.mjs.map +1 -0
- package/lib/factory/file/createSourceFile.mjs +24 -0
- package/lib/factory/file/createSourceFile.mjs.map +1 -0
- package/lib/factory/file/updateSourceFile.mjs +14 -0
- package/lib/factory/file/updateSourceFile.mjs.map +1 -0
- package/lib/factory/imports/createExportAssignment.mjs +27 -0
- package/lib/factory/imports/createExportAssignment.mjs.map +1 -0
- package/lib/factory/imports/createExportDeclaration.mjs +38 -0
- package/lib/factory/imports/createExportDeclaration.mjs.map +1 -0
- package/lib/factory/imports/createExportDefault.mjs +23 -0
- package/lib/factory/imports/createExportDefault.mjs.map +1 -0
- package/lib/factory/imports/createExportSpecifier.mjs +32 -0
- package/lib/factory/imports/createExportSpecifier.mjs.map +1 -0
- package/lib/factory/imports/createExternalModuleExport.mjs +26 -0
- package/lib/factory/imports/createExternalModuleExport.mjs.map +1 -0
- package/lib/factory/imports/createImportAttribute.mjs +25 -0
- package/lib/factory/imports/createImportAttribute.mjs.map +1 -0
- package/lib/factory/imports/createImportAttributes.mjs +30 -0
- package/lib/factory/imports/createImportAttributes.mjs.map +1 -0
- package/lib/factory/imports/createImportClause.mjs +27 -0
- package/lib/factory/imports/createImportClause.mjs.map +1 -0
- package/lib/factory/imports/createImportDeclaration.mjs +34 -0
- package/lib/factory/imports/createImportDeclaration.mjs.map +1 -0
- package/lib/factory/imports/createImportSpecifier.mjs +28 -0
- package/lib/factory/imports/createImportSpecifier.mjs.map +1 -0
- package/lib/factory/imports/createNamedExports.mjs +25 -0
- package/lib/factory/imports/createNamedExports.mjs.map +1 -0
- package/lib/factory/imports/createNamedImports.mjs +25 -0
- package/lib/factory/imports/createNamedImports.mjs.map +1 -0
- package/lib/factory/imports/createNamespaceExport.mjs +25 -0
- package/lib/factory/imports/createNamespaceExport.mjs.map +1 -0
- package/lib/factory/imports/createNamespaceImport.mjs +24 -0
- package/lib/factory/imports/createNamespaceImport.mjs.map +1 -0
- package/lib/factory/index.mjs +268 -0
- package/lib/factory/index.mjs.map +1 -0
- package/lib/factory/internal/asEntityName.mjs +7 -0
- package/lib/factory/internal/asEntityName.mjs.map +1 -0
- package/lib/factory/internal/asName.mjs +11 -0
- package/lib/factory/internal/asName.mjs.map +1 -0
- package/lib/factory/internal/asPropertyName.mjs +7 -0
- package/lib/factory/internal/asPropertyName.mjs.map +1 -0
- package/lib/factory/internal/make.mjs +14 -0
- package/lib/factory/internal/make.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocAllType.mjs +21 -0
- package/lib/factory/jsdoc/createJSDocAllType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocAugmentsTag.mjs +30 -0
- package/lib/factory/jsdoc/createJSDocAugmentsTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocAuthorTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocAuthorTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocCallbackTag.mjs +37 -0
- package/lib/factory/jsdoc/createJSDocCallbackTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocClassTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocClassTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocComment.mjs +29 -0
- package/lib/factory/jsdoc/createJSDocComment.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocDeprecatedTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocDeprecatedTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocEnumTag.mjs +31 -0
- package/lib/factory/jsdoc/createJSDocEnumTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocFunctionType.mjs +26 -0
- package/lib/factory/jsdoc/createJSDocFunctionType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocImplementsTag.mjs +30 -0
- package/lib/factory/jsdoc/createJSDocImplementsTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocImportTag.mjs +34 -0
- package/lib/factory/jsdoc/createJSDocImportTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocLink.mjs +29 -0
- package/lib/factory/jsdoc/createJSDocLink.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocLinkCode.mjs +29 -0
- package/lib/factory/jsdoc/createJSDocLinkCode.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocLinkPlain.mjs +29 -0
- package/lib/factory/jsdoc/createJSDocLinkPlain.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocMemberName.mjs +26 -0
- package/lib/factory/jsdoc/createJSDocMemberName.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocNameReference.mjs +25 -0
- package/lib/factory/jsdoc/createJSDocNameReference.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocNamepathType.mjs +25 -0
- package/lib/factory/jsdoc/createJSDocNamepathType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocNonNullableType.mjs +33 -0
- package/lib/factory/jsdoc/createJSDocNonNullableType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocNullableType.mjs +33 -0
- package/lib/factory/jsdoc/createJSDocNullableType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocOptionalType.mjs +23 -0
- package/lib/factory/jsdoc/createJSDocOptionalType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocOverloadTag.mjs +35 -0
- package/lib/factory/jsdoc/createJSDocOverloadTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocOverrideTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocOverrideTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocParameterTag.mjs +46 -0
- package/lib/factory/jsdoc/createJSDocParameterTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocPrivateTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocPrivateTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocPropertyTag.mjs +40 -0
- package/lib/factory/jsdoc/createJSDocPropertyTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocProtectedTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocProtectedTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocPublicTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocPublicTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocReadonlyTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocReadonlyTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocReturnTag.mjs +32 -0
- package/lib/factory/jsdoc/createJSDocReturnTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocSatisfiesTag.mjs +31 -0
- package/lib/factory/jsdoc/createJSDocSatisfiesTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocSeeTag.mjs +31 -0
- package/lib/factory/jsdoc/createJSDocSeeTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocSignature.mjs +32 -0
- package/lib/factory/jsdoc/createJSDocSignature.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocTemplateTag.mjs +34 -0
- package/lib/factory/jsdoc/createJSDocTemplateTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocText.mjs +25 -0
- package/lib/factory/jsdoc/createJSDocText.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocThisTag.mjs +30 -0
- package/lib/factory/jsdoc/createJSDocThisTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocThrowsTag.mjs +30 -0
- package/lib/factory/jsdoc/createJSDocThrowsTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocTypeExpression.mjs +24 -0
- package/lib/factory/jsdoc/createJSDocTypeExpression.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocTypeLiteral.mjs +29 -0
- package/lib/factory/jsdoc/createJSDocTypeLiteral.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocTypeTag.mjs +31 -0
- package/lib/factory/jsdoc/createJSDocTypeTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocTypedefTag.mjs +34 -0
- package/lib/factory/jsdoc/createJSDocTypedefTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocUnknownTag.mjs +27 -0
- package/lib/factory/jsdoc/createJSDocUnknownTag.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocUnknownType.mjs +21 -0
- package/lib/factory/jsdoc/createJSDocUnknownType.mjs.map +1 -0
- package/lib/factory/jsdoc/createJSDocVariadicType.mjs +24 -0
- package/lib/factory/jsdoc/createJSDocVariadicType.mjs.map +1 -0
- package/lib/factory/jsx/createJsxAttribute.mjs +29 -0
- package/lib/factory/jsx/createJsxAttribute.mjs.map +1 -0
- package/lib/factory/jsx/createJsxAttributes.mjs +27 -0
- package/lib/factory/jsx/createJsxAttributes.mjs.map +1 -0
- package/lib/factory/jsx/createJsxClosingElement.mjs +24 -0
- package/lib/factory/jsx/createJsxClosingElement.mjs.map +1 -0
- package/lib/factory/jsx/createJsxElement.mjs +32 -0
- package/lib/factory/jsx/createJsxElement.mjs.map +1 -0
- package/lib/factory/jsx/createJsxExpression.mjs +29 -0
- package/lib/factory/jsx/createJsxExpression.mjs.map +1 -0
- package/lib/factory/jsx/createJsxFragment.mjs +32 -0
- package/lib/factory/jsx/createJsxFragment.mjs.map +1 -0
- package/lib/factory/jsx/createJsxJsxClosingFragment.mjs +23 -0
- package/lib/factory/jsx/createJsxJsxClosingFragment.mjs.map +1 -0
- package/lib/factory/jsx/createJsxNamespacedName.mjs +28 -0
- package/lib/factory/jsx/createJsxNamespacedName.mjs.map +1 -0
- package/lib/factory/jsx/createJsxOpeningElement.mjs +32 -0
- package/lib/factory/jsx/createJsxOpeningElement.mjs.map +1 -0
- package/lib/factory/jsx/createJsxOpeningFragment.mjs +22 -0
- package/lib/factory/jsx/createJsxOpeningFragment.mjs.map +1 -0
- package/lib/factory/jsx/createJsxSelfClosingElement.mjs +31 -0
- package/lib/factory/jsx/createJsxSelfClosingElement.mjs.map +1 -0
- package/lib/factory/jsx/createJsxSpreadAttribute.mjs +24 -0
- package/lib/factory/jsx/createJsxSpreadAttribute.mjs.map +1 -0
- package/lib/factory/jsx/createJsxText.mjs +31 -0
- package/lib/factory/jsx/createJsxText.mjs.map +1 -0
- package/lib/factory/literals/createBigIntLiteral.mjs +23 -0
- package/lib/factory/literals/createBigIntLiteral.mjs.map +1 -0
- package/lib/factory/literals/createNoSubstitutionTemplateLiteral.mjs +24 -0
- package/lib/factory/literals/createNoSubstitutionTemplateLiteral.mjs.map +1 -0
- package/lib/factory/literals/createNumericLiteral.mjs +23 -0
- package/lib/factory/literals/createNumericLiteral.mjs.map +1 -0
- package/lib/factory/literals/createStringLiteral.mjs +29 -0
- package/lib/factory/literals/createStringLiteral.mjs.map +1 -0
- package/lib/factory/literals/createStringLiteralFromNode.mjs +25 -0
- package/lib/factory/literals/createStringLiteralFromNode.mjs.map +1 -0
- package/lib/factory/literals/createTemplateHead.mjs +27 -0
- package/lib/factory/literals/createTemplateHead.mjs.map +1 -0
- package/lib/factory/literals/createTemplateMiddle.mjs +25 -0
- package/lib/factory/literals/createTemplateMiddle.mjs.map +1 -0
- package/lib/factory/literals/createTemplateTail.mjs +25 -0
- package/lib/factory/literals/createTemplateTail.mjs.map +1 -0
- package/lib/factory/names/createDecorator.mjs +23 -0
- package/lib/factory/names/createDecorator.mjs.map +1 -0
- package/lib/factory/names/createFalse.mjs +23 -0
- package/lib/factory/names/createFalse.mjs.map +1 -0
- package/lib/factory/names/createIdentifier.mjs +23 -0
- package/lib/factory/names/createIdentifier.mjs.map +1 -0
- package/lib/factory/names/createLoopVariable.mjs +28 -0
- package/lib/factory/names/createLoopVariable.mjs.map +1 -0
- package/lib/factory/names/createModifier.mjs +25 -0
- package/lib/factory/names/createModifier.mjs.map +1 -0
- package/lib/factory/names/createModifiersFromModifierFlags.mjs +82 -0
- package/lib/factory/names/createModifiersFromModifierFlags.mjs.map +1 -0
- package/lib/factory/names/createNull.mjs +23 -0
- package/lib/factory/names/createNull.mjs.map +1 -0
- package/lib/factory/names/createPrivateIdentifier.mjs +23 -0
- package/lib/factory/names/createPrivateIdentifier.mjs.map +1 -0
- package/lib/factory/names/createQualifiedName.mjs +28 -0
- package/lib/factory/names/createQualifiedName.mjs.map +1 -0
- package/lib/factory/names/createSuper.mjs +23 -0
- package/lib/factory/names/createSuper.mjs.map +1 -0
- package/lib/factory/names/createTempVariable.mjs +33 -0
- package/lib/factory/names/createTempVariable.mjs.map +1 -0
- package/lib/factory/names/createThis.mjs +23 -0
- package/lib/factory/names/createThis.mjs.map +1 -0
- package/lib/factory/names/createToken.mjs +24 -0
- package/lib/factory/names/createToken.mjs.map +1 -0
- package/lib/factory/names/createTrue.mjs +23 -0
- package/lib/factory/names/createTrue.mjs.map +1 -0
- package/lib/factory/names/createUniqueName.mjs +32 -0
- package/lib/factory/names/createUniqueName.mjs.map +1 -0
- package/lib/factory/names/createUniquePrivateName.mjs +29 -0
- package/lib/factory/names/createUniquePrivateName.mjs.map +1 -0
- package/lib/factory/statements/createBlock.mjs +29 -0
- package/lib/factory/statements/createBlock.mjs.map +1 -0
- package/lib/factory/statements/createBreakStatement.mjs +31 -0
- package/lib/factory/statements/createBreakStatement.mjs.map +1 -0
- package/lib/factory/statements/createCaseBlock.mjs +30 -0
- package/lib/factory/statements/createCaseBlock.mjs.map +1 -0
- package/lib/factory/statements/createCaseClause.mjs +28 -0
- package/lib/factory/statements/createCaseClause.mjs.map +1 -0
- package/lib/factory/statements/createCatchClause.mjs +35 -0
- package/lib/factory/statements/createCatchClause.mjs.map +1 -0
- package/lib/factory/statements/createContinueStatement.mjs +31 -0
- package/lib/factory/statements/createContinueStatement.mjs.map +1 -0
- package/lib/factory/statements/createDebuggerStatement.mjs +21 -0
- package/lib/factory/statements/createDebuggerStatement.mjs.map +1 -0
- package/lib/factory/statements/createDefaultClause.mjs +24 -0
- package/lib/factory/statements/createDefaultClause.mjs.map +1 -0
- package/lib/factory/statements/createDoStatement.mjs +27 -0
- package/lib/factory/statements/createDoStatement.mjs.map +1 -0
- package/lib/factory/statements/createEmptyStatement.mjs +21 -0
- package/lib/factory/statements/createEmptyStatement.mjs.map +1 -0
- package/lib/factory/statements/createExpressionStatement.mjs +23 -0
- package/lib/factory/statements/createExpressionStatement.mjs.map +1 -0
- package/lib/factory/statements/createForInStatement.mjs +29 -0
- package/lib/factory/statements/createForInStatement.mjs.map +1 -0
- package/lib/factory/statements/createForOfStatement.mjs +39 -0
- package/lib/factory/statements/createForOfStatement.mjs.map +1 -0
- package/lib/factory/statements/createForStatement.mjs +32 -0
- package/lib/factory/statements/createForStatement.mjs.map +1 -0
- package/lib/factory/statements/createIfStatement.mjs +31 -0
- package/lib/factory/statements/createIfStatement.mjs.map +1 -0
- package/lib/factory/statements/createLabeledStatement.mjs +28 -0
- package/lib/factory/statements/createLabeledStatement.mjs.map +1 -0
- package/lib/factory/statements/createNotEmittedStatement.mjs +20 -0
- package/lib/factory/statements/createNotEmittedStatement.mjs.map +1 -0
- package/lib/factory/statements/createReturnStatement.mjs +28 -0
- package/lib/factory/statements/createReturnStatement.mjs.map +1 -0
- package/lib/factory/statements/createSwitchStatement.mjs +31 -0
- package/lib/factory/statements/createSwitchStatement.mjs.map +1 -0
- package/lib/factory/statements/createThrowStatement.mjs +22 -0
- package/lib/factory/statements/createThrowStatement.mjs.map +1 -0
- package/lib/factory/statements/createTryStatement.mjs +34 -0
- package/lib/factory/statements/createTryStatement.mjs.map +1 -0
- package/lib/factory/statements/createVariableDeclaration.mjs +38 -0
- package/lib/factory/statements/createVariableDeclaration.mjs.map +1 -0
- package/lib/factory/statements/createVariableDeclarationList.mjs +28 -0
- package/lib/factory/statements/createVariableDeclarationList.mjs.map +1 -0
- package/lib/factory/statements/createVariableStatement.mjs +33 -0
- package/lib/factory/statements/createVariableStatement.mjs.map +1 -0
- package/lib/factory/statements/createWhileStatement.mjs +27 -0
- package/lib/factory/statements/createWhileStatement.mjs.map +1 -0
- package/lib/factory/statements/createWithStatement.mjs +27 -0
- package/lib/factory/statements/createWithStatement.mjs.map +1 -0
- package/lib/factory/types/createArrayTypeNode.mjs +25 -0
- package/lib/factory/types/createArrayTypeNode.mjs.map +1 -0
- package/lib/factory/types/createCallSignature.mjs +26 -0
- package/lib/factory/types/createCallSignature.mjs.map +1 -0
- package/lib/factory/types/createConditionalTypeNode.mjs +28 -0
- package/lib/factory/types/createConditionalTypeNode.mjs.map +1 -0
- package/lib/factory/types/createConstructSignature.mjs +25 -0
- package/lib/factory/types/createConstructSignature.mjs.map +1 -0
- package/lib/factory/types/createConstructorTypeNode.mjs +27 -0
- package/lib/factory/types/createConstructorTypeNode.mjs.map +1 -0
- package/lib/factory/types/createExpressionWithTypeArguments.mjs +25 -0
- package/lib/factory/types/createExpressionWithTypeArguments.mjs.map +1 -0
- package/lib/factory/types/createFunctionTypeNode.mjs +27 -0
- package/lib/factory/types/createFunctionTypeNode.mjs.map +1 -0
- package/lib/factory/types/createImportTypeNode.mjs +27 -0
- package/lib/factory/types/createImportTypeNode.mjs.map +1 -0
- package/lib/factory/types/createIndexSignature.mjs +25 -0
- package/lib/factory/types/createIndexSignature.mjs.map +1 -0
- package/lib/factory/types/createIndexedAccessTypeNode.mjs +25 -0
- package/lib/factory/types/createIndexedAccessTypeNode.mjs.map +1 -0
- package/lib/factory/types/createInferTypeNode.mjs +24 -0
- package/lib/factory/types/createInferTypeNode.mjs.map +1 -0
- package/lib/factory/types/createIntersectionTypeNode.mjs +24 -0
- package/lib/factory/types/createIntersectionTypeNode.mjs.map +1 -0
- package/lib/factory/types/createKeywordTypeNode.mjs +25 -0
- package/lib/factory/types/createKeywordTypeNode.mjs.map +1 -0
- package/lib/factory/types/createLiteralTypeNode.mjs +26 -0
- package/lib/factory/types/createLiteralTypeNode.mjs.map +1 -0
- package/lib/factory/types/createMappedTypeNode.mjs +44 -0
- package/lib/factory/types/createMappedTypeNode.mjs.map +1 -0
- package/lib/factory/types/createMethodSignature.mjs +39 -0
- package/lib/factory/types/createMethodSignature.mjs.map +1 -0
- package/lib/factory/types/createNamedTupleMember.mjs +33 -0
- package/lib/factory/types/createNamedTupleMember.mjs.map +1 -0
- package/lib/factory/types/createNotEmittedTypeElement.mjs +17 -0
- package/lib/factory/types/createNotEmittedTypeElement.mjs.map +1 -0
- package/lib/factory/types/createOptionalTypeNode.mjs +23 -0
- package/lib/factory/types/createOptionalTypeNode.mjs.map +1 -0
- package/lib/factory/types/createParenthesizedType.mjs +23 -0
- package/lib/factory/types/createParenthesizedType.mjs.map +1 -0
- package/lib/factory/types/createPropertySignature.mjs +34 -0
- package/lib/factory/types/createPropertySignature.mjs.map +1 -0
- package/lib/factory/types/createRestTypeNode.mjs +22 -0
- package/lib/factory/types/createRestTypeNode.mjs.map +1 -0
- package/lib/factory/types/createTemplateLiteralType.mjs +27 -0
- package/lib/factory/types/createTemplateLiteralType.mjs.map +1 -0
- package/lib/factory/types/createTemplateLiteralTypeSpan.mjs +27 -0
- package/lib/factory/types/createTemplateLiteralTypeSpan.mjs.map +1 -0
- package/lib/factory/types/createThisTypeNode.mjs +22 -0
- package/lib/factory/types/createThisTypeNode.mjs.map +1 -0
- package/lib/factory/types/createTupleTypeNode.mjs +24 -0
- package/lib/factory/types/createTupleTypeNode.mjs.map +1 -0
- package/lib/factory/types/createTypeLiteralNode.mjs +25 -0
- package/lib/factory/types/createTypeLiteralNode.mjs.map +1 -0
- package/lib/factory/types/createTypeOperatorNode.mjs +26 -0
- package/lib/factory/types/createTypeOperatorNode.mjs.map +1 -0
- package/lib/factory/types/createTypeParameterDeclaration.mjs +34 -0
- package/lib/factory/types/createTypeParameterDeclaration.mjs.map +1 -0
- package/lib/factory/types/createTypePredicateNode.mjs +35 -0
- package/lib/factory/types/createTypePredicateNode.mjs.map +1 -0
- package/lib/factory/types/createTypeQueryNode.mjs +23 -0
- package/lib/factory/types/createTypeQueryNode.mjs.map +1 -0
- package/lib/factory/types/createTypeReferenceNode.mjs +30 -0
- package/lib/factory/types/createTypeReferenceNode.mjs.map +1 -0
- package/lib/factory/types/createUnionTypeNode.mjs +24 -0
- package/lib/factory/types/createUnionTypeNode.mjs.map +1 -0
- package/lib/index.d.ts +0 -1
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +10 -0
- package/lib/index.mjs.map +1 -0
- package/lib/internal/doc.mjs +171 -0
- package/lib/internal/doc.mjs.map +1 -0
- package/lib/syntax/NodeFlags.mjs +23 -0
- package/lib/syntax/NodeFlags.mjs.map +1 -0
- package/lib/syntax/SyntaxKind.mjs +110 -0
- package/lib/syntax/SyntaxKind.mjs.map +1 -0
- package/package.json +6 -9
- package/src/TsPrinter.ts +702 -88
- package/src/index.ts +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TsPrinter.mjs","sources":["../src/TsPrinter.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/lib/comments.mjs
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
const leadingStore = new WeakMap();
|
|
2
|
+
const trailingStore = new WeakMap();
|
|
3
|
+
const append = (store, node, comment) => {
|
|
4
|
+
const list = store.get(node);
|
|
5
|
+
if (list !== undefined)
|
|
6
|
+
list.push(comment);
|
|
7
|
+
else
|
|
8
|
+
store.set(node, [comment]);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Attach a synthesized leading comment to a node.
|
|
12
|
+
*
|
|
13
|
+
* Drop-in replacement for the legacy `ts.addSyntheticLeadingComment`. The
|
|
14
|
+
* comment is rendered by {@link TsPrinter} immediately before the node. The node
|
|
15
|
+
* is returned for call chaining.
|
|
16
|
+
*
|
|
17
|
+
* @param node The target node.
|
|
18
|
+
* @param kind Single-line (`//`) or multi-line (`/* *\/`) comment.
|
|
19
|
+
* @param text The raw comment body, excluding the delimiters.
|
|
20
|
+
* @param hasTrailingNewLine Whether to break the line after the comment.
|
|
21
|
+
* @returns The same `node`.
|
|
22
|
+
*/
|
|
23
|
+
const addSyntheticLeadingComment = (node, kind, text, hasTrailingNewLine) => {
|
|
24
|
+
append(leadingStore, node, { kind, text, hasTrailingNewLine });
|
|
25
|
+
return node;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Attach a synthesized trailing comment to a node.
|
|
29
|
+
*
|
|
30
|
+
* Drop-in replacement for the legacy `ts.addSyntheticTrailingComment`. The
|
|
31
|
+
* comment is rendered by {@link TsPrinter} immediately after the node. The node
|
|
32
|
+
* is returned for call chaining.
|
|
33
|
+
*
|
|
34
|
+
* @param node The target node.
|
|
35
|
+
* @param kind Single-line (`//`) or multi-line (`/* *\/`) comment.
|
|
36
|
+
* @param text The raw comment body, excluding the delimiters.
|
|
37
|
+
* @param hasTrailingNewLine Whether to break the line after the comment.
|
|
38
|
+
* @returns The same `node`.
|
|
39
|
+
*/
|
|
40
|
+
const addSyntheticTrailingComment = (node, kind, text, hasTrailingNewLine) => {
|
|
41
|
+
append(trailingStore, node, { kind, text, hasTrailingNewLine });
|
|
42
|
+
return node;
|
|
43
|
+
};
|
|
44
|
+
/** Read the synthesized leading comments attached to `node`, if any. */
|
|
45
|
+
const getSyntheticLeadingComments = (node) => leadingStore.get(node);
|
|
46
|
+
/** Read the synthesized trailing comments attached to `node`, if any. */
|
|
47
|
+
const getSyntheticTrailingComments = (node) => trailingStore.get(node);
|
|
48
|
+
/**
|
|
49
|
+
* Replace the synthesized leading comments of `node`.
|
|
50
|
+
*
|
|
51
|
+
* Passing `undefined` (or an empty list) clears them. The node is returned for
|
|
52
|
+
* call chaining.
|
|
53
|
+
*/
|
|
54
|
+
const setSyntheticLeadingComments = (node, comments) => {
|
|
55
|
+
if (comments !== undefined && comments.length !== 0)
|
|
56
|
+
leadingStore.set(node, comments.slice());
|
|
57
|
+
else
|
|
58
|
+
leadingStore.delete(node);
|
|
59
|
+
return node;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Replace the synthesized trailing comments of `node`.
|
|
63
|
+
*
|
|
64
|
+
* Passing `undefined` (or an empty list) clears them. The node is returned for
|
|
65
|
+
* call chaining.
|
|
66
|
+
*/
|
|
67
|
+
const setSyntheticTrailingComments = (node, comments) => {
|
|
68
|
+
if (comments !== undefined && comments.length !== 0)
|
|
69
|
+
trailingStore.set(node, comments.slice());
|
|
70
|
+
else
|
|
71
|
+
trailingStore.delete(node);
|
|
72
|
+
return node;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export { addSyntheticLeadingComment, addSyntheticTrailingComment, getSyntheticLeadingComments, getSyntheticTrailingComments, setSyntheticLeadingComments, setSyntheticTrailingComments };
|
|
76
|
+
//# sourceMappingURL=comments.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comments.mjs","sources":["../src/comments.ts"],"sourcesContent":[null],"names":[],"mappings":"AA2DA,MAAM,YAAY,GAAG,IAAI,OAAO,EAAgC;AAChE,MAAM,aAAa,GAAG,IAAI,OAAO,EAAgC;AAEjE,MAAM,MAAM,GAAG,CACb,KAA4C,EAC5C,IAAY,EACZ,OAA2B,KACnB;IACR,MAAM,IAAI,GAAqC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;IAC9D,IAAI,IAAI,KAAK,SAAS;AAAE,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;;QACrC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;AAYG;AACI,MAAM,0BAA0B,GAAG,CACxC,IAAO,EACP,IAAgC,EAChC,IAAY,EACZ,kBAA4B,KACvB;AACL,IAAA,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAC9D,IAAA,OAAO,IAAI;AACb;AAEA;;;;;;;;;;;;AAYG;AACI,MAAM,2BAA2B,GAAG,CACzC,IAAO,EACP,IAAgC,EAChC,IAAY,EACZ,kBAA4B,KACvB;AACL,IAAA,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;AAC/D,IAAA,OAAO,IAAI;AACb;AAEA;AACO,MAAM,2BAA2B,GAAG,CACzC,IAAU,KAC2B,YAAY,CAAC,GAAG,CAAC,IAAI;AAE5D;AACO,MAAM,4BAA4B,GAAG,CAC1C,IAAU,KAC2B,aAAa,CAAC,GAAG,CAAC,IAAI;AAE7D;;;;;AAKG;MACU,2BAA2B,GAAG,CACzC,IAAO,EACP,QAAmD,KAC9C;IACL,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACjD,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;;AACrC,QAAA,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC;AAC9B,IAAA,OAAO,IAAI;AACb;AAEA;;;;;AAKG;MACU,4BAA4B,GAAG,CAC1C,IAAO,EACP,QAAmD,KAC9C;IACL,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACjD,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;;AACtC,QAAA,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC;AAC/B,IAAA,OAAO,IAAI;AACb;;;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link HeritageClause}: an `extends` or `implements` clause.
|
|
5
|
+
*
|
|
6
|
+
* This is the supertype list attached to a class or interface header. The
|
|
7
|
+
* `token` selects the keyword the printer emits, either the `extends` or the
|
|
8
|
+
* `implements` syntax kind. The `types` are the referenced supertypes, printed
|
|
9
|
+
* after the keyword and separated by commas.
|
|
10
|
+
*
|
|
11
|
+
* Given the `implements` token and the types `IAnimal` and `ISerializable`, the
|
|
12
|
+
* printed clause is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* implements IAnimal, ISerializable
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
19
|
+
* @param token The `extends` or `implements` keyword.
|
|
20
|
+
* @param types The constituent types.
|
|
21
|
+
* @returns The created {@link HeritageClause}.
|
|
22
|
+
*/
|
|
23
|
+
const createHeritageClause = (token, types) => make("HeritageClause", { token, types });
|
|
24
|
+
|
|
25
|
+
export { createHeritageClause };
|
|
26
|
+
//# sourceMappingURL=createHeritageClause.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createHeritageClause.mjs","sources":["../../../src/factory/clauses/createHeritageClause.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAIA;;;;;;;;;;;;;;;;;;;AAmBG;MACU,oBAAoB,GAAG,CAClC,KAAiB,EACjB,KAA6C,KAC1B,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;;;;"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link ParameterDeclaration}: a single function or method parameter.
|
|
6
|
+
*
|
|
7
|
+
* The `modifiers` precede the parameter name. On a constructor these are the
|
|
8
|
+
* accessibility keywords such as `public` or `readonly` that turn it into a
|
|
9
|
+
* parameter property; any decorators among them stay inline, in front of the
|
|
10
|
+
* name, rather than moving to their own line. The `dotDotDotToken` marks a rest
|
|
11
|
+
* parameter (`...args`), and the `questionToken` marks it optional (`name?`).
|
|
12
|
+
*
|
|
13
|
+
* The `name` accepts a string or a binding pattern. The optional `type` prints
|
|
14
|
+
* after a colon, and the optional `initializer` supplies a default value after
|
|
15
|
+
* an `=`.
|
|
16
|
+
*
|
|
17
|
+
* Given a `readonly` modifier, the name `value`, and a `number` type, the
|
|
18
|
+
* printed parameter is:
|
|
19
|
+
*
|
|
20
|
+
* ```ts
|
|
21
|
+
* readonly value: number
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
25
|
+
* @param modifiers The leading modifiers and decorators, if any.
|
|
26
|
+
* @param dotDotDotToken The rest marker (`...`), if any.
|
|
27
|
+
* @param name The name.
|
|
28
|
+
* @param questionToken The optional marker (`?`), if any.
|
|
29
|
+
* @param type The type.
|
|
30
|
+
* @param initializer The initializer, if any.
|
|
31
|
+
* @returns The created {@link ParameterDeclaration}.
|
|
32
|
+
*/
|
|
33
|
+
const createParameterDeclaration = (modifiers, dotDotDotToken, name, questionToken, type, initializer) => make("ParameterDeclaration", {
|
|
34
|
+
modifiers,
|
|
35
|
+
dotDotDotToken,
|
|
36
|
+
name: asName(name),
|
|
37
|
+
questionToken,
|
|
38
|
+
type,
|
|
39
|
+
initializer,
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
export { createParameterDeclaration };
|
|
43
|
+
//# sourceMappingURL=createParameterDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createParameterDeclaration.mjs","sources":["../../../src/factory/clauses/createParameterDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BG;MACU,0BAA0B,GAAG,CACxC,SAA8C,EAC9C,cAAiC,EACjC,IAAyB,EACzB,aAAqB,EACrB,IAAe,EACf,WAAwB,KAExB,IAAI,CAAC,sBAAsB,EAAE;IAC3B,SAAS;IACT,cAAc;AACd,IAAA,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;IAClB,aAAa;IACb,IAAI;IACJ,WAAW;AACZ,CAAA;;;;"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link ClassDeclaration}: a `class X { ... }`.
|
|
6
|
+
*
|
|
7
|
+
* The `modifiers` precede the `class` keyword, so an `export` modifier prints
|
|
8
|
+
* `export class`. Any decorators among the modifiers are hoisted onto their own
|
|
9
|
+
* lines above the declaration. The `name` may be omitted for an anonymous class
|
|
10
|
+
* (as in `export default class`), and `typeParameters` add the generic `<...>`
|
|
11
|
+
* list.
|
|
12
|
+
*
|
|
13
|
+
* The `heritageClauses` supply the `extends` and `implements` clauses, printed
|
|
14
|
+
* in that order on the header line. The `members` form the body, one per line
|
|
15
|
+
* inside a brace block, collapsing to `{}` when empty.
|
|
16
|
+
*
|
|
17
|
+
* Given an `export` modifier, the name `Circle`, an `extends Base` clause, an
|
|
18
|
+
* `implements IShape` clause, and an `r: number` property, the printed
|
|
19
|
+
* declaration is:
|
|
20
|
+
*
|
|
21
|
+
* ```ts
|
|
22
|
+
* export class Circle extends Base implements IShape {
|
|
23
|
+
* r: number;
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
28
|
+
* @param modifiers The leading modifiers and decorators, if any.
|
|
29
|
+
* @param name The name.
|
|
30
|
+
* @param typeParameters The generic type parameters, if any.
|
|
31
|
+
* @param heritageClauses The `extends` / `implements` clauses, if any.
|
|
32
|
+
* @param members The members.
|
|
33
|
+
* @returns The created {@link ClassDeclaration}.
|
|
34
|
+
*/
|
|
35
|
+
const createClassDeclaration = (modifiers, name, typeParameters, heritageClauses, members) => make("ClassDeclaration", {
|
|
36
|
+
modifiers,
|
|
37
|
+
name: name === undefined ? undefined : asName(name),
|
|
38
|
+
typeParameters,
|
|
39
|
+
heritageClauses,
|
|
40
|
+
members,
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
export { createClassDeclaration };
|
|
44
|
+
//# sourceMappingURL=createClassDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createClassDeclaration.mjs","sources":["../../../src/factory/declarations/createClassDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BG;MACU,sBAAsB,GAAG,CACpC,SAA8C,EAC9C,IAAqC,EACrC,cAA+D,EAC/D,eAAsD,EACtD,OAAgC,KAEhC,IAAI,CAAC,kBAAkB,EAAE;IACvB,SAAS;AACT,IAAA,IAAI,EAAE,IAAI,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;IACnD,cAAc;IACd,eAAe;IACf,OAAO;AACR,CAAA;;;;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link ClassStaticBlockDeclaration}: a `static { ... }` block.
|
|
5
|
+
*
|
|
6
|
+
* This is a class member that runs initialization code when the class is
|
|
7
|
+
* evaluated. The `body` block holds the statements, which the printer indents
|
|
8
|
+
* one per line after the `static` keyword.
|
|
9
|
+
*
|
|
10
|
+
* Given a body that assigns `count = 0`, the printed member is:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* static {
|
|
14
|
+
* count = 0;
|
|
15
|
+
* }
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
19
|
+
* @param body The body.
|
|
20
|
+
* @returns The created {@link ClassStaticBlockDeclaration}.
|
|
21
|
+
*/
|
|
22
|
+
const createClassStaticBlockDeclaration = (body) => make("ClassStaticBlockDeclaration", { body });
|
|
23
|
+
|
|
24
|
+
export { createClassStaticBlockDeclaration };
|
|
25
|
+
//# sourceMappingURL=createClassStaticBlockDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createClassStaticBlockDeclaration.mjs","sources":["../../../src/factory/declarations/createClassStaticBlockDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;AAkBG;AACI,MAAM,iCAAiC,GAAG,CAC/C,IAAW,KACqB,IAAI,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link ConstructorDeclaration}: a class `constructor(...) { ... }`.
|
|
5
|
+
*
|
|
6
|
+
* The `modifiers` precede the `constructor` keyword. The `parameters` print
|
|
7
|
+
* inside the parentheses, and a parameter that carries accessibility modifiers
|
|
8
|
+
* such as `private readonly` becomes a parameter property. The `body` block is
|
|
9
|
+
* the constructor body; when it holds no statements the printer collapses it to
|
|
10
|
+
* `{}` on the same line.
|
|
11
|
+
*
|
|
12
|
+
* Given a single `private readonly value: number` parameter and an empty body,
|
|
13
|
+
* the printed constructor is:
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* constructor(private readonly value: number) {}
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
20
|
+
* @param modifiers The leading modifiers and decorators, if any.
|
|
21
|
+
* @param parameters The parameters.
|
|
22
|
+
* @param body The body.
|
|
23
|
+
* @returns The created {@link ConstructorDeclaration}.
|
|
24
|
+
*/
|
|
25
|
+
const createConstructorDeclaration = (modifiers, parameters, body) => make("ConstructorDeclaration", { modifiers, parameters, body });
|
|
26
|
+
|
|
27
|
+
export { createConstructorDeclaration };
|
|
28
|
+
//# sourceMappingURL=createConstructorDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createConstructorDeclaration.mjs","sources":["../../../src/factory/declarations/createConstructorDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACI,MAAM,4BAA4B,GAAG,CAC1C,SAA8C,EAC9C,UAA2C,EAC3C,IAAuB,KAEvB,IAAI,CAAC,wBAAwB,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create an {@link EnumDeclaration}: an `enum X { ... }`.
|
|
6
|
+
*
|
|
7
|
+
* The `modifiers` precede the `enum` keyword, so an `export` modifier prints
|
|
8
|
+
* `export enum`, and a `const` modifier prints `const enum`. The `name` accepts
|
|
9
|
+
* a string or identifier. The `members` form the body, printed one per line and
|
|
10
|
+
* each terminated with a trailing comma.
|
|
11
|
+
*
|
|
12
|
+
* Given an `export` modifier, the name `Color`, and the members `Red` and
|
|
13
|
+
* `Green`, the printed declaration is:
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* export enum Color {
|
|
17
|
+
* Red,
|
|
18
|
+
* Green,
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param modifiers The leading modifiers and decorators, if any.
|
|
24
|
+
* @param name The name.
|
|
25
|
+
* @param members The members.
|
|
26
|
+
* @returns The created {@link EnumDeclaration}.
|
|
27
|
+
*/
|
|
28
|
+
const createEnumDeclaration = (modifiers, name, members) => make("EnumDeclaration", { modifiers, name: asName(name), members });
|
|
29
|
+
|
|
30
|
+
export { createEnumDeclaration };
|
|
31
|
+
//# sourceMappingURL=createEnumDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createEnumDeclaration.mjs","sources":["../../../src/factory/declarations/createEnumDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AASA;;;;;;;;;;;;;;;;;;;;;;;AAuBG;AACI,MAAM,qBAAqB,GAAG,CACnC,SAA8C,EAC9C,IAAyB,EACzB,OAA8B,KAE9B,IAAI,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE;;;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { asPropertyName } from '../internal/asPropertyName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create an {@link EnumMember}: a single member of an `enum` body.
|
|
6
|
+
*
|
|
7
|
+
* The `name` is the member key and accepts a string or property name. The
|
|
8
|
+
* optional `initializer` assigns an explicit value; when present the printer
|
|
9
|
+
* emits it after an `=`, and when omitted the member prints as the bare name
|
|
10
|
+
* and TypeScript assigns the value implicitly.
|
|
11
|
+
*
|
|
12
|
+
* Given the name `Red` and a numeric initializer of `1`, the printed member is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* Red = 1;
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
19
|
+
* @param name The name.
|
|
20
|
+
* @param initializer The initializer, if any.
|
|
21
|
+
* @returns The created {@link EnumMember}.
|
|
22
|
+
*/
|
|
23
|
+
const createEnumMember = (name, initializer) => make("EnumMember", { name: asPropertyName(name), initializer });
|
|
24
|
+
|
|
25
|
+
export { createEnumMember };
|
|
26
|
+
//# sourceMappingURL=createEnumMember.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createEnumMember.mjs","sources":["../../../src/factory/declarations/createEnumMember.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;AAkBG;AACI,MAAM,gBAAgB,GAAG,CAC9B,IAA2B,EAC3B,WAAwB,KAExB,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE;;;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create an {@link ExternalModuleReference}: a `require("...")` reference.
|
|
5
|
+
*
|
|
6
|
+
* This is the right-hand side of an `import x = require(...)` statement. The
|
|
7
|
+
* `expression` is the module specifier, normally a string literal, which the
|
|
8
|
+
* printer wraps in `require(...)`.
|
|
9
|
+
*
|
|
10
|
+
* Given a string literal of `"./app"`, the printed reference is:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* require("./app");
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
17
|
+
* @param expression The expression.
|
|
18
|
+
* @returns The created {@link ExternalModuleReference}.
|
|
19
|
+
*/
|
|
20
|
+
const createExternalModuleReference = (expression) => make("ExternalModuleReference", { expression });
|
|
21
|
+
|
|
22
|
+
export { createExternalModuleReference };
|
|
23
|
+
//# sourceMappingURL=createExternalModuleReference.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createExternalModuleReference.mjs","sources":["../../../src/factory/declarations/createExternalModuleReference.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;AAgBG;AACI,MAAM,6BAA6B,GAAG,CAC3C,UAAsB,KACM,IAAI,CAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE;;;;"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link FunctionDeclaration}: a `function f(...) { ... }`.
|
|
6
|
+
*
|
|
7
|
+
* The `modifiers` precede the `function` keyword, so an `export` modifier
|
|
8
|
+
* prints `export function` and an `async` modifier prints `async function`. The
|
|
9
|
+
* `asteriskToken`, when present, marks the function as a generator
|
|
10
|
+
* (`function*`). The `name` may be omitted for the anonymous form used by
|
|
11
|
+
* `export default`, and `typeParameters` add the generic `<...>` list.
|
|
12
|
+
*
|
|
13
|
+
* The `parameters` print inside the parentheses, the optional return `type`
|
|
14
|
+
* follows after a colon, and the `body` block holds the statements, indented
|
|
15
|
+
* one per line.
|
|
16
|
+
*
|
|
17
|
+
* Given an `export` modifier, the name `add`, two `number` parameters `a` and
|
|
18
|
+
* `b`, a `number` return type, and a body returning `a + b`, the printed
|
|
19
|
+
* declaration is:
|
|
20
|
+
*
|
|
21
|
+
* ```ts
|
|
22
|
+
* export function add(a: number, b: number): number {
|
|
23
|
+
* return a + b;
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
28
|
+
* @param modifiers The leading modifiers and decorators, if any.
|
|
29
|
+
* @param asteriskToken The generator marker (`*`), if any.
|
|
30
|
+
* @param name The name.
|
|
31
|
+
* @param typeParameters The generic type parameters, if any.
|
|
32
|
+
* @param parameters The parameters.
|
|
33
|
+
* @param type The type.
|
|
34
|
+
* @param body The body.
|
|
35
|
+
* @returns The created {@link FunctionDeclaration}.
|
|
36
|
+
*/
|
|
37
|
+
const createFunctionDeclaration = (modifiers, asteriskToken, name, typeParameters, parameters, type, body) => make("FunctionDeclaration", {
|
|
38
|
+
modifiers,
|
|
39
|
+
asteriskToken,
|
|
40
|
+
name: name === undefined ? undefined : asName(name),
|
|
41
|
+
typeParameters,
|
|
42
|
+
parameters,
|
|
43
|
+
type,
|
|
44
|
+
body,
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
export { createFunctionDeclaration };
|
|
48
|
+
//# sourceMappingURL=createFunctionDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFunctionDeclaration.mjs","sources":["../../../src/factory/declarations/createFunctionDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAaA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCG;AACI,MAAM,yBAAyB,GAAG,CACvC,SAA8C,EAC9C,aAAgC,EAChC,IAAqC,EACrC,cAA+D,EAC/D,UAA2C,EAC3C,IAA0B,EAC1B,IAAuB,KAEvB,IAAI,CAAC,qBAAqB,EAAE;IAC1B,SAAS;IACT,aAAa;AACb,IAAA,IAAI,EAAE,IAAI,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;IACnD,cAAc;IACd,UAAU;IACV,IAAI;IACJ,IAAI;AACL,CAAA;;;;"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { asPropertyName } from '../internal/asPropertyName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link GetAccessorDeclaration}: a `get x() { ... }` accessor.
|
|
6
|
+
*
|
|
7
|
+
* The `modifiers` precede the `get` keyword, so a `public` modifier prints
|
|
8
|
+
* `public get`. The `name` is the accessor key. A getter takes no value
|
|
9
|
+
* parameter, so `parameters` is normally empty; the optional `type` is the
|
|
10
|
+
* return type printed after the colon, and the `body` block holds the
|
|
11
|
+
* statements, indented one per line.
|
|
12
|
+
*
|
|
13
|
+
* Given a `public` modifier, the name `value`, a `number` return type, and a
|
|
14
|
+
* body returning `this._value`, the printed accessor is:
|
|
15
|
+
*
|
|
16
|
+
* ```ts
|
|
17
|
+
* public get value(): number {
|
|
18
|
+
* return this._value;
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param modifiers The leading modifiers and decorators, if any.
|
|
24
|
+
* @param name The name.
|
|
25
|
+
* @param parameters The parameters.
|
|
26
|
+
* @param type The type.
|
|
27
|
+
* @param body The body.
|
|
28
|
+
* @returns The created {@link GetAccessorDeclaration}.
|
|
29
|
+
*/
|
|
30
|
+
const createGetAccessorDeclaration = (modifiers, name, parameters, type, body) => make("GetAccessorDeclaration", {
|
|
31
|
+
modifiers,
|
|
32
|
+
name: asPropertyName(name),
|
|
33
|
+
parameters,
|
|
34
|
+
type,
|
|
35
|
+
body,
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
export { createGetAccessorDeclaration };
|
|
39
|
+
//# sourceMappingURL=createGetAccessorDeclaration.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createGetAccessorDeclaration.mjs","sources":["../../../src/factory/declarations/createGetAccessorDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAWA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;MACU,4BAA4B,GAAG,CAC1C,SAA8C,EAC9C,IAA2B,EAC3B,UAA2C,EAC3C,IAA0B,EAC1B,IAAuB,KAEvB,IAAI,CAAC,wBAAwB,EAAE;IAC7B,SAAS;AACT,IAAA,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;IAC1B,UAAU;IACV,IAAI;IACJ,IAAI;AACL,CAAA;;;;"}
|