rawsql-ts 0.1.0-beta.6 → 0.1.0-beta.7
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/dist/index.d.ts +13 -0
- package/dist/models/BinarySelectQuery.d.ts +91 -0
- package/dist/models/Clause.d.ts +189 -0
- package/dist/models/KeywordTrie.d.ts +11 -0
- package/dist/models/Lexeme.d.ts +25 -0
- package/dist/models/SelectQuery.d.ts +5 -0
- package/dist/models/SimpleSelectQuery.d.ts +167 -0
- package/dist/models/SqlComponent.d.ts +18 -0
- package/dist/models/ValueComponent.d.ts +158 -0
- package/dist/models/ValuesQuery.d.ts +10 -0
- package/dist/parsers/CommandExpressionParser.d.ts +15 -0
- package/dist/parsers/CommonTableParser.d.ts +9 -0
- package/dist/parsers/ForClauseParser.d.ts +9 -0
- package/dist/parsers/FromClauseParser.d.ts +9 -0
- package/dist/parsers/FunctionExpressionParser.d.ts +22 -0
- package/dist/parsers/GroupByParser.d.ts +10 -0
- package/dist/parsers/HavingParser.d.ts +9 -0
- package/dist/parsers/IdentifierParser.d.ts +8 -0
- package/dist/parsers/JoinClauseParser.d.ts +14 -0
- package/dist/parsers/KeywordParser.d.ts +17 -0
- package/dist/parsers/LimitClauseParser.d.ts +9 -0
- package/dist/parsers/LiteralParser.d.ts +8 -0
- package/dist/parsers/OrderByClauseParser.d.ts +10 -0
- package/dist/parsers/OverExpressionParser.d.ts +9 -0
- package/dist/parsers/ParameterExpressionParser.d.ts +8 -0
- package/dist/parsers/ParenExpressionParser.d.ts +8 -0
- package/dist/parsers/PartitionByParser.d.ts +9 -0
- package/dist/parsers/SelectClauseParser.d.ts +10 -0
- package/dist/parsers/SelectQueryParser.d.ts +13 -0
- package/dist/parsers/SourceAliasExpressionParser.d.ts +8 -0
- package/dist/parsers/SourceExpressionParser.d.ts +8 -0
- package/dist/parsers/SourceParser.d.ts +13 -0
- package/dist/parsers/SqlTokenizer.d.ts +64 -0
- package/dist/parsers/StringSpecifierExpressionParser.d.ts +8 -0
- package/dist/parsers/UnaryExpressionParser.d.ts +8 -0
- package/dist/parsers/ValueParser.d.ts +14 -0
- package/dist/parsers/ValuesQueryParser.d.ts +10 -0
- package/dist/parsers/WhereClauseParser.d.ts +9 -0
- package/dist/parsers/WindowClauseParser.d.ts +9 -0
- package/dist/parsers/WindowExpressionParser.d.ts +12 -0
- package/dist/parsers/WithClauseParser.d.ts +9 -0
- package/dist/tokenReaders/BaseTokenReader.d.ts +43 -0
- package/dist/tokenReaders/CommandTokenReader.d.ts +7 -0
- package/dist/tokenReaders/FunctionTokenReader.d.ts +11 -0
- package/dist/tokenReaders/IdentifierTokenReader.d.ts +15 -0
- package/dist/tokenReaders/LiteralTokenReader.d.ts +23 -0
- package/dist/tokenReaders/OperatorTokenReader.d.ts +5 -0
- package/dist/tokenReaders/ParameterTokenReader.d.ts +11 -0
- package/dist/tokenReaders/StringSpecifierTokenReader.d.ts +8 -0
- package/dist/tokenReaders/SymbolTokenReader.d.ts +12 -0
- package/dist/tokenReaders/TokenReaderManager.d.ts +53 -0
- package/dist/tokenReaders/TypeTokenReader.d.ts +11 -0
- package/dist/transformers/CTEBuilder.d.ts +52 -0
- package/dist/transformers/CTECollector.d.ts +81 -0
- package/dist/transformers/CTEDisabler.d.ts +77 -0
- package/dist/transformers/CTEInjector.d.ts +40 -0
- package/dist/transformers/CTENormalizer.d.ts +25 -0
- package/dist/transformers/Formatter.d.ts +67 -0
- package/dist/transformers/QueryNormalizer.d.ts +37 -0
- package/dist/transformers/SelectValueCollector.d.ts +62 -0
- package/dist/transformers/SelectableColumnCollector.d.ts +70 -0
- package/dist/transformers/TableSourceCollector.d.ts +92 -0
- package/dist/transformers/UpstreamSelectQueryFinder.d.ts +27 -0
- package/dist/utils/charLookupTable.d.ts +11 -0
- package/dist/utils/stringUtils.d.ts +43 -0
- package/package.json +6 -2
- package/src/index.d.ts +378 -0
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/904140CF7EDF0C98AEA45F0D36062FE1 +0 -1
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/A32D1DB906C73FA74EF270AAEE165FC0 +0 -86
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/E621434FB1D5415B14FBBCC11967E420 +0 -34
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/EF71788BE39818EEA3F0164DC15E1BD7 +0 -170
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/state.mpack +0 -1
- package/.vs/CopilotSnapshots/07B1013C385C5641A5F5100E0751210B/0C73C015B2C859419AFBD08BE1343FC0/BA5D2B145A59265D63FA3B3584344B02 +0 -236
- package/.vs/CopilotSnapshots/07B1013C385C5641A5F5100E0751210B/state.mpack +0 -1
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/A9AF50781E77B849AA3262D2738D9338/1F95FD72006ED6E92629CEFD7B2C4FEC +0 -1
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/A9AF50781E77B849AA3262D2738D9338/4CA7B9D3BC2D0A498DC0777EDA3F9B0F +0 -1
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/A9AF50781E77B849AA3262D2738D9338/7B623BFBAEB4EB61A9585F0BC8039B06 +0 -19
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/CA94452964F7A94B8ECE3B54EE21B50F/1F95FD72006ED6E92629CEFD7B2C4FEC +0 -5
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/CA94452964F7A94B8ECE3B54EE21B50F/4CA7B9D3BC2D0A498DC0777EDA3F9B0F +0 -3
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/CA94452964F7A94B8ECE3B54EE21B50F/7B623BFBAEB4EB61A9585F0BC8039B06 +0 -21
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/state.mpack +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/41035D2B1D57326B55F66372017E223A +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/45EABF6EF6BDFAA58C941A29E98C9C83 +0 -113
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/748E0B8859CA1A5FDCA675C9E53B6D1C +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/A250FF4AD59546A65FFDC6AA92A4698E +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/C42432BC73D8AA122171FAB6EEB13CBC +0 -19
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/state.mpack +0 -1
- package/.vs/CopilotSnapshots/13B40109875D434BB24880356492BE7E/828B96E81CC7014B887AA519767FACC3/437DAEC1EBBAF4F25ABA1B6A25EB6933 +0 -25
- package/.vs/CopilotSnapshots/13B40109875D434BB24880356492BE7E/state.mpack +0 -1
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/1CDE8BAB21868E4D893E119554BA87E5/904140CF7EDF0C98AEA45F0D36062FE1 +0 -63
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/1CDE8BAB21868E4D893E119554BA87E5/DFF70C60F68ECD9A4E4C3C74E4CC4DEE +0 -1
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/1CDE8BAB21868E4D893E119554BA87E5/EF71788BE39818EEA3F0164DC15E1BD7 +0 -170
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/state.mpack +0 -1
- package/.vs/CopilotSnapshots/3BACC9346120824DB30006E353477163/87C831E9EA1AA249A25A44D08CF8E0B5/EF71788BE39818EEA3F0164DC15E1BD7 +0 -328
- package/.vs/CopilotSnapshots/3BACC9346120824DB30006E353477163/state.mpack +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/23E7151F0483C5BB5E663F83D4962FD4 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/2D4DCEBC89D52B097AEEEABA23C0EB59 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/7C951A8A572EA5C371FDE657AF968B9C +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/A32D1DB906C73FA74EF270AAEE165FC0 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/B692C85119711C76235AA5D78F9F3818 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/E602628EF6D764C2C267810C92906DBA +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/E621434FB1D5415B14FBBCC11967E420 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/23E7151F0483C5BB5E663F83D4962FD4 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/2D4DCEBC89D52B097AEEEABA23C0EB59 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/7C951A8A572EA5C371FDE657AF968B9C +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/A32D1DB906C73FA74EF270AAEE165FC0 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/B692C85119711C76235AA5D78F9F3818 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/E602628EF6D764C2C267810C92906DBA +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/E621434FB1D5415B14FBBCC11967E420 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/EF71788BE39818EEA3F0164DC15E1BD7 +0 -489
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/state.mpack +0 -1
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/0E5F1D40C0CAE848B8F9457F29A1F3FF/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -42
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/462A64EF41A4BF42A18708B83E02FD6F/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -40
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/90C95C12B91FA142BEF509B6FA329DE5/A3B20E10A19C7CA170132274D2F9312B +0 -9
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/90C95C12B91FA142BEF509B6FA329DE5/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -1
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/AD7513C9BBFE904AAB7F940397B95A99/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -42
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/state.mpack +0 -1
- package/.vs/CopilotSnapshots/50E0417FAD2E524D887CB5763C2FB7B4/63A4C250D9DCE04B9F61D8833B89B5BF/EF71788BE39818EEA3F0164DC15E1BD7 +0 -174
- package/.vs/CopilotSnapshots/50E0417FAD2E524D887CB5763C2FB7B4/state.mpack +0 -1
- package/.vs/CopilotSnapshots/5EF2507B002AC14EA991043C37C36551/60FF68DE489DAD4FBCBBB54AA3F6A552/EF71788BE39818EEA3F0164DC15E1BD7 +0 -496
- package/.vs/CopilotSnapshots/5EF2507B002AC14EA991043C37C36551/state.mpack +0 -1
- package/.vs/CopilotSnapshots/6AA7610F1FB2B746821E54C28A8D109B/7FB78C0F8CB04F4AA6AF3315277B80F8/FB35DD13E708043D4CD8ACD54E14708F +0 -1
- package/.vs/CopilotSnapshots/6AA7610F1FB2B746821E54C28A8D109B/state.mpack +0 -1
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/5782E13CAB03A04E9E1EC5692F892170/BA5D2B145A59265D63FA3B3584344B02 +0 -5
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/5782E13CAB03A04E9E1EC5692F892170/EF71788BE39818EEA3F0164DC15E1BD7 +0 -158
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/9886598393C89944B51920C01EB650C9/BA5D2B145A59265D63FA3B3584344B02 +0 -35
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/state.mpack +0 -1
- package/.vs/CopilotSnapshots/8492D9C7A2D9514DB8A69D304B48BF3C/D2DA3C4E2131E84EA02E321802A65254/EF71788BE39818EEA3F0164DC15E1BD7 +0 -165
- package/.vs/CopilotSnapshots/8492D9C7A2D9514DB8A69D304B48BF3C/state.mpack +0 -1
- package/.vs/CopilotSnapshots/891A2DC0E5FA424CB8BDDA4FE26ED372/E244D49DDC79514DBA322770B03AE287/1CF9939611B0D194AC81951A171DF046 +0 -43
- package/.vs/CopilotSnapshots/891A2DC0E5FA424CB8BDDA4FE26ED372/state.mpack +0 -1
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/11E6D1F8E56D734F99C5216231273E8D/E621434FB1D5415B14FBBCC11967E420 +0 -66
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/24C69A83160FD844B0DEFECF8E1313DB/1CF9939611B0D194AC81951A171DF046 +0 -43
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/24C69A83160FD844B0DEFECF8E1313DB/E621434FB1D5415B14FBBCC11967E420 +0 -53
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/5E6D1BCD7CE81548AB445DE97505DC62/1CF9939611B0D194AC81951A171DF046 +0 -30
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/5E6D1BCD7CE81548AB445DE97505DC62/E621434FB1D5415B14FBBCC11967E420 +0 -53
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/EC4E81E0109C8F4BA1B5D9CFE1C122BC/E621434FB1D5415B14FBBCC11967E420 +0 -54
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/state.mpack +0 -1
- package/.vs/CopilotSnapshots/90C28D332F9B2949810126139FCA2640/6139F888FA743143B8E6C99306A478A6/30F913EA337870677E7C575773ECF531 +0 -130
- package/.vs/CopilotSnapshots/90C28D332F9B2949810126139FCA2640/F21743E379F9C1439F6A6405A289AA99/30F913EA337870677E7C575773ECF531 +0 -160
- package/.vs/CopilotSnapshots/90C28D332F9B2949810126139FCA2640/state.mpack +0 -1
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/2E2EFE66C5E05C4B809986E9B23D5409/45EABF6EF6BDFAA58C941A29E98C9C83 +0 -113
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/2E2EFE66C5E05C4B809986E9B23D5409/FB35DD13E708043D4CD8ACD54E14708F +0 -2
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/BE46916E3A8F2C4284792B951B674907/FB35DD13E708043D4CD8ACD54E14708F +0 -5
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/state.mpack +0 -1
- package/.vs/CopilotSnapshots/A6D99EA2D3819F45AD8087D7487F9318/state.mpack +0 -1
- package/.vs/CopilotSnapshots/A78C77F7A237704D95BCFE1BBC39FB0F/68BA9941941DC244BC799D89DB2BF86E/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/A78C77F7A237704D95BCFE1BBC39FB0F/state.mpack +0 -1
- package/.vs/CopilotSnapshots/AD2203F1B9FECE44BB6D5DC5D83E87AA/734AB1B2974F9545B7F12AAA5842524B/840203FFA9CCF5B33DFD5C7CC5B13527 +0 -125
- package/.vs/CopilotSnapshots/AD2203F1B9FECE44BB6D5DC5D83E87AA/state.mpack +0 -1
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/89CF3F527D0687479D14274E8CDF3DFF/1CF9939611B0D194AC81951A171DF046 +0 -30
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/89CF3F527D0687479D14274E8CDF3DFF/BA5D2B145A59265D63FA3B3584344B02 +0 -158
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/E495EBF64DC77A4BBD470B92DB0391C4/1CF9939611B0D194AC81951A171DF046 +0 -30
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/E495EBF64DC77A4BBD470B92DB0391C4/BA5D2B145A59265D63FA3B3584344B02 +0 -67
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/state.mpack +0 -1
- package/.vs/CopilotSnapshots/AF947096A34634478C5D084B8442CD81/1FCDCC65B992954DB78BD1F46892312B/44EB81A1663981E3F52FFFECE3A2918E +0 -143
- package/.vs/CopilotSnapshots/AF947096A34634478C5D084B8442CD81/1FCDCC65B992954DB78BD1F46892312B/E602628EF6D764C2C267810C92906DBA +0 -253
- package/.vs/CopilotSnapshots/AF947096A34634478C5D084B8442CD81/state.mpack +0 -1
- package/.vs/CopilotSnapshots/B1DED422A45D5740BA4EE745C04B2B0B/226F822A22D6BD44BCF56BAA47FA274C/EF71788BE39818EEA3F0164DC15E1BD7 +0 -174
- package/.vs/CopilotSnapshots/B1DED422A45D5740BA4EE745C04B2B0B/state.mpack +0 -1
- package/.vs/CopilotSnapshots/B5DD5E50ACD0FD4998564F0FDE7FAEE0/97908D1D83AD2D4EA7082388DE07CBB4/44EB81A1663981E3F52FFFECE3A2918E +0 -148
- package/.vs/CopilotSnapshots/B5DD5E50ACD0FD4998564F0FDE7FAEE0/state.mpack +0 -1
- package/.vs/CopilotSnapshots/B8ADCAC0C19DB14FB8388BA59A86BC74/7ED3F1557FD7BE4DBEAF9B59FD442925/44EB81A1663981E3F52FFFECE3A2918E +0 -152
- package/.vs/CopilotSnapshots/B8ADCAC0C19DB14FB8388BA59A86BC74/state.mpack +0 -1
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/0130610530354840BB06BF4F4E744242/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -138
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/5F1C58CEFBAF1B4E80C4CF38B83A0A5F/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -129
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/BDC3D099FCCCC147848630670EED45CF/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -139
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/D9E2B1CDD1E2BB468E0703BEF6706FF6/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -139
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C1E2C1A9C1DCFA46B1D5F1C6F36A152D/BC91C0FD38D8694BB992A8DEC1833670/148399016C7971F5592DAADBB9523118 +0 -120
- package/.vs/CopilotSnapshots/C1E2C1A9C1DCFA46B1D5F1C6F36A152D/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C4D8E85893425E4F86F18850F5CA5C08/6C0950E97063C547A72D737E618436B0/1CF9939611B0D194AC81951A171DF046 +0 -9
- package/.vs/CopilotSnapshots/C4D8E85893425E4F86F18850F5CA5C08/6C0950E97063C547A72D737E618436B0/DFF70C60F68ECD9A4E4C3C74E4CC4DEE +0 -84
- package/.vs/CopilotSnapshots/C4D8E85893425E4F86F18850F5CA5C08/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/03EA1376F04C0D468FD0851119159D34/44EB81A1663981E3F52FFFECE3A2918E +0 -148
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/03EA1376F04C0D468FD0851119159D34/E602628EF6D764C2C267810C92906DBA +0 -265
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/6887503C15557349842029E58C9C0D11/44EB81A1663981E3F52FFFECE3A2918E +0 -152
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/6887503C15557349842029E58C9C0D11/E602628EF6D764C2C267810C92906DBA +0 -265
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C7190BBC8D95D44F9CF8E65E3E8C9CFD/4B6D07592F8EDC4AA3FF742B1F9531CC/1B80EB15A2FEBEC11C8210C5461F8DB7 +0 -43
- package/.vs/CopilotSnapshots/C7190BBC8D95D44F9CF8E65E3E8C9CFD/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/2071ADB146D8F7499419123B2A595A41/03E00441128DC70FFEA043158417AC9A +0 -15
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/6ECBF707FE2A88418EA1649CE46068D5/03E00441128DC70FFEA043158417AC9A +0 -1
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/70BAB1D82B755F47A2351CA905ACC0F1/03E00441128DC70FFEA043158417AC9A +0 -49
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/99DDFADAEC5CA14D92CC470523A11743/03E00441128DC70FFEA043158417AC9A +0 -39
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/state.mpack +0 -1
- package/.vs/CopilotSnapshots/D533D78C39683A4188A2CEC902BC03CD/2445F4111C26EB4DA5404F930E140F56/840203FFA9CCF5B33DFD5C7CC5B13527 +0 -6
- package/.vs/CopilotSnapshots/D533D78C39683A4188A2CEC902BC03CD/2445F4111C26EB4DA5404F930E140F56/C27E5C1787B7957BF6F0C3D417890141 +0 -1
- package/.vs/CopilotSnapshots/D533D78C39683A4188A2CEC902BC03CD/state.mpack +0 -1
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/5FC7C36C7769414C80BFF27A07BB5063/BE400B34D9700403D2BA3A1AA6B1EF1D +0 -15
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/A4DD9B92084D8E48A95435EDB2B14545/86848C7099AD75EE4E8F10E066F49671 +0 -15
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/A4DD9B92084D8E48A95435EDB2B14545/BE400B34D9700403D2BA3A1AA6B1EF1D +0 -15
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/state.mpack +0 -1
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/5F324CB20D1B5045A13090FA9D177B74/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/5F324CB20D1B5045A13090FA9D177B74/B692C85119711C76235AA5D78F9F3818 +0 -73
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/5F324CB20D1B5045A13090FA9D177B74/EF71788BE39818EEA3F0164DC15E1BD7 +0 -182
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/C1287B2893D30D40A46C30DC2CE05178/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/C1287B2893D30D40A46C30DC2CE05178/B692C85119711C76235AA5D78F9F3818 +0 -98
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/CA6304DFE7764A4C87ACE5816CDB7CD9/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/CA6304DFE7764A4C87ACE5816CDB7CD9/B692C85119711C76235AA5D78F9F3818 +0 -21
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/CA6304DFE7764A4C87ACE5816CDB7CD9/EF71788BE39818EEA3F0164DC15E1BD7 +0 -176
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/state.mpack +0 -1
- package/.vs/VSWorkspaceState.json +0 -6
- package/.vs/slnx.sqlite +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.433.20974/CodeChunks.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.433.20974/SemanticSymbols.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.439.2385/CodeChunks.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.439.2385/SemanticSymbols.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.441.19478/CodeChunks.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.441.19478/SemanticSymbols.db +0 -0
- package/.vs/ts-sample/FileContentIndex/2fa9d8cc-9158-496d-aa9b-3a471d46a157.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/5530f45b-244e-4271-b3e3-d8250f03da64.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/75f95b5d-c8f7-49ca-a3d7-d1d8f63db437.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/abb2aeeb-f62a-4ca7-bfbf-7a1eada625a5.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/fc749b54-0f95-45f6-ac75-a8ab3409a5ce.vsidx +0 -0
- package/.vs/ts-sample/config/applicationhost.config +0 -1026
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/0901b413-5d87-4b43-b248-80356492be7e +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/0f61a76a-b21f-46b7-821e-54c28a8d109b +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/101aef14-dd28-4de3-b2eb-e0b26d587b3a +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/22d4deb1-5da4-4057-ba4e-e745c04b2b0b +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/2a76030d-a09e-48cb-85f2-114567f23f93 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/2c6d08ca-cb98-4233-8f7c-011c3b409234 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/338dc290-9b2f-4929-8101-26139fca2640 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/34c9ac3b-2061-4d82-b300-06e353477163 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/3c01b107-5c38-4156-a5f5-100e0751210b +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/489ee702-f5df-4723-87cb-618de990598a +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/4ccac3c5-b137-474a-b6bc-753d09f69117 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/505eddb5-d0ac-49fd-9856-4f0fde7faee0 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/58e8d8c4-4293-4f5e-86f1-8850f5ca5c08 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/5dbafa3e-3015-4c80-a04c-606f5efddc38 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/5f29f527-e43a-4661-b60e-ff772041f413 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/6248dfd7-38ae-4fa6-9176-2fdc0694c3e8 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/66fcbd64-32dc-436d-80e6-7435a1a3ecf1 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/6f9ad733-d555-4d2c-b073-eb6a1aada347 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/715aaadc-c88e-4630-85d1-4c52356d80e0 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/71ab164c-01dc-468c-a734-fbf0bf4aedd9 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/752ee299-aec8-4ddf-b3a6-68a9adf0bc43 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/752ff6dc-741b-4286-a0bf-5d5125ab6769 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/7b50f25e-2a00-4ec1-a991-043c37c36551 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/7f41e050-2ead-4d52-887c-b5763c2fb7b4 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/85b50c9e-8895-4085-89c1-934ad2704744 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/8b2f308d-46ae-4ef5-a82a-e1ded1a5d240 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/8b5f907f-0dac-49ad-bd50-7ca45c569afd +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/8cd733d5-6839-413a-88a2-cec902bc03cd +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/90685124-4085-46d6-acbd-4fde8d6dd2d4 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/96129dc7-1749-4fe4-9a5b-b9d8fa725a0c +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/967094af-46a3-4734-8c5d-084b8442cd81 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/a29ed9a6-81d3-459f-ad80-87d7487f9318 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/a9c1e2c1-dcc1-46fa-b1d5-f1c6f36a152d +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/badc76f4-d284-4b6c-94e9-abdbc74de540 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/bb50ffbd-a9c1-4737-a000-1969c3bd195f +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/bc0b19c7-958d-4fd4-9cf8-e65e3e8c9cfd +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c02d1a89-fae5-4c42-b8bd-da4fe26ed372 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c0caadb8-9dc1-4fb1-b838-8ba59a86bc74 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c250c9ae-d2fa-4701-aee8-e325e2ca0a78 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c31db710-c1c4-4ec0-8602-fa06d3925f98 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c7d99284-d9a2-4d51-b8a6-9d304b48bf3c +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/ddd1fab4-4016-4cfc-bf9f-f4a85bdfc112 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/f10322ad-feb9-44ce-bb6d-5dc5d83e87aa +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/f7778ca7-37a2-4d70-95bc-fe1bbc39fb0f +0 -0
- package/.vs/ts-sample/v17/.suo +0 -0
- package/.vs/ts-sample/v17/.wsuo +0 -0
- package/.vs/ts-sample/v17/DocumentLayout.backup.json +0 -425
- package/.vs/ts-sample/v17/DocumentLayout.json +0 -423
- package/.vs/ts-sample/v17/TestStore/0/000.testlog +0 -0
- package/.vs/ts-sample/v17/TestStore/0/testlog.manifest +0 -0
@@ -0,0 +1,43 @@
|
|
1
|
+
/**
|
2
|
+
* Utilities for string operations during tokenization
|
3
|
+
*/
|
4
|
+
export declare class StringUtils {
|
5
|
+
/**
|
6
|
+
* Creates a visual representation of an error position in text
|
7
|
+
* @param input The input text
|
8
|
+
* @param errPosition The error position
|
9
|
+
* @returns A string with a caret pointing to the error position
|
10
|
+
*/
|
11
|
+
static getDebugPositionInfo(input: string, errPosition: number): string;
|
12
|
+
/**
|
13
|
+
* Skip white space characters.
|
14
|
+
*/
|
15
|
+
private static skipWhiteSpace;
|
16
|
+
/**
|
17
|
+
* Skip line comment.
|
18
|
+
*/
|
19
|
+
private static readLineComment;
|
20
|
+
/**
|
21
|
+
* Skip block comment.
|
22
|
+
*/
|
23
|
+
private static readBlockComment;
|
24
|
+
/**
|
25
|
+
* Skip white space characters and SQL comments.
|
26
|
+
* @returns Object containing the new position and an array of skipped comments
|
27
|
+
*/
|
28
|
+
static readWhiteSpaceAndComment(input: string, position: number): {
|
29
|
+
position: number;
|
30
|
+
lines: string[];
|
31
|
+
};
|
32
|
+
/**
|
33
|
+
* Read a regular identifier.
|
34
|
+
*/
|
35
|
+
static readRegularIdentifier(input: string, position: number): {
|
36
|
+
identifier: string;
|
37
|
+
newPosition: number;
|
38
|
+
};
|
39
|
+
static tryReadRegularIdentifier(input: string, position: number): {
|
40
|
+
identifier: string;
|
41
|
+
newPosition: number;
|
42
|
+
} | null;
|
43
|
+
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "rawsql-ts",
|
3
|
-
"version": "0.1.0-beta.
|
3
|
+
"version": "0.1.0-beta.7",
|
4
4
|
"description": "[beta]High-performance SQL parser and AST analyzer written in TypeScript. Provides fast parsing and advanced transformation capabilities.",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"types": "src/index.d.ts",
|
@@ -32,5 +32,9 @@
|
|
32
32
|
"ts-node": "^10.9.2",
|
33
33
|
"typescript": "^5.8.2",
|
34
34
|
"vitest": "^1.5.2"
|
35
|
-
}
|
35
|
+
},
|
36
|
+
"files": [
|
37
|
+
"dist",
|
38
|
+
"src/index.d.ts"
|
39
|
+
]
|
36
40
|
}
|
package/src/index.d.ts
ADDED
@@ -0,0 +1,378 @@
|
|
1
|
+
// Type definitions for rawsql-ts
|
2
|
+
// Project: rawsql-ts
|
3
|
+
|
4
|
+
/**
|
5
|
+
* Represents a parser for SQL SELECT queries.
|
6
|
+
*/
|
7
|
+
export declare class SelectQueryParser {
|
8
|
+
/**
|
9
|
+
* Parses a SQL string and returns a SelectQuery object.
|
10
|
+
* @param sql The SQL query string.
|
11
|
+
*/
|
12
|
+
static parseFromText(sql: string): SelectQuery;
|
13
|
+
}
|
14
|
+
|
15
|
+
/**
|
16
|
+
* Represents a binary SELECT query (e.g., UNION, INTERSECT, EXCEPT).
|
17
|
+
*/
|
18
|
+
export declare class BinarySelectQuery {
|
19
|
+
static kind: symbol;
|
20
|
+
left: SelectQuery;
|
21
|
+
operator: RawString;
|
22
|
+
right: SelectQuery;
|
23
|
+
constructor(left: SelectQuery, operator: string, right: SelectQuery);
|
24
|
+
union(query: SelectQuery): BinarySelectQuery;
|
25
|
+
// ...other methods...
|
26
|
+
}
|
27
|
+
|
28
|
+
/**
|
29
|
+
* Represents a SELECT query (simple, binary, or values).
|
30
|
+
*/
|
31
|
+
export type SelectQuery = SimpleSelectQuery | BinarySelectQuery | ValuesQuery;
|
32
|
+
|
33
|
+
/**
|
34
|
+
* Represents a value component in SQL (column, literal, etc).
|
35
|
+
*/
|
36
|
+
export type ValueComponent = ValueList |
|
37
|
+
ColumnReference |
|
38
|
+
FunctionCall |
|
39
|
+
UnaryExpression |
|
40
|
+
BinaryExpression |
|
41
|
+
LiteralValue |
|
42
|
+
ParameterExpression |
|
43
|
+
SwitchCaseArgument |
|
44
|
+
CaseKeyValuePair |
|
45
|
+
RawString |
|
46
|
+
IdentifierString |
|
47
|
+
ParenExpression |
|
48
|
+
CastExpression |
|
49
|
+
CaseExpression |
|
50
|
+
ArrayExpression |
|
51
|
+
BetweenExpression |
|
52
|
+
InlineQuery |
|
53
|
+
StringSpecifierExpression |
|
54
|
+
TypeValue |
|
55
|
+
TupleExpression;
|
56
|
+
|
57
|
+
export declare class InlineQuery {
|
58
|
+
static kind: symbol;
|
59
|
+
selectQuery: SelectQuery;
|
60
|
+
constructor(selectQuery: SelectQuery);
|
61
|
+
}
|
62
|
+
|
63
|
+
export declare class ValueList {
|
64
|
+
static kind: symbol;
|
65
|
+
values: ValueComponent[];
|
66
|
+
constructor(values: ValueComponent[]);
|
67
|
+
}
|
68
|
+
|
69
|
+
/**
|
70
|
+
* Represents a VALUES query.
|
71
|
+
*/
|
72
|
+
export declare class ValuesQuery {
|
73
|
+
static kind: symbol;
|
74
|
+
tuples: TupleExpression[];
|
75
|
+
constructor(tuples: TupleExpression[]);
|
76
|
+
}
|
77
|
+
|
78
|
+
/**
|
79
|
+
* Collects CTEs from a query.
|
80
|
+
*/
|
81
|
+
export declare class CTECollector {
|
82
|
+
// Main method to collect CTEs from a query
|
83
|
+
collect(query: SelectQuery): any;
|
84
|
+
}
|
85
|
+
|
86
|
+
/**
|
87
|
+
* Normalizes CTEs in a query.
|
88
|
+
*/
|
89
|
+
export declare class CTENormalizer {
|
90
|
+
constructor();
|
91
|
+
normalize(query: SelectQuery): SelectQuery;
|
92
|
+
}
|
93
|
+
|
94
|
+
/**
|
95
|
+
* Formats a query object into a SQL string.
|
96
|
+
*/
|
97
|
+
export declare class Formatter {
|
98
|
+
constructor();
|
99
|
+
visit(query: any): string;
|
100
|
+
}
|
101
|
+
|
102
|
+
/**
|
103
|
+
* Normalizes queries (e.g., flattens unions).
|
104
|
+
*/
|
105
|
+
export declare class QueryNormalizer {
|
106
|
+
normalize(query: SelectQuery): SimpleSelectQuery;
|
107
|
+
}
|
108
|
+
|
109
|
+
/**
|
110
|
+
* Collects select values from a query.
|
111
|
+
*/
|
112
|
+
export declare class SelectValueCollector {
|
113
|
+
constructor(tableColumnResolver?: (tableName: string) => string[], initialCommonTables?: any[] | null);
|
114
|
+
// ...other methods...
|
115
|
+
}
|
116
|
+
|
117
|
+
/**
|
118
|
+
* Collects selectable columns from a query.
|
119
|
+
*/
|
120
|
+
export declare class SelectableColumnCollector {
|
121
|
+
constructor(tableColumnResolver?: (tableName: string) => string[]);
|
122
|
+
// ...other methods...
|
123
|
+
}
|
124
|
+
|
125
|
+
/**
|
126
|
+
* Collects table sources from a query.
|
127
|
+
*/
|
128
|
+
export declare class TableSourceCollector {
|
129
|
+
constructor(selectableOnly?: boolean);
|
130
|
+
// ...other methods...
|
131
|
+
}
|
132
|
+
|
133
|
+
/**
|
134
|
+
* Finds upstream select queries.
|
135
|
+
*/
|
136
|
+
export declare class UpstreamSelectQueryFinder {
|
137
|
+
constructor(tableColumnResolver?: (tableName: string) => string[]);
|
138
|
+
find(query: SelectQuery, columnNames: string[]): SelectQuery[];
|
139
|
+
}
|
140
|
+
|
141
|
+
/**
|
142
|
+
* Represents a simple SELECT query in SQL.
|
143
|
+
*/
|
144
|
+
export declare class SimpleSelectQuery {
|
145
|
+
static kind: symbol;
|
146
|
+
WithClause: WithClause | null;
|
147
|
+
selectClause: SelectClause;
|
148
|
+
fromClause: FromClause | null;
|
149
|
+
whereClause: WhereClause | null;
|
150
|
+
groupByClause: GroupByClause | null;
|
151
|
+
havingClause: HavingClause | null;
|
152
|
+
orderByClause: OrderByClause | null;
|
153
|
+
windowFrameClause: WindowFrameClause | null;
|
154
|
+
rowLimitClause: LimitClause | null;
|
155
|
+
forClause: ForClause | null;
|
156
|
+
constructor(
|
157
|
+
withClause: WithClause | null,
|
158
|
+
selectClause: SelectClause,
|
159
|
+
fromClause: FromClause | null,
|
160
|
+
whereClause: WhereClause | null,
|
161
|
+
groupByClause: GroupByClause | null,
|
162
|
+
havingClause: HavingClause | null,
|
163
|
+
orderByClause: OrderByClause | null,
|
164
|
+
windowFrameClause: WindowFrameClause | null,
|
165
|
+
rowLimitClause: LimitClause | null,
|
166
|
+
forClause: ForClause | null
|
167
|
+
);
|
168
|
+
}
|
169
|
+
|
170
|
+
export declare class RawString {
|
171
|
+
static kind: symbol;
|
172
|
+
value: string;
|
173
|
+
constructor(value: string);
|
174
|
+
}
|
175
|
+
|
176
|
+
export declare class IdentifierString {
|
177
|
+
static kind: symbol;
|
178
|
+
name: string;
|
179
|
+
constructor(alias: string);
|
180
|
+
}
|
181
|
+
|
182
|
+
export declare class TupleExpression {
|
183
|
+
static kind: symbol;
|
184
|
+
values: ValueComponent[];
|
185
|
+
constructor(values: ValueComponent[]);
|
186
|
+
}
|
187
|
+
|
188
|
+
export declare class LiteralValue {
|
189
|
+
static kind: symbol;
|
190
|
+
value: string | number | boolean | null;
|
191
|
+
constructor(value: string | number | boolean | null);
|
192
|
+
}
|
193
|
+
|
194
|
+
export declare class UnaryExpression {
|
195
|
+
static kind: symbol;
|
196
|
+
operator: RawString;
|
197
|
+
expression: ValueComponent;
|
198
|
+
constructor(operator: string, expression: ValueComponent);
|
199
|
+
}
|
200
|
+
|
201
|
+
export declare class BinaryExpression {
|
202
|
+
static kind: symbol;
|
203
|
+
left: ValueComponent;
|
204
|
+
operator: RawString;
|
205
|
+
right: ValueComponent;
|
206
|
+
constructor(left: ValueComponent, operator: string, right: ValueComponent);
|
207
|
+
}
|
208
|
+
|
209
|
+
export declare class ParameterExpression {
|
210
|
+
static kind: symbol;
|
211
|
+
name: RawString;
|
212
|
+
constructor(name: string);
|
213
|
+
}
|
214
|
+
|
215
|
+
export declare class SwitchCaseArgument {
|
216
|
+
static kind: symbol;
|
217
|
+
cases: CaseKeyValuePair[];
|
218
|
+
elseValue: ValueComponent | null;
|
219
|
+
constructor(cases: CaseKeyValuePair[], elseValue?: ValueComponent | null);
|
220
|
+
}
|
221
|
+
|
222
|
+
export declare class CaseKeyValuePair {
|
223
|
+
static kind: symbol;
|
224
|
+
key: ValueComponent;
|
225
|
+
value: ValueComponent;
|
226
|
+
constructor(key: ValueComponent, value: ValueComponent);
|
227
|
+
}
|
228
|
+
|
229
|
+
export declare class ParenExpression {
|
230
|
+
static kind: symbol;
|
231
|
+
expression: ValueComponent;
|
232
|
+
constructor(expression: ValueComponent);
|
233
|
+
}
|
234
|
+
|
235
|
+
export declare class CastExpression {
|
236
|
+
static kind: symbol;
|
237
|
+
input: ValueComponent;
|
238
|
+
castType: TypeValue;
|
239
|
+
constructor(input: ValueComponent, castType: TypeValue);
|
240
|
+
}
|
241
|
+
|
242
|
+
export declare class CaseExpression {
|
243
|
+
static kind: symbol;
|
244
|
+
condition: ValueComponent | null;
|
245
|
+
switchCase: SwitchCaseArgument;
|
246
|
+
constructor(condition: ValueComponent | null, switchCase: SwitchCaseArgument);
|
247
|
+
}
|
248
|
+
|
249
|
+
export declare class ArrayExpression {
|
250
|
+
static kind: symbol;
|
251
|
+
expression: ValueComponent;
|
252
|
+
constructor(expression: ValueComponent);
|
253
|
+
}
|
254
|
+
|
255
|
+
export declare class BetweenExpression {
|
256
|
+
static kind: symbol;
|
257
|
+
expression: ValueComponent;
|
258
|
+
lower: ValueComponent;
|
259
|
+
upper: ValueComponent;
|
260
|
+
negated: boolean;
|
261
|
+
constructor(expression: ValueComponent, lower: ValueComponent, upper: ValueComponent, negated: boolean);
|
262
|
+
}
|
263
|
+
|
264
|
+
export declare class StringSpecifierExpression {
|
265
|
+
static kind: symbol;
|
266
|
+
specifier: RawString;
|
267
|
+
value: ValueComponent;
|
268
|
+
constructor(specifier: string, value: string);
|
269
|
+
}
|
270
|
+
|
271
|
+
export declare class TypeValue {
|
272
|
+
static kind: symbol;
|
273
|
+
type: RawString;
|
274
|
+
argument: ValueComponent | null;
|
275
|
+
constructor(type: string, argument?: ValueComponent | null);
|
276
|
+
}
|
277
|
+
|
278
|
+
export declare class ColumnReference {
|
279
|
+
static kind: symbol;
|
280
|
+
namespaces: IdentifierString[] | null;
|
281
|
+
column: IdentifierString;
|
282
|
+
constructor(namespaces: string[] | null, column: string);
|
283
|
+
}
|
284
|
+
|
285
|
+
export declare class FunctionCall {
|
286
|
+
static kind: symbol;
|
287
|
+
name: RawString;
|
288
|
+
argument: ValueComponent | null;
|
289
|
+
over: any | null;
|
290
|
+
constructor(name: string, argument: ValueComponent | null, over: any | null);
|
291
|
+
}
|
292
|
+
|
293
|
+
export declare class SelectClause {
|
294
|
+
static kind: symbol;
|
295
|
+
items: SelectComponent[];
|
296
|
+
distinct: DistinctComponent | null;
|
297
|
+
constructor(items: SelectComponent[], distinct?: DistinctComponent | null);
|
298
|
+
}
|
299
|
+
|
300
|
+
export declare type SelectComponent = SelectItem | ValueComponent;
|
301
|
+
|
302
|
+
export declare class SelectItem {
|
303
|
+
static kind: symbol;
|
304
|
+
value: ValueComponent;
|
305
|
+
identifier: IdentifierString;
|
306
|
+
constructor(value: ValueComponent, name: string);
|
307
|
+
}
|
308
|
+
|
309
|
+
export declare type DistinctComponent = Distinct | DistinctOn;
|
310
|
+
|
311
|
+
export declare class Distinct {
|
312
|
+
static kind: symbol;
|
313
|
+
constructor();
|
314
|
+
}
|
315
|
+
|
316
|
+
export declare class DistinctOn {
|
317
|
+
static kind: symbol;
|
318
|
+
value: ValueComponent;
|
319
|
+
constructor(value: ValueComponent);
|
320
|
+
}
|
321
|
+
|
322
|
+
export declare class WhereClause {
|
323
|
+
static kind: symbol;
|
324
|
+
condition: ValueComponent;
|
325
|
+
constructor(condition: ValueComponent);
|
326
|
+
}
|
327
|
+
|
328
|
+
export declare class WindowFrameClause {
|
329
|
+
static kind: symbol;
|
330
|
+
name: IdentifierString;
|
331
|
+
expression: any;
|
332
|
+
constructor(name: string, expression: any);
|
333
|
+
}
|
334
|
+
|
335
|
+
export declare class FromClause {
|
336
|
+
static kind: symbol;
|
337
|
+
source: any;
|
338
|
+
joins: any[] | null;
|
339
|
+
constructor(source: any, joins?: any[] | null);
|
340
|
+
}
|
341
|
+
|
342
|
+
export declare class GroupByClause {
|
343
|
+
static kind: symbol;
|
344
|
+
grouping: ValueComponent[];
|
345
|
+
constructor(grouping: ValueComponent[]);
|
346
|
+
}
|
347
|
+
|
348
|
+
export declare class HavingClause {
|
349
|
+
static kind: symbol;
|
350
|
+
condition: ValueComponent;
|
351
|
+
constructor(condition: ValueComponent);
|
352
|
+
}
|
353
|
+
|
354
|
+
export declare class OrderByClause {
|
355
|
+
static kind: symbol;
|
356
|
+
order: any[];
|
357
|
+
constructor(order: any[]);
|
358
|
+
}
|
359
|
+
|
360
|
+
export declare class LimitClause {
|
361
|
+
static kind: symbol;
|
362
|
+
limit: ValueComponent;
|
363
|
+
offset?: ValueComponent;
|
364
|
+
constructor(limit: ValueComponent, offset?: ValueComponent);
|
365
|
+
}
|
366
|
+
|
367
|
+
export declare class ForClause {
|
368
|
+
static kind: symbol;
|
369
|
+
lockMode: string;
|
370
|
+
constructor(lockMode: string);
|
371
|
+
}
|
372
|
+
|
373
|
+
export declare class WithClause {
|
374
|
+
static kind: symbol;
|
375
|
+
tables: any[];
|
376
|
+
recursive: boolean;
|
377
|
+
constructor(tables: any[], recursive?: boolean);
|
378
|
+
}
|
@@ -1 +0,0 @@
|
|
1
|
-
|
@@ -1,86 +0,0 @@
|
|
1
|
-
import { Lexeme } from '../models/Lexeme';
|
2
|
-
import { TokenType } from '../enums/tokenType';
|
3
|
-
import { StringUtils } from '../utils/stringUtils';
|
4
|
-
|
5
|
-
/**
|
6
|
-
* Base class for token readers
|
7
|
-
*/
|
8
|
-
export abstract class BaseTokenReader {
|
9
|
-
protected input: string;
|
10
|
-
protected position: number;
|
11
|
-
|
12
|
-
constructor(input: string, position: number) {
|
13
|
-
this.input = input;
|
14
|
-
this.position = position;
|
15
|
-
}
|
16
|
-
|
17
|
-
/**
|
18
|
-
* Get the current position in the input
|
19
|
-
*/
|
20
|
-
public getPosition(): number {
|
21
|
-
return this.position;
|
22
|
-
}
|
23
|
-
|
24
|
-
/**
|
25
|
-
* Set the position in the input
|
26
|
-
*/
|
27
|
-
public setPosition(position: number): void {
|
28
|
-
this.position = position;
|
29
|
-
}
|
30
|
-
|
31
|
-
/**
|
32
|
-
* Check if we've reached the end of input
|
33
|
-
*/
|
34
|
-
protected isEndOfInput(shift: number = 0): boolean {
|
35
|
-
return this.position + shift >= this.input.length;
|
36
|
-
}
|
37
|
-
|
38
|
-
/**
|
39
|
-
* Check if we can read more characters
|
40
|
-
*/
|
41
|
-
protected canRead(shift: number = 0): boolean {
|
42
|
-
return !this.isEndOfInput(shift);
|
43
|
-
}
|
44
|
-
|
45
|
-
/**
|
46
|
-
* Read an expected character
|
47
|
-
*/
|
48
|
-
protected read(expectChar: string): string {
|
49
|
-
if (this.isEndOfInput()) {
|
50
|
-
throw new Error(`Unexpected character. expect: ${expectChar}, actual: EndOfInput, position: ${this.position}`);
|
51
|
-
}
|
52
|
-
|
53
|
-
if (this.input[this.position] !== expectChar) {
|
54
|
-
throw new Error(`Unexpected character. expect: ${expectChar}, actual: ${this.input[this.position]}, position: ${this.position}`);
|
55
|
-
}
|
56
|
-
|
57
|
-
const char = this.input[this.position];
|
58
|
-
this.position++;
|
59
|
-
return char;
|
60
|
-
}
|
61
|
-
|
62
|
-
/**
|
63
|
-
* Create a lexeme with the specified type and value
|
64
|
-
*/
|
65
|
-
protected createLexeme(type: TokenType, value: string, command?: string): Lexeme {
|
66
|
-
return {
|
67
|
-
type,
|
68
|
-
value,
|
69
|
-
command
|
70
|
-
};
|
71
|
-
}
|
72
|
-
|
73
|
-
/**
|
74
|
-
* Get debug info for error reporting
|
75
|
-
*/
|
76
|
-
protected getDebugPositionInfo(errPosition: number): string {
|
77
|
-
return StringUtils.getDebugPositionInfo(this.input, errPosition);
|
78
|
-
}
|
79
|
-
|
80
|
-
/**
|
81
|
-
* Try to read a token from the current position
|
82
|
-
* @param previous The previous token, if available
|
83
|
-
* @returns The read token or null if no token could be read
|
84
|
-
*/
|
85
|
-
public abstract tryRead(previous: Lexeme | null): Lexeme | null;
|
86
|
-
}
|
@@ -1,34 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Fast character classification utilities for SQL tokenization
|
3
|
-
*/
|
4
|
-
export class CharLookupTable {
|
5
|
-
private static readonly WHITESPACE = new Set([' ', '\t', '\r', '\n']);
|
6
|
-
private static readonly DIGITS = new Set(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']);
|
7
|
-
private static readonly HEX_CHARS = new Set([
|
8
|
-
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
|
9
|
-
'a', 'b', 'c', 'd', 'e', 'f',
|
10
|
-
'A', 'B', 'C', 'D', 'E', 'F'
|
11
|
-
]);
|
12
|
-
private static readonly DELIMITERS = new Set([' ', '.', ',', '(', ')', '+', '-', '*', '/']);
|
13
|
-
private static readonly NAMED_PARAMETER_PREFIX = new Set(['@', ':', '$']);
|
14
|
-
|
15
|
-
public static isWhitespace(char: string): boolean {
|
16
|
-
return CharLookupTable.WHITESPACE.has(char);
|
17
|
-
}
|
18
|
-
|
19
|
-
public static isDigit(char: string): boolean {
|
20
|
-
return CharLookupTable.DIGITS.has(char);
|
21
|
-
}
|
22
|
-
|
23
|
-
public static isHexChar(char: string): boolean {
|
24
|
-
return CharLookupTable.HEX_CHARS.has(char);
|
25
|
-
}
|
26
|
-
|
27
|
-
public static isDelimiter(char: string): boolean {
|
28
|
-
return CharLookupTable.DELIMITERS.has(char);
|
29
|
-
}
|
30
|
-
|
31
|
-
public static isNamedParameterPrefix(char: string): boolean {
|
32
|
-
return CharLookupTable.NAMED_PARAMETER_PREFIX.has(char);
|
33
|
-
}
|
34
|
-
}
|