Commit graph

31 commits

Author SHA1 Message Date
Maxim Svistunov
0b17d6cef7 Improve identifier parsing checks 2024-02-05 14:10:14 +01:00
Maxim Svistunov
a8c9c57231 Remove the ASCII-only check 2024-02-04 14:53:52 +01:00
Yuriy Dupyn
c4f5ac7b70 Fix type-checking option bug 2024-02-04 14:40:36 +01:00
Yuriy Dupyn
da8e2d6771 Remove some unused imports 2024-02-04 14:27:59 +01:00
Maxim Svistunov
6245dba4f0 Parsing and validation for Option
Add option type and option value parsers

value->literal in parser, implement Option literal
2024-02-04 14:01:47 +01:00
Maxim Svistunov
de8c6164cf Resolve TODOs in parsing
Return error for queries containing non-ASCII characters

Allow underscores in identifiers

Add a delete statement test with spaces

Remove trailing spaces and semicolons from tests and parsers

Complete the multiple statement parser TODO
2024-02-04 14:01:47 +01:00
Yuriy Dupyn
700acf5661 Remove unnecessary import 2024-02-01 22:39:08 +01:00
Yuriy Dupyn
22a2730b96 Make test compile 2024-02-01 14:57:45 +01:00
Yuriy Dupyn
fbd7bf1f72 Fix errors in parsing crate 2024-02-01 14:45:29 +01:00
Yuriy Dupyn
845db102c2 cargo format 2024-01-28 22:40:41 +01:00
Yuriy Dupyn
2ba158a0d4 Clippy 2024-01-28 22:08:46 +01:00
Yuriy Dupyn
8eec9c6759 Fix some of the clippy errors 2024-01-28 21:40:43 +01:00
Yuriy Dupyn
ec0a4f2510 Move TablePosition into schema 2024-01-28 18:43:53 +01:00
Yuriy Dupyn
a2180a3e32 Move Column into schema.rs 2024-01-28 18:40:34 +01:00
Yuriy Dupyn
377c19cf32 Disallow indexing of non-indexable columns 2024-01-28 17:20:50 +01:00
Yuriy Dupyn
7b5b2bf9f3 Improve Create Table 2024-01-28 17:14:02 +01:00
Yuriy Dupyn
4a099468b2 Rename validate_create ~> validate_create_table, and expose only what is necessary 2024-01-28 15:32:12 +01:00
Yuriy Dupyn
12c91ce70e Rename column_position ~> column variables, and introduce runtime error AttemptToIndexAlreadyIndexedColumn 2024-01-28 15:27:03 +01:00
Yuriy Dupyn
052236d892 Add some tests for Validation 2024-01-28 15:09:27 +01:00
Yuriy Dupyn
80c4ff220e Merge branch 'main' into optimize-operation 2024-01-27 23:17:55 +01:00
Yuriy Dupyn
11dc992476 Cleanup 2024-01-27 22:46:19 +01:00
Yuriy Dupyn
9771a89716 Use RawQuerySyntax for parsing 2024-01-27 21:47:33 +01:00
Yuriy Dupyn
562e732138 Validation now outputs a Validated Interpreter Operation 2024-01-27 21:22:00 +01:00
Jindřich Moravec
464c0b6698 fix: parse uuid with 'u' prefix 2024-01-27 18:47:43 +01:00
Yuriy Dupyn
4e5959a53a Fix formatting of validation errors 2024-01-27 17:26:00 +01:00
Yuriy Dupyn
f30d749962 Merge remote-tracking branch 'origin/parsing' into parsing 2024-01-27 17:20:17 +01:00
Yuriy Dupyn
9999d67b8f Cleanup validation.rs 2024-01-27 17:14:11 +01:00
Jindřich Moravec
5ced11c40d feat: integrate thiserror 2024-01-27 16:34:44 +01:00
Jindřich Moravec
677fd19bec fix: NUMBER type name 2024-01-27 16:34:23 +01:00
Yuriy Dupyn
6000b1f242 Put parsing details into one module 2024-01-26 19:45:15 +01:00
Maxim Svistunov
61c0a34253 Add parsing (incl. validation)
Ensure identifiers start with alphabetical character

Rename parse_variable_name -> parse_column_name

Add DB value parsers and condition parser placeholder

Fix number parser, basic condition parser

Move select parser to select module

Add create statement parser

Move condition parser to common; add delete statement parser

Add drop statement parser

Add insert parser

Add update parser, combine operation parsers into one

Add initial validation, fix compiler warnings

Validation WIP

Allow more spaces in create statement, update TableSchema struct

Add create index parser and validator

Add todo in parse_identifier

Rework the new structure, many other changes
2024-01-26 18:20:45 +01:00