Yuriy Dupyn
fdfdaa9fc0
Return table schema in SELECT response
2024-01-27 23:42:03 +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
Yuriy Dupyn
935d9814ae
Introduce new simplified Operation type for Interpreter
2024-01-27 18:54:54 +01:00
Jindřich Moravec
f398faa6aa
Merge branch 'parsing' into 'main'
...
Add parsing (incl. validation)
See merge request x433485/minisql!5
2024-01-27 18:50:24 +01:00
Jindřich Moravec
464c0b6698
fix: parse uuid with 'u' prefix
2024-01-27 18:47:43 +01:00
Yuriy Dupyn
cf76cc4d10
Restore schema fields to private
2024-01-27 18:11:12 +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
Yuriy Dupyn
143dc0e5ce
Merge branch 'interpreter-iterator' into 'main'
...
Make interpreter return an iterator of rows
See merge request x433485/minisql!7
2024-01-21 08:39:39 +01:00
Yuriy Dupyn
29527e92ff
Merge branch 'operation-separation' into 'main'
...
Make interpreter a library
See merge request x433485/minisql!6
2024-01-21 08:38:53 +01:00
Yuriy Dupyn
ddf17ae0a5
Now interpreter returns an iterator
2024-01-20 15:08:18 +01:00
Yuriy Dupyn
430d092def
Make interpreter a library
2024-01-18 19:25:46 +01:00
Yuriy Dupyn
37f8b7be91
Make schema fields private
2024-01-18 16:35:20 +01:00
Yuriy Dupyn
71d4bd76f0
Merge branch 'interpreter' into 'main'
...
Interpreter
See merge request x433485/minisql!2
2024-01-09 19:19:10 +01:00
Yuriy Dupyn
ba2c1bae6d
Add a comment about potentiall returning reference to id hash-set in fetch_ids_from_index.
2024-01-08 15:20:22 +01:00
Yuriy Dupyn
b04f3d167b
Return reference in index_column.get()
2024-01-08 14:24:30 +01:00
Yuriy Dupyn
f0d29eb399
Make TableSchema struct fields private
2024-01-08 13:56:38 +01:00
Yuriy Dupyn
966c9bf284
Make Table struct fields private
2024-01-08 13:37:09 +01:00
Yuriy Dupyn
0996d0dbe1
Move index update into attach_index
2024-01-08 13:29:49 +01:00
Yuriy Dupyn
2549a4dac1
Merge branch 'main' into interpreter
2024-01-08 13:05:43 +01:00
Jindřich Moravec
bb4c6761f4
Merge branch 'protocol' into 'main'
...
Protocol
See merge request x433485/minisql!4
2024-01-04 22:33:42 +01:00
Jindřich Moravec
df5741224f
docs: data messages documentation
2023-12-31 19:04:40 +01:00
Jindřich Moravec
c61b6021db
docs: handshake documentation
2023-12-31 18:45:50 +01:00
Jindřich Moravec
14b82d1aa5
fix: typos
2023-12-29 17:03:39 +01:00
Yuriy Dupyn
1712bc0e0e
Remove unnecessary import in a test
2023-12-29 08:49:58 +01:00
Yuriy Dupyn
8b9249be36
Test for column index
2023-12-29 08:14:29 +01:00
Yuriy Dupyn
25b26acde0
format & clippy
2023-12-29 07:58:35 +01:00
Yuriy Dupyn
4f2c864d7a
Move DbResult into its own file
2023-12-29 07:49:17 +01:00
Yuriy Dupyn
d87c95f1e1
Move index update from table logic to interpreter
2023-12-29 07:45:40 +01:00
Yuriy Dupyn
e9d3df7a22
Reorganization
2023-12-29 07:39:59 +01:00
Yuriy Dupyn
f7a6cc2549
Make Row a wrapper type
2023-12-29 07:24:46 +01:00
Yuriy Dupyn
bfb5042896
Disentangle table.rs from operation.rs
2023-12-29 06:57:24 +01:00
Yuriy Dupyn
f9b874f302
Simplify select_all and delete_all
2023-12-29 06:33:30 +01:00
Yuriy Dupyn
6b58c3cb9b
Reorganization
2023-12-29 06:03:04 +01:00
Yuriy Dupyn
3c57b0eb6c
Add an example to fn main()
2023-12-28 14:39:36 +01:00
Yuriy Dupyn
5e4abc3cb1
Simplify select_where, delete_where
2023-12-28 14:39:13 +01:00
Yuriy Dupyn
291f90ef03
cleanup
2023-12-28 14:03:38 +01:00
Yuriy Dupyn
14f4fe4f3b
Test delete
2023-12-28 12:56:16 +01:00
Yuriy Dupyn
dc3e9b0077
Add some basic tests
2023-12-28 12:33:00 +01:00
Yuriy Dupyn
e111c4fc61
Implement proper index creation
2023-12-28 10:49:32 +01:00
Yuriy Dupyn
c8e398a238
Implement select_columns
2023-12-28 09:55:42 +01:00
Yuriy Dupyn
bd3dbe2365
Merge remote-tracking branch 'origin/main' into interpreter
2023-12-28 09:37:48 +01:00