Rename ziql to parser

This commit is contained in:
Adrien Bouvais 2025-01-14 22:42:11 +01:00
parent dff7ead5b1
commit 9ae9b65f1e
12 changed files with 18 additions and 32 deletions

View File

@ -1,7 +1,7 @@
const std = @import("std");
const dtype = @import("dtype");
const DBEngine = @import("src/cli/core.zig");
const ziqlParser = @import("src/ziql/core.zig");
const ziqlParser = @import("src/parser/core.zig");
const ZipponError = @import("error").ZipponError;
const names = [_][]const u8{ "Alice", "Bob", "Charlie", "Dave", "Eve" };
@ -29,7 +29,7 @@ pub fn myLog(
}
pub fn main() !void {
const to_test = [_]usize{ 500, 50_000, 5_000_000 };
const to_test = [_]usize{ 500, 50_000, 1_000_000 };
var line_buffer: [1024 * 1024]u8 = undefined;
for (to_test) |users_count| {
var db_engine = DBEngine.init("benchmarkDB", "schema/benchmark");
@ -57,29 +57,19 @@ pub fn main() !void {
var writer = array.writer();
try writer.print(
"ADD User (name = '{s}', email='{s}')",
"ADD User (name = '{s}', email='{s}', orders=none)",
.{
names[rng.uintAtMost(usize, names.len - 1)],
emails[rng.uintAtMost(usize, emails.len - 1)],
rng.uintAtMost(usize, 100),
scores[rng.uintAtMost(usize, scores.len - 1)],
dates[rng.uintAtMost(usize, dates.len - 1)],
times[rng.uintAtMost(usize, times.len - 1)],
datetimes[rng.uintAtMost(usize, datetimes.len - 1)],
},
);
for (users_count - 1) |_| {
try writer.print(
"('{s}', '{s}', {d}, [ {d} ], none, none, {s}, {s}, {s})",
"('{s}', '{s}', none)",
.{
names[rng.uintAtMost(usize, names.len - 1)],
emails[rng.uintAtMost(usize, emails.len - 1)],
rng.uintAtMost(usize, 100),
scores[rng.uintAtMost(usize, scores.len - 1)],
dates[rng.uintAtMost(usize, dates.len - 1)],
times[rng.uintAtMost(usize, times.len - 1)],
datetimes[rng.uintAtMost(usize, datetimes.len - 1)],
},
);
}
@ -119,10 +109,6 @@ pub fn main() !void {
"GRAB User [1] {}",
"GRAB User [name] {}",
"GRAB User {name = 'Charlie'}",
"GRAB User {age > 30}",
"GRAB User {bday > 2000/01/01}",
"GRAB User {age > 30 AND name = 'Charlie' AND bday > 2000/01/01}",
"GRAB User {best_friend IN {name = 'Charlie'}}",
"DELETE User {}",
};

View File

@ -5,7 +5,7 @@ const Allocator = std.mem.Allocator;
const FileEngine = @import("../file/core.zig");
const SchemaEngine = @import("../schema/core.zig");
const ThreadEngine = @import("../thread/engine.zig");
const ziqlParser = @import("../ziql/core.zig");
const ziqlParser = @import("../parser/core.zig");
const setLogPath = @import("../main.zig").setLogPath;
const log = std.log.scoped(.cli);

View File

@ -64,14 +64,14 @@ pub const State = enum {
add_array_to_map,
};
pub const Parser = @This();
pub const Self = @This();
pub usingnamespace @import("parser/comparison.zig");
pub usingnamespace @import("parser/condition.zig");
pub usingnamespace @import("parser/newData.zig");
pub usingnamespace @import("parser/value.zig");
pub usingnamespace @import("parser/filter.zig");
pub usingnamespace @import("parser/additionalData.zig");
pub usingnamespace @import("parts/comparison.zig");
pub usingnamespace @import("parts/condition.zig");
pub usingnamespace @import("parts/newData.zig");
pub usingnamespace @import("parts/value.zig");
pub usingnamespace @import("parts/filter.zig");
pub usingnamespace @import("parts/additionalData.zig");
pub usingnamespace @import("utils.zig");
var toker: Tokenizer = undefined;
@ -80,14 +80,14 @@ toker: *Tokenizer = undefined,
file_engine: *FileEngine,
schema_engine: *SchemaEngine,
pub fn init(file_engine: *FileEngine, schema_engine: *SchemaEngine) Parser {
return Parser{
pub fn init(file_engine: *FileEngine, schema_engine: *SchemaEngine) Self {
return Self{
.file_engine = file_engine,
.schema_engine = schema_engine,
};
}
pub fn parse(self: *Parser, buffer: [:0]const u8) ZipponError!void {
pub fn parse(self: *Self, buffer: [:0]const u8) ZipponError!void {
var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);
defer arena.deinit();
const allocator = arena.allocator();

View File

@ -1,8 +1,8 @@
const std = @import("std");
const Allocator = std.mem.Allocator;
const Parser = @import("src/ziqlParser.zig").Parser;
const Tokenizer = @import("src/tokenizers/ziql.zig").Tokenizer;
const DBEngine = @import("src/main.zig").DBEngine;
const Parser = @import("src/parser/core.zig").Parser;
const Tokenizer = @import("src/parser/tokenizer.zig").Tokenizer;
const DBEngine = @import("src/cli/core.zig");
const ZipponError = @import("error").ZipponError;
const DB = struct {