implemented davql order by

-a option wasn't working correctly in recursive mode

fixed horrible bugs, davql hopefully just works now (without order by yet)

empty field results will no longer be added

replaced old davql (still buggy)

implemented execution of field list expressions

implemented some davql integer operations

secured ucx_list_append calls against OOM

added missing keywords + fixed missing source text for boolean primaries

fixed grammar for path + added missing string quote escaping (still not perfect: escape sequence is in syntax tree)

fixed path parser not writing length for a single slash as path

implemented minimal executor features and added missing ucx files

renamed GET to SELECT in davql syntax

added expression executor prototype

fixed: comparison operator info has been incorrectly written to type field

expression compiler generates byte code

added where clause compiler prototype

secured malloc / calloc calls

fixed statement type for logical expressions without operator + prepared OOM handling

implemented order by parser

added initial code for config commands

fixed paranthsis ambiguity for logical and normal expressions

fixed null pointer access on end of token stream by adding a special END token to the stream

fixed logical expression parser

completed logical expression parser - NEED TO TEST A LOT!

added function call parser + fixed some memory management mistakes

completed field list parser + error messages do now provide more context information based on the source string

minimized ucx subset

parser for ParExpression

update ucx

added syntax tree display to debugger + expression parser saves source text in every node

fixed parsing of binary expressions did not yield the correct type

added format specifier parser

started refactoring davqlparser

fixed control flow in int_cmd + committed testcase (enable with #define DO_THE_TEST)

added davqlexec source

added clang config + fixed control flow in two parser functions

reworked expression grammar (removed left recursion) + added field names to debugger + fixed bug when WITH-clause was the last clause in a statement

merge

improved error messages

fieldlist parser can now parse fields with alias

minor grammar fix (alias name is now identifier and not string) + completed debugger (so far) + separated field list parser (currently unable to parse alias names) + new structure for fields

fixed static variable fail

special path parser + typed literals + order by parser + grammar changes

simplified with clause parsing + added order by to data structure and debugger (TODO: implement)

removed ultrabreak gotos

added special symbol list to tokenizer

added order by clause to grammar + moved with clause right after the from clause

parser verifies that path is an identifier

parser for with-clause ready to parse more attributes, but marks duplicated attributes as error

parser for with clause + unexpected token message, if something is beyond the with clause

tokenizer now correctly handles quoted tokens

removed DavQLExpression type for path (since it always is an identifier)

davql: error handling + minor grammar changes

improved grammar + changed depth default, type and added infinity

added info command

improved expression parser (can now detect literals and identifiers) - TODO: tokenizer must not split strings and "backstick-identifiers"

renamed some enums to avoid collisions with macros + minor grammar change (backsticks for identifiers) + tokenizer + parser skeleton

UCX string module update

added path examination to debugger + changed field names of expression subtrees

added parse function prototype + started writing a debugger

described DavQLStatement grammar + added more features + renamed PUT to SET (for now)

added missing stuff to davql types

structure draft for DavQL statements

(0) -100 -64 +64 +100 +300 tip

mercurial