rawsql-ts 0.1.0-beta.5 → 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 +7 -3
- 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,10 @@
|
|
1
|
+
import { SqlComponent } from "./SqlComponent";
|
2
|
+
import { TupleExpression } from "./ValueComponent";
|
3
|
+
/**
|
4
|
+
* Represents a VALUES query in SQL.
|
5
|
+
*/
|
6
|
+
export declare class ValuesQuery extends SqlComponent {
|
7
|
+
static kind: symbol;
|
8
|
+
tuples: TupleExpression[];
|
9
|
+
constructor(tuples: TupleExpression[]);
|
10
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { ValueComponent } from "../models/ValueComponent";
|
3
|
+
export declare class CommandExpressionParser {
|
4
|
+
static parse(lexemes: Lexeme[], index: number): {
|
5
|
+
value: ValueComponent;
|
6
|
+
newIndex: number;
|
7
|
+
};
|
8
|
+
private static parseModifierUnaryExpression;
|
9
|
+
private static parseCaseExpression;
|
10
|
+
private static parseCaseWhenExpression;
|
11
|
+
private static parseSwitchCaseArgument;
|
12
|
+
private static isCommandWithValue;
|
13
|
+
private static parseCaseConditionValuePair;
|
14
|
+
private static parseArrayExpression;
|
15
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { CommonTable } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class CommonTableParser {
|
4
|
+
static parseFromText(query: string): CommonTable;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: CommonTable;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { ForClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class ForClauseParser {
|
4
|
+
static parseFromText(query: string): ForClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: ForClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { FromClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class FromClauseParser {
|
4
|
+
static parseFromText(query: string): FromClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: FromClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { ValueComponent, TypeValue } from "../models/ValueComponent";
|
3
|
+
export declare class FunctionExpressionParser {
|
4
|
+
static parse(lexemes: Lexeme[], index: number): {
|
5
|
+
value: ValueComponent;
|
6
|
+
newIndex: number;
|
7
|
+
};
|
8
|
+
static tryParseBinaryExpression(lexemes: Lexeme[], index: number, left: ValueComponent, allowAndOperator?: boolean): {
|
9
|
+
value: ValueComponent;
|
10
|
+
newIndex: number;
|
11
|
+
} | null;
|
12
|
+
static parseBetweenExpression(lexemes: Lexeme[], index: number, value: ValueComponent, negated: boolean): {
|
13
|
+
value: ValueComponent;
|
14
|
+
newIndex: number;
|
15
|
+
};
|
16
|
+
private static parseFunctionCall;
|
17
|
+
private static parseKeywordFunction;
|
18
|
+
static parseTypeValue(lexemes: Lexeme[], index: number): {
|
19
|
+
value: TypeValue;
|
20
|
+
newIndex: number;
|
21
|
+
};
|
22
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { GroupByClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class GroupByClauseParser {
|
4
|
+
static parseFromText(query: string): GroupByClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: GroupByClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static parseItem;
|
10
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { HavingClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class HavingClauseParser {
|
4
|
+
static parseFromText(query: string): HavingClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: HavingClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { JoinClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class JoinClauseParser {
|
4
|
+
static tryParse(lexemes: Lexeme[], index: number): {
|
5
|
+
value: JoinClause[];
|
6
|
+
newIndex: number;
|
7
|
+
} | null;
|
8
|
+
private static isJoinKeyword;
|
9
|
+
private static parseLateral;
|
10
|
+
private static isJoinCommand;
|
11
|
+
private static parseJoinClause;
|
12
|
+
private static tryParseJoinOn;
|
13
|
+
private static tryParseJoinUsing;
|
14
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { KeywordTrie } from "../models/KeywordTrie";
|
2
|
+
export declare enum KeywordMatchResult {
|
3
|
+
NotAKeyword = 0,// "Not recognized as a keyword"
|
4
|
+
PartialOnly = 1,// "Partial match (this will not be the end)"
|
5
|
+
PartialOrFinal = 2,// "Partial or complete match (it can stop here)"
|
6
|
+
Final = 3
|
7
|
+
}
|
8
|
+
export declare class KeywordParser {
|
9
|
+
private trie;
|
10
|
+
constructor(trie: KeywordTrie);
|
11
|
+
private isEndOfInput;
|
12
|
+
private canParse;
|
13
|
+
parse(input: string, position: number): {
|
14
|
+
keyword: string;
|
15
|
+
newPosition: number;
|
16
|
+
} | null;
|
17
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { LimitClause as LimitClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class LimitClauseParser {
|
4
|
+
static parseFromText(query: string): LimitClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: LimitClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { OrderByClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class OrderByClauseParser {
|
4
|
+
static parseFromText(query: string): OrderByClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: OrderByClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static parseItem;
|
10
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { OverExpression } from "../models/ValueComponent";
|
3
|
+
export declare class OverExpressionParser {
|
4
|
+
static parseFromText(query: string): OverExpression;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: OverExpression;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { PartitionByClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class PartitionByParser {
|
4
|
+
static parseFromText(query: string): PartitionByClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: PartitionByClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { SelectClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class SelectClauseParser {
|
4
|
+
static parseFromText(query: string): SelectClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: SelectClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static parseItem;
|
10
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { SelectQuery } from "../models/SelectQuery";
|
3
|
+
export declare class SelectQueryParser {
|
4
|
+
static parseFromText(query: string): SelectQuery;
|
5
|
+
private static unionCommandSet;
|
6
|
+
private static selectCommandSet;
|
7
|
+
static parse(lexemes: Lexeme[], index: number): {
|
8
|
+
value: SelectQuery;
|
9
|
+
newIndex: number;
|
10
|
+
};
|
11
|
+
private static parseSimpleSelectQuery;
|
12
|
+
private static parseValuesQuery;
|
13
|
+
}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { SourceAliasExpression } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class SourceAliasExpressionParser {
|
4
|
+
static parse(lexemes: Lexeme[], index: number): {
|
5
|
+
value: SourceAliasExpression;
|
6
|
+
newIndex: number;
|
7
|
+
};
|
8
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { SourceComponent } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class SourceParser {
|
4
|
+
static parseFromText(query: string): SourceComponent;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: SourceComponent;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static parseTableSource;
|
10
|
+
private static parseFunctionSource;
|
11
|
+
private static parseParenSource;
|
12
|
+
private static parseSubQuerySource;
|
13
|
+
}
|
@@ -0,0 +1,64 @@
|
|
1
|
+
import { Lexeme } from '../models/Lexeme';
|
2
|
+
/**
|
3
|
+
* Class responsible for tokenizing SQL input.
|
4
|
+
*/
|
5
|
+
export declare class SqlTokenizer {
|
6
|
+
/**
|
7
|
+
* The input SQL string to be tokenized.
|
8
|
+
*/
|
9
|
+
private input;
|
10
|
+
/**
|
11
|
+
* Current position within the input string.
|
12
|
+
*/
|
13
|
+
private position;
|
14
|
+
/**
|
15
|
+
* Manager responsible for handling token readers.
|
16
|
+
*/
|
17
|
+
private readerManager;
|
18
|
+
/**
|
19
|
+
* Initializes a new instance of the SqlTokenizer.
|
20
|
+
*/
|
21
|
+
constructor(input: string);
|
22
|
+
/**
|
23
|
+
* Checks if the end of input is reached.
|
24
|
+
*
|
25
|
+
* @param shift - The shift to consider beyond the current position.
|
26
|
+
* @returns True if the end of input is reached; otherwise, false.
|
27
|
+
*/
|
28
|
+
private isEndOfInput;
|
29
|
+
/**
|
30
|
+
* Checks if more input can be read.
|
31
|
+
*
|
32
|
+
* @param shift - The shift to consider beyond the current position.
|
33
|
+
* @returns True if more input can be read; otherwise, false.
|
34
|
+
*/
|
35
|
+
private canRead;
|
36
|
+
/**
|
37
|
+
* Reads the lexemes from the input string.
|
38
|
+
*
|
39
|
+
* @returns An array of lexemes extracted from the input string.
|
40
|
+
* @throws Error if an unexpected character is encountered.
|
41
|
+
*/
|
42
|
+
readLexmes(): Lexeme[];
|
43
|
+
/**
|
44
|
+
* Adds pending comments to the last token.
|
45
|
+
*/
|
46
|
+
private addPendingCommentsToLastToken;
|
47
|
+
/**
|
48
|
+
* Adds comments to the token.
|
49
|
+
*/
|
50
|
+
private addCommentsToToken;
|
51
|
+
/**
|
52
|
+
* Skips whitespace characters and SQL comments in the input.
|
53
|
+
*
|
54
|
+
* @remarks This method updates the position pointer.
|
55
|
+
*/
|
56
|
+
private readComment;
|
57
|
+
/**
|
58
|
+
* Gets debug information for error reporting.
|
59
|
+
*
|
60
|
+
* @param errPosition - The position where the error occurred.
|
61
|
+
* @returns A string containing the debug position information.
|
62
|
+
*/
|
63
|
+
private getDebugPositionInfo;
|
64
|
+
}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { ValueComponent } from "../models/ValueComponent";
|
3
|
+
export declare class StringSpecifierExpressionParser {
|
4
|
+
static parse(lexemes: Lexeme[], index: number): {
|
5
|
+
value: ValueComponent;
|
6
|
+
newIndex: number;
|
7
|
+
};
|
8
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { Lexeme, TokenType } from "../models/Lexeme";
|
2
|
+
import { ValueComponent } from "../models/ValueComponent";
|
3
|
+
export declare class ValueParser {
|
4
|
+
static parseFromText(query: string): ValueComponent;
|
5
|
+
static parse(lexemes: Lexeme[], index: number, allowAndOperator?: boolean): {
|
6
|
+
value: ValueComponent;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static parseItem;
|
10
|
+
static parseArgument(openToken: TokenType, closeToken: TokenType, lexemes: Lexeme[], index: number): {
|
11
|
+
value: ValueComponent;
|
12
|
+
newIndex: number;
|
13
|
+
};
|
14
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { ValuesQuery } from "../models/SelectQuery";
|
3
|
+
export declare class ValuesQueryParser {
|
4
|
+
static parseFromText(query: string): ValuesQuery;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: ValuesQuery;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static parseTuple;
|
10
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { WhereClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class WhereClauseParser {
|
4
|
+
static parseFromText(query: string): WhereClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: WhereClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { WindowFrameClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class WindowClauseParser {
|
4
|
+
static parseFromText(query: string): WindowFrameClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: WindowFrameClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { Lexeme } from "../models/Lexeme";
|
2
|
+
import { WindowFrameExpression } from "../models/ValueComponent";
|
3
|
+
export declare class WindowExpressionParser {
|
4
|
+
static parseFromText(query: string): WindowFrameExpression;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: WindowFrameExpression;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
private static isFrameTypeKeyword;
|
10
|
+
private static parseFrameSpec;
|
11
|
+
private static parseFrameBoundary;
|
12
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { WithClause } from "../models/Clause";
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
3
|
+
export declare class WithClauseParser {
|
4
|
+
static parseFromText(query: string): WithClause;
|
5
|
+
static parse(lexemes: Lexeme[], index: number): {
|
6
|
+
value: WithClause;
|
7
|
+
newIndex: number;
|
8
|
+
};
|
9
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
import { Lexeme, TokenType } from '../models/Lexeme';
|
2
|
+
/**
|
3
|
+
* Base class for token readers
|
4
|
+
*/
|
5
|
+
export declare abstract class BaseTokenReader {
|
6
|
+
protected input: string;
|
7
|
+
protected position: number;
|
8
|
+
constructor(input: string, position?: number);
|
9
|
+
/**
|
10
|
+
* Get the current position in the input
|
11
|
+
*/
|
12
|
+
getPosition(): number;
|
13
|
+
/**
|
14
|
+
* Set the position in the input
|
15
|
+
*/
|
16
|
+
setPosition(position: number): void;
|
17
|
+
/**
|
18
|
+
* Check if we've reached the end of input
|
19
|
+
*/
|
20
|
+
protected isEndOfInput(shift?: number): boolean;
|
21
|
+
/**
|
22
|
+
* Check if we can read more characters
|
23
|
+
*/
|
24
|
+
protected canRead(shift?: number): boolean;
|
25
|
+
/**
|
26
|
+
* Read an expected character
|
27
|
+
*/
|
28
|
+
protected read(expectChar: string): string;
|
29
|
+
/**
|
30
|
+
* Create a lexeme with the specified type and value
|
31
|
+
*/
|
32
|
+
protected createLexeme(type: TokenType, value: string, maybeType?: boolean | null, comments?: string[] | null): Lexeme;
|
33
|
+
/**
|
34
|
+
* Get debug info for error reporting
|
35
|
+
*/
|
36
|
+
protected getDebugPositionInfo(errPosition: number): string;
|
37
|
+
/**
|
38
|
+
* Try to read a token from the current position
|
39
|
+
* @param previous The previous token, if available
|
40
|
+
* @returns The read token or null if no token could be read
|
41
|
+
*/
|
42
|
+
abstract tryRead(previous: Lexeme | null): Lexeme | null;
|
43
|
+
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import { BaseTokenReader } from "./BaseTokenReader";
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
import { KeywordParser } from "../parsers/KeywordParser";
|
4
|
+
export declare const joinkeywordParser: KeywordParser;
|
5
|
+
export declare class CommandTokenReader extends BaseTokenReader {
|
6
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
7
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
/**
|
4
|
+
* Reads SQL identifier tokens
|
5
|
+
*/
|
6
|
+
export declare class FunctionTokenReader extends BaseTokenReader {
|
7
|
+
/**
|
8
|
+
* Try to read an identifier token
|
9
|
+
*/
|
10
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
11
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
/**
|
4
|
+
* Reads SQL identifier tokens
|
5
|
+
*/
|
6
|
+
export declare class IdentifierTokenReader extends BaseTokenReader {
|
7
|
+
/**
|
8
|
+
* Try to read an identifier token
|
9
|
+
*/
|
10
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
11
|
+
/**
|
12
|
+
* Read an escaped identifier (surrounded by delimiters)
|
13
|
+
*/
|
14
|
+
private readEscapedIdentifier;
|
15
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
import { KeywordParser } from '../parsers/KeywordParser';
|
4
|
+
export declare const literalKeywordParser: KeywordParser;
|
5
|
+
export declare class LiteralTokenReader extends BaseTokenReader {
|
6
|
+
/**
|
7
|
+
* Try to read a literal token
|
8
|
+
*/
|
9
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
10
|
+
private tryReadKeyword;
|
11
|
+
/**
|
12
|
+
* Check if the current context allows for a signed number
|
13
|
+
*/
|
14
|
+
private isValidNumericPrefix;
|
15
|
+
/**
|
16
|
+
* Read a numeric value
|
17
|
+
*/
|
18
|
+
private readDigit;
|
19
|
+
/**
|
20
|
+
* Read a string literal
|
21
|
+
*/
|
22
|
+
private readSingleQuotedString;
|
23
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
/**
|
4
|
+
* Reads SQL parameter tokens (@param, :param, $param, ?)
|
5
|
+
*/
|
6
|
+
export declare class ParameterTokenReader extends BaseTokenReader {
|
7
|
+
/**
|
8
|
+
* Try to read a parameter token
|
9
|
+
*/
|
10
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
11
|
+
}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { Lexeme } from '../models/Lexeme';
|
2
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
3
|
+
export declare class StringSpecifierTokenReader extends BaseTokenReader {
|
4
|
+
/**
|
5
|
+
* Try to read an escaped literal like e'...', x'...', etc.
|
6
|
+
*/
|
7
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
8
|
+
}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
/**
|
4
|
+
* Reads SQL symbol tokens (., ,, (, ))
|
5
|
+
*/
|
6
|
+
export declare class SpecialSymbolTokenReader extends BaseTokenReader {
|
7
|
+
private static readonly SPECIAL_SYMBOL_TOKENS;
|
8
|
+
/**
|
9
|
+
* Try to read a symbol token
|
10
|
+
*/
|
11
|
+
tryRead(previous: Lexeme | null): Lexeme | null;
|
12
|
+
}
|
@@ -0,0 +1,53 @@
|
|
1
|
+
import { BaseTokenReader } from './BaseTokenReader';
|
2
|
+
import { Lexeme } from '../models/Lexeme';
|
3
|
+
/**
|
4
|
+
* Manages and coordinates multiple token readers
|
5
|
+
*/
|
6
|
+
export declare class TokenReaderManager {
|
7
|
+
private readers;
|
8
|
+
private input;
|
9
|
+
private position;
|
10
|
+
private tokenCache;
|
11
|
+
private cacheHits;
|
12
|
+
private cacheMisses;
|
13
|
+
constructor(input: string, position?: number);
|
14
|
+
/**
|
15
|
+
* Register a token reader
|
16
|
+
* @param reader The reader to register
|
17
|
+
* @returns This manager instance for chaining
|
18
|
+
*/
|
19
|
+
register(reader: BaseTokenReader): TokenReaderManager;
|
20
|
+
/**
|
21
|
+
* Register multiple token readers
|
22
|
+
* @param readers The readers to register
|
23
|
+
* @returns This manager instance for chaining
|
24
|
+
*/
|
25
|
+
registerAll(readers: BaseTokenReader[]): TokenReaderManager;
|
26
|
+
/**
|
27
|
+
* Update the position for all readers
|
28
|
+
*/
|
29
|
+
private setPosition;
|
30
|
+
/**
|
31
|
+
* Try to read a token using all registered readers
|
32
|
+
* @param position The position to read from
|
33
|
+
* @param previous The previous token, if any
|
34
|
+
* @returns The lexeme if a reader could read it, null otherwise
|
35
|
+
*/
|
36
|
+
tryRead(position: number, previous: Lexeme | null): Lexeme | null;
|
37
|
+
/**
|
38
|
+
* Get the maximum position among all readers
|
39
|
+
*/
|
40
|
+
getMaxPosition(): number;
|
41
|
+
/**
|
42
|
+
* Get the input string
|
43
|
+
*/
|
44
|
+
getInput(): string;
|
45
|
+
/**
|
46
|
+
* Get cache statistics
|
47
|
+
*/
|
48
|
+
getCacheStats(): {
|
49
|
+
hits: number;
|
50
|
+
misses: number;
|
51
|
+
ratio: number;
|
52
|
+
};
|
53
|
+
}
|