@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,32 @@
|
|
|
1
|
+
import { createIdentifier } from './createIdentifier.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a unique identifier name as a plain {@link Identifier}.
|
|
5
|
+
*
|
|
6
|
+
* The legacy compiler uses a stateful name generator that guarantees the
|
|
7
|
+
* returned identifier is unique within its scope. This package is stateless, so
|
|
8
|
+
* this is a simplified placeholder: it does not guarantee uniqueness, it just
|
|
9
|
+
* returns the given `text` with the optional `prefix` and `suffix` wrapped
|
|
10
|
+
* around it.
|
|
11
|
+
*
|
|
12
|
+
* The `flags` parameter belongs to the stateful generator and is accepted for
|
|
13
|
+
* signature parity but ignored. Two calls with the same arguments produce the
|
|
14
|
+
* same name, so the caller is responsible for avoiding collisions.
|
|
15
|
+
*
|
|
16
|
+
* With `text` of `base` and no prefix or suffix, this prints:
|
|
17
|
+
*
|
|
18
|
+
* ```ts
|
|
19
|
+
* base;
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param text The base name text.
|
|
24
|
+
* @param _flags Ignored; kept for signature parity.
|
|
25
|
+
* @param prefix An optional name prefix.
|
|
26
|
+
* @param suffix An optional name suffix.
|
|
27
|
+
* @returns The created {@link Identifier}.
|
|
28
|
+
*/
|
|
29
|
+
const createUniqueName = (text, _flags, prefix, suffix) => createIdentifier(`${prefix ?? ""}${text}${suffix ?? ""}`);
|
|
30
|
+
|
|
31
|
+
export { createUniqueName };
|
|
32
|
+
//# sourceMappingURL=createUniqueName.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUniqueName.mjs","sources":["../../../src/factory/names/createUniqueName.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;AACI,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,MAAe,EACf,MAAe,EACf,MAAe,KACA,gBAAgB,CAAC,CAAA,EAAG,MAAM,IAAI,EAAE,CAAA,EAAG,IAAI,CAAA,EAAG,MAAM,IAAI,EAAE,CAAA,CAAE;;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { createPrivateIdentifier } from './createPrivateIdentifier.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a unique private identifier name as a plain {@link PrivateIdentifier}.
|
|
5
|
+
*
|
|
6
|
+
* The legacy compiler uses a stateful name generator that guarantees the
|
|
7
|
+
* returned private identifier is unique within its scope. This package is
|
|
8
|
+
* stateless, so this is a simplified placeholder: it does not guarantee
|
|
9
|
+
* uniqueness, it assembles a name from the optional `prefix`, the `text` (or
|
|
10
|
+
* the fallback `_unique` when omitted), and the optional `suffix`, then
|
|
11
|
+
* delegates to {@link createPrivateIdentifier}. Any leading `#` on `text` is
|
|
12
|
+
* stripped first so the delegate adds exactly one.
|
|
13
|
+
*
|
|
14
|
+
* With no arguments, the fallback applies and this prints:
|
|
15
|
+
*
|
|
16
|
+
* ```ts
|
|
17
|
+
* #_unique;
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
21
|
+
* @param text The base name text, if any.
|
|
22
|
+
* @param prefix An optional name prefix.
|
|
23
|
+
* @param suffix An optional name suffix.
|
|
24
|
+
* @returns The created {@link PrivateIdentifier}.
|
|
25
|
+
*/
|
|
26
|
+
const createUniquePrivateName = (text, prefix, suffix) => createPrivateIdentifier(`#${prefix ?? ""}${text ? text.replace(/^#/, "") : "_unique"}${suffix ?? ""}`);
|
|
27
|
+
|
|
28
|
+
export { createUniquePrivateName };
|
|
29
|
+
//# sourceMappingURL=createUniquePrivateName.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUniquePrivateName.mjs","sources":["../../../src/factory/names/createUniquePrivateName.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AACI,MAAM,uBAAuB,GAAG,CACrC,IAAa,EACb,MAAe,EACf,MAAe,KAEf,uBAAuB,CACrB,IAAI,MAAM,IAAI,EAAE,CAAA,EAAG,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,SAAS,CAAA,EAAG,MAAM,IAAI,EAAE,CAAA,CAAE;;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link Block}: a `{ ... }` statement block.
|
|
5
|
+
*
|
|
6
|
+
* The `statements` become the body, in order. The `multiLine` flag controls how
|
|
7
|
+
* the printer lays the block out: when `true` (the default here), each
|
|
8
|
+
* statement sits on its own indented line between braces; when `false`, the
|
|
9
|
+
* printer keeps the body compact on a single line.
|
|
10
|
+
*
|
|
11
|
+
* With `statements` printing `a()` and `b()` and `multiLine` left at its
|
|
12
|
+
* default, the result is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* {
|
|
16
|
+
* a();
|
|
17
|
+
* b();
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
22
|
+
* @param statements The statements.
|
|
23
|
+
* @param multiLine When `true`, print one entry per line.
|
|
24
|
+
* @returns The created {@link Block}.
|
|
25
|
+
*/
|
|
26
|
+
const createBlock = (statements, multiLine) => make("Block", { statements, multiLine: multiLine ?? true });
|
|
27
|
+
|
|
28
|
+
export { createBlock };
|
|
29
|
+
//# sourceMappingURL=createBlock.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createBlock.mjs","sources":["../../../src/factory/statements/createBlock.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AACI,MAAM,WAAW,GAAG,CACzB,UAAgC,EAChC,SAAmB,KACT,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI,EAAE;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link BreakStatement}: a `break;` statement.
|
|
6
|
+
*
|
|
7
|
+
* The optional `label` names an enclosing labeled statement to break out of. A
|
|
8
|
+
* string is wrapped into an identifier; pass nothing for a plain `break`.
|
|
9
|
+
*
|
|
10
|
+
* With no label the result is:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* break;
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* With `label` of `outer` the result is:
|
|
17
|
+
*
|
|
18
|
+
* ```ts
|
|
19
|
+
* break outer;
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param label The label.
|
|
24
|
+
* @returns The created {@link BreakStatement}.
|
|
25
|
+
*/
|
|
26
|
+
const createBreakStatement = (label) => make("BreakStatement", {
|
|
27
|
+
label: label === undefined ? undefined : asName(label),
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
export { createBreakStatement };
|
|
31
|
+
//# sourceMappingURL=createBreakStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createBreakStatement.mjs","sources":["../../../src/factory/statements/createBreakStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACI,MAAM,oBAAoB,GAAG,CAClC,KAA2B,KAE3B,IAAI,CAAC,gBAAgB,EAAE;AACrB,IAAA,KAAK,EAAE,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;AACvD,CAAA;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link CaseBlock}: the braced body of a switch statement.
|
|
5
|
+
*
|
|
6
|
+
* The `clauses` are the `case` and `default` arms, printed in the given order
|
|
7
|
+
* between braces. This is the body you hand to {@link createSwitchStatement}; on
|
|
8
|
+
* its own it carries no switch subject.
|
|
9
|
+
*
|
|
10
|
+
* With `clauses` of a `case 1:` arm (calling `a()` then `break`) and a
|
|
11
|
+
* `default:` arm (calling `b()`), the result is:
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* {
|
|
15
|
+
* case 1:
|
|
16
|
+
* a();
|
|
17
|
+
* break;
|
|
18
|
+
* default:
|
|
19
|
+
* b();
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
24
|
+
* @param clauses The clauses.
|
|
25
|
+
* @returns The created {@link CaseBlock}.
|
|
26
|
+
*/
|
|
27
|
+
const createCaseBlock = (clauses) => make("CaseBlock", { clauses });
|
|
28
|
+
|
|
29
|
+
export { createCaseBlock };
|
|
30
|
+
//# sourceMappingURL=createCaseBlock.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createCaseBlock.mjs","sources":["../../../src/factory/statements/createCaseBlock.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;;AAuBG;AACI,MAAM,eAAe,GAAG,CAC7B,OAAuC,KACzB,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link CaseClause}: one `case ...:` arm of a switch.
|
|
5
|
+
*
|
|
6
|
+
* The `expression` is the value matched against the switch subject, and
|
|
7
|
+
* `statements` is the body that runs on a match. Fall-through is the default,
|
|
8
|
+
* so include an explicit `break` in `statements` when you want the arm to
|
|
9
|
+
* stop.
|
|
10
|
+
*
|
|
11
|
+
* With `expression` of `1` and `statements` of `a()` followed by a `break`, the
|
|
12
|
+
* result is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* case 1:
|
|
16
|
+
* a();
|
|
17
|
+
* break;
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
21
|
+
* @param expression The expression.
|
|
22
|
+
* @param statements The statements.
|
|
23
|
+
* @returns The created {@link CaseClause}.
|
|
24
|
+
*/
|
|
25
|
+
const createCaseClause = (expression, statements) => make("CaseClause", { expression, statements });
|
|
26
|
+
|
|
27
|
+
export { createCaseClause };
|
|
28
|
+
//# sourceMappingURL=createCaseClause.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createCaseClause.mjs","sources":["../../../src/factory/statements/createCaseClause.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;AAqBG;MACU,gBAAgB,GAAG,CAC9B,UAAsB,EACtB,UAAgC,KACjB,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;;;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
import { createVariableDeclaration } from './createVariableDeclaration.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link CatchClause}: the `catch (...) { ... }` arm of a try.
|
|
6
|
+
*
|
|
7
|
+
* The `variableDeclaration` binds the caught value. Pass a string for the
|
|
8
|
+
* common `catch (e)` case and it is turned into a bare binding; pass a full
|
|
9
|
+
* {@link VariableDeclaration} when you need a type or destructuring pattern;
|
|
10
|
+
* pass `undefined` for the binding-less `catch { ... }` form. The `block` is
|
|
11
|
+
* the handler body.
|
|
12
|
+
*
|
|
13
|
+
* With `variableDeclaration` of `e` and a `block` calling `handle(e)`, the
|
|
14
|
+
* result is:
|
|
15
|
+
*
|
|
16
|
+
* ```ts
|
|
17
|
+
* catch (e) {
|
|
18
|
+
* handle(e);
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param variableDeclaration The variableDeclaration.
|
|
24
|
+
* @param block The block.
|
|
25
|
+
* @returns The created {@link CatchClause}.
|
|
26
|
+
*/
|
|
27
|
+
const createCatchClause = (variableDeclaration, block) => make("CatchClause", {
|
|
28
|
+
variableDeclaration: typeof variableDeclaration === "string"
|
|
29
|
+
? createVariableDeclaration(variableDeclaration, undefined, undefined, undefined)
|
|
30
|
+
: variableDeclaration,
|
|
31
|
+
block,
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
export { createCatchClause };
|
|
35
|
+
//# sourceMappingURL=createCatchClause.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createCatchClause.mjs","sources":["../../../src/factory/statements/createCatchClause.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AACI,MAAM,iBAAiB,GAAG,CAC/B,mBAA6D,EAC7D,KAAY,KAEZ,IAAI,CAAC,aAAa,EAAE;AAClB,IAAA,mBAAmB,EACjB,OAAO,mBAAmB,KAAK;UAC3B,yBAAyB,CACvB,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,SAAS;AAEb,UAAE,mBAAmB;IACzB,KAAK;AACN,CAAA;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link ContinueStatement}: a `continue;` statement.
|
|
6
|
+
*
|
|
7
|
+
* The optional `label` names an enclosing labeled loop to continue. A string is
|
|
8
|
+
* wrapped into an identifier; pass nothing for a plain `continue`.
|
|
9
|
+
*
|
|
10
|
+
* With no label the result is:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* continue;
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* With `label` of `outer` the result is:
|
|
17
|
+
*
|
|
18
|
+
* ```ts
|
|
19
|
+
* continue outer;
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param label The label.
|
|
24
|
+
* @returns The created {@link ContinueStatement}.
|
|
25
|
+
*/
|
|
26
|
+
const createContinueStatement = (label) => make("ContinueStatement", {
|
|
27
|
+
label: label === undefined ? undefined : asName(label),
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
export { createContinueStatement };
|
|
31
|
+
//# sourceMappingURL=createContinueStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createContinueStatement.mjs","sources":["../../../src/factory/statements/createContinueStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACI,MAAM,uBAAuB,GAAG,CACrC,KAA2B,KAE3B,IAAI,CAAC,mBAAmB,EAAE;AACxB,IAAA,KAAK,EAAE,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;AACvD,CAAA;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link DebuggerStatement}: a `debugger;` statement.
|
|
5
|
+
*
|
|
6
|
+
* The statement takes no inputs and triggers a breakpoint when a debugger is
|
|
7
|
+
* attached.
|
|
8
|
+
*
|
|
9
|
+
* The result is always:
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* debugger;
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
16
|
+
* @returns The created {@link DebuggerStatement}.
|
|
17
|
+
*/
|
|
18
|
+
const createDebuggerStatement = () => make("DebuggerStatement", {});
|
|
19
|
+
|
|
20
|
+
export { createDebuggerStatement };
|
|
21
|
+
//# sourceMappingURL=createDebuggerStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDebuggerStatement.mjs","sources":["../../../src/factory/statements/createDebuggerStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;AAcG;AACI,MAAM,uBAAuB,GAAG,MACrC,IAAI,CAAC,mBAAmB,EAAE,EAAE;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link DefaultClause}: the `default:` arm of a switch.
|
|
5
|
+
*
|
|
6
|
+
* The `statements` form the body that runs when no `case` matches. As with
|
|
7
|
+
* `case` arms, fall-through is the default, so add an explicit `break` when the
|
|
8
|
+
* arm should stop.
|
|
9
|
+
*
|
|
10
|
+
* With `statements` of a single `b()` call, the result is:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* default:
|
|
14
|
+
* b();
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
18
|
+
* @param statements The statements.
|
|
19
|
+
* @returns The created {@link DefaultClause}.
|
|
20
|
+
*/
|
|
21
|
+
const createDefaultClause = (statements) => make("DefaultClause", { statements });
|
|
22
|
+
|
|
23
|
+
export { createDefaultClause };
|
|
24
|
+
//# sourceMappingURL=createDefaultClause.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDefaultClause.mjs","sources":["../../../src/factory/statements/createDefaultClause.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;AAiBG;AACI,MAAM,mBAAmB,GAAG,CACjC,UAAgC,KACd,IAAI,CAAC,eAAe,EAAE,EAAE,UAAU,EAAE;;;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link DoStatement}: a `do ... while (...)` loop.
|
|
5
|
+
*
|
|
6
|
+
* The `statement` is the loop body and `expression` is the condition tested
|
|
7
|
+
* after each pass, so the body always runs at least once. Note the argument
|
|
8
|
+
* order: the body comes before the condition, matching the source layout.
|
|
9
|
+
*
|
|
10
|
+
* With a `statement` block calling `a()` and an `expression` of `cond`, the
|
|
11
|
+
* result is:
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* do {
|
|
15
|
+
* a();
|
|
16
|
+
* } while (cond);
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
20
|
+
* @param statement The statement.
|
|
21
|
+
* @param expression The expression.
|
|
22
|
+
* @returns The created {@link DoStatement}.
|
|
23
|
+
*/
|
|
24
|
+
const createDoStatement = (statement, expression) => make("DoStatement", { statement, expression });
|
|
25
|
+
|
|
26
|
+
export { createDoStatement };
|
|
27
|
+
//# sourceMappingURL=createDoStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDoStatement.mjs","sources":["../../../src/factory/statements/createDoStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;AAoBG;MACU,iBAAiB,GAAG,CAC/B,SAAoB,EACpB,UAAsB,KACN,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create an {@link EmptyStatement}: a lone `;` statement.
|
|
5
|
+
*
|
|
6
|
+
* The statement takes no inputs and does nothing. It is the empty body you
|
|
7
|
+
* reach for when a loop or branch needs a statement but no work, such as `for
|
|
8
|
+
* (; cond; );`.
|
|
9
|
+
*
|
|
10
|
+
* The result is a single semicolon:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
16
|
+
* @returns The created {@link EmptyStatement}.
|
|
17
|
+
*/
|
|
18
|
+
const createEmptyStatement = () => make("EmptyStatement", {});
|
|
19
|
+
|
|
20
|
+
export { createEmptyStatement };
|
|
21
|
+
//# sourceMappingURL=createEmptyStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createEmptyStatement.mjs","sources":["../../../src/factory/statements/createEmptyStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;AAcG;AACI,MAAM,oBAAoB,GAAG,MAClC,IAAI,CAAC,gBAAgB,EAAE,EAAE;;;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create an {@link ExpressionStatement}: an expression used as a statement.
|
|
5
|
+
*
|
|
6
|
+
* The `expression` is evaluated for its effect and the printer terminates it
|
|
7
|
+
* with a semicolon. This is how a call, assignment, or similar expression
|
|
8
|
+
* becomes a standalone statement.
|
|
9
|
+
*
|
|
10
|
+
* With `expression` of a `doThing(a)` call, the result is:
|
|
11
|
+
*
|
|
12
|
+
* ```ts
|
|
13
|
+
* doThing(a);
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
17
|
+
* @param expression The expression.
|
|
18
|
+
* @returns The created {@link ExpressionStatement}.
|
|
19
|
+
*/
|
|
20
|
+
const createExpressionStatement = (expression) => make("ExpressionStatement", { expression });
|
|
21
|
+
|
|
22
|
+
export { createExpressionStatement };
|
|
23
|
+
//# sourceMappingURL=createExpressionStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createExpressionStatement.mjs","sources":["../../../src/factory/statements/createExpressionStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;AAgBG;AACI,MAAM,yBAAyB,GAAG,CACvC,UAAsB,KACE,IAAI,CAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE;;;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link ForInStatement}: a `for (... in ...)` loop.
|
|
5
|
+
*
|
|
6
|
+
* The `initializer` is the binding that receives each enumerable key (a
|
|
7
|
+
* declaration list such as `const key`, or an assignment target), `expression`
|
|
8
|
+
* is the object being enumerated, and `statement` is the loop body. The loop
|
|
9
|
+
* walks the object's enumerable property keys as strings.
|
|
10
|
+
*
|
|
11
|
+
* With an `initializer` of `const key`, an `expression` of `obj`, and a
|
|
12
|
+
* `statement` block calling `use(key)`, the result is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* for (const key in obj) {
|
|
16
|
+
* use(key);
|
|
17
|
+
* }
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
21
|
+
* @param initializer The initializer.
|
|
22
|
+
* @param expression The expression.
|
|
23
|
+
* @param statement The statement.
|
|
24
|
+
* @returns The created {@link ForInStatement}.
|
|
25
|
+
*/
|
|
26
|
+
const createForInStatement = (initializer, expression, statement) => make("ForInStatement", { initializer, expression, statement });
|
|
27
|
+
|
|
28
|
+
export { createForInStatement };
|
|
29
|
+
//# sourceMappingURL=createForInStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createForInStatement.mjs","sources":["../../../src/factory/statements/createForInStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AACI,MAAM,oBAAoB,GAAG,CAClC,WAA2B,EAC3B,UAAsB,EACtB,SAAoB,KAEpB,IAAI,CAAC,gBAAgB,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE;;;;"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link ForOfStatement}: a `for (... of ...)` loop.
|
|
5
|
+
*
|
|
6
|
+
* The `initializer` is the binding that receives each element, `expression` is
|
|
7
|
+
* the iterable being walked, and `statement` is the loop body. Pass an `await`
|
|
8
|
+
* token as `awaitModifier` to emit `for await (...)` for async iterables, or
|
|
9
|
+
* `undefined` for the plain form.
|
|
10
|
+
*
|
|
11
|
+
* With `awaitModifier` of `undefined`, an `initializer` of `const item`, an
|
|
12
|
+
* `expression` of `list`, and a `statement` block calling `use(item)`, the
|
|
13
|
+
* result is:
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* for (const item of list) {
|
|
17
|
+
* use(item);
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* Passing an `await` token as `awaitModifier` instead yields:
|
|
22
|
+
*
|
|
23
|
+
* ```ts
|
|
24
|
+
* for await (const item of list) {
|
|
25
|
+
* use(item);
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
30
|
+
* @param awaitModifier The awaitModifier.
|
|
31
|
+
* @param initializer The initializer.
|
|
32
|
+
* @param expression The expression.
|
|
33
|
+
* @param statement The statement.
|
|
34
|
+
* @returns The created {@link ForOfStatement}.
|
|
35
|
+
*/
|
|
36
|
+
const createForOfStatement = (awaitModifier, initializer, expression, statement) => make("ForOfStatement", { awaitModifier, initializer, expression, statement });
|
|
37
|
+
|
|
38
|
+
export { createForOfStatement };
|
|
39
|
+
//# sourceMappingURL=createForOfStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createForOfStatement.mjs","sources":["../../../src/factory/statements/createForOfStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCG;AACI,MAAM,oBAAoB,GAAG,CAClC,aAAgC,EAChC,WAA2B,EAC3B,UAAsB,EACtB,SAAoB,KAEpB,IAAI,CAAC,gBAAgB,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE;;;;"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link ForStatement}: a C-style `for (init; cond; inc) ...` loop.
|
|
5
|
+
*
|
|
6
|
+
* The `initializer` runs once before the loop (a declaration list or an
|
|
7
|
+
* expression), `condition` is tested before each pass, and `incrementor` runs
|
|
8
|
+
* after each pass; `statement` is the body. Each of the three header parts is
|
|
9
|
+
* optional, so passing `undefined` for all of them yields the infinite `for (;
|
|
10
|
+
* ; )` form.
|
|
11
|
+
*
|
|
12
|
+
* With an `initializer` of `let i = 0`, a `condition` of `i < 10`, an
|
|
13
|
+
* `incrementor` of `i++`, and a `statement` block calling `use(i)`, the result
|
|
14
|
+
* is:
|
|
15
|
+
*
|
|
16
|
+
* ```ts
|
|
17
|
+
* for (let i = 0; i < 10; i++) {
|
|
18
|
+
* use(i);
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param initializer The initializer.
|
|
24
|
+
* @param condition The condition.
|
|
25
|
+
* @param incrementor The incrementor.
|
|
26
|
+
* @param statement The statement.
|
|
27
|
+
* @returns The created {@link ForStatement}.
|
|
28
|
+
*/
|
|
29
|
+
const createForStatement = (initializer, condition, incrementor, statement) => make("ForStatement", { initializer, condition, incrementor, statement });
|
|
30
|
+
|
|
31
|
+
export { createForStatement };
|
|
32
|
+
//# sourceMappingURL=createForStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createForStatement.mjs","sources":["../../../src/factory/statements/createForStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;AACI,MAAM,kBAAkB,GAAG,CAChC,WAAuC,EACvC,SAAiC,EACjC,WAAmC,EACnC,SAAoB,KAEpB,IAAI,CAAC,cAAc,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create an {@link IfStatement}: an `if (...) ... else ...` statement.
|
|
5
|
+
*
|
|
6
|
+
* The `expression` is the condition, `thenStatement` runs when it holds, and
|
|
7
|
+
* the optional `elseStatement` runs otherwise. Omit `elseStatement` for a bare
|
|
8
|
+
* `if`; to build an `else if` chain, pass another `IfStatement` as
|
|
9
|
+
* `elseStatement`.
|
|
10
|
+
*
|
|
11
|
+
* With an `expression` of `x`, a `thenStatement` block calling `a()`, and an
|
|
12
|
+
* `elseStatement` block calling `b()`, the result is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* if (x) {
|
|
16
|
+
* a();
|
|
17
|
+
* } else {
|
|
18
|
+
* b();
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
23
|
+
* @param expression The expression.
|
|
24
|
+
* @param thenStatement The statement run when the condition holds.
|
|
25
|
+
* @param elseStatement The statement run otherwise, if any.
|
|
26
|
+
* @returns The created {@link IfStatement}.
|
|
27
|
+
*/
|
|
28
|
+
const createIfStatement = (expression, thenStatement, elseStatement) => make("IfStatement", { expression, thenStatement, elseStatement });
|
|
29
|
+
|
|
30
|
+
export { createIfStatement };
|
|
31
|
+
//# sourceMappingURL=createIfStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createIfStatement.mjs","sources":["../../../src/factory/statements/createIfStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;;;AAwBG;AACI,MAAM,iBAAiB,GAAG,CAC/B,UAAsB,EACtB,aAAwB,EACxB,aAAyB,KAEzB,IAAI,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE;;;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { asName } from '../internal/asName.mjs';
|
|
2
|
+
import { make } from '../internal/make.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Create a {@link LabeledStatement}: a `label: ...` statement.
|
|
6
|
+
*
|
|
7
|
+
* The `label` names the statement so a `break` or `continue` can target it; a
|
|
8
|
+
* string is wrapped into an identifier. The `statement` is the body the label
|
|
9
|
+
* applies to, typically a loop.
|
|
10
|
+
*
|
|
11
|
+
* With a `label` of `outer` and a `statement` of an empty `for` loop that calls
|
|
12
|
+
* `break outer`, the result is:
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* outer: for (;;) {
|
|
16
|
+
* break outer;
|
|
17
|
+
* }
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
21
|
+
* @param label The label.
|
|
22
|
+
* @param statement The statement.
|
|
23
|
+
* @returns The created {@link LabeledStatement}.
|
|
24
|
+
*/
|
|
25
|
+
const createLabeledStatement = (label, statement) => make("LabeledStatement", { label: asName(label), statement });
|
|
26
|
+
|
|
27
|
+
export { createLabeledStatement };
|
|
28
|
+
//# sourceMappingURL=createLabeledStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createLabeledStatement.mjs","sources":["../../../src/factory/statements/createLabeledStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,sBAAsB,GAAG,CACpC,KAA0B,EAC1B,SAAoB,KAEpB,IAAI,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE;;;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { make } from '../internal/make.mjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a {@link NotEmittedStatement}: a placeholder that prints nothing.
|
|
5
|
+
*
|
|
6
|
+
* This is a synthetic statement that occupies a slot in the tree but produces
|
|
7
|
+
* no output. The optional `original` records the node this placeholder stands
|
|
8
|
+
* in for, so comments and source positions attached to it can still be carried
|
|
9
|
+
* through.
|
|
10
|
+
*
|
|
11
|
+
* With any `original` (or none), the printed result is empty:
|
|
12
|
+
*
|
|
13
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
14
|
+
* @param original The original node this placeholder replaces, if any.
|
|
15
|
+
* @returns The created {@link NotEmittedStatement}.
|
|
16
|
+
*/
|
|
17
|
+
const createNotEmittedStatement = (original) => make("NotEmittedStatement", { original });
|
|
18
|
+
|
|
19
|
+
export { createNotEmittedStatement };
|
|
20
|
+
//# sourceMappingURL=createNotEmittedStatement.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createNotEmittedStatement.mjs","sources":["../../../src/factory/statements/createNotEmittedStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;AAaG;AACI,MAAM,yBAAyB,GAAG,CACvC,QAAe,KACS,IAAI,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE;;;;"}
|