Michael Uleysky
0e49a86bd6
Rewrite parser and evaluator.
...
1) Use plain representation of expressions instead of recursive objects.
2) Make G_tosave, G_toprint and G_vars local.
3) DepTree nodes contains expressions itself instead of references on global objects.
4) Location tracking of errors.
9 years ago
Michael Uleysky
eeeb74f2f4
Error messages from lexical and grammatical parsers now contains include stack.
9 years ago
Michael Uleysky
5703808781
Using ToString instead of std::to_string with different format conversion for double
9 years ago
Michael Uleysky
92a617eaac
Prevent conflict of definition of yyguts_t from different lex files.
9 years ago
Michael Uleysky
3ef04a9ba0
Add tolower function for strings.
9 years ago
Michael Uleysky
5bed99ad81
Simple converters from strings to double, int and unsigned int added to common.h
9 years ago
Michael Uleysky
ebc4f236db
CMake build system
9 years ago
Michael Uleysky
7e68629fbe
Add directives in config files for loading modules and setup search paths for modules and includes.
9 years ago
Michael Uleysky
1cf8c24537
Move includes in separate dir
9 years ago
Michael Uleysky
ef38fb1781
Rearrange code. common.h now have all api for modules.
9 years ago
Michael Uleysky
a23c393e9e
Fix clang and cppcheck warnings
10 years ago
Michael Uleysky
92e9368e56
Tracking bison locations, so grammatical error messages are informative now.
...
Also, some cosmetic cleanups.
10 years ago
Michael Uleysky
bd9deb8734
Memory leak in case of some grammatical errors
10 years ago
Michael Uleysky
f0b6882b20
No more shift/reduce conflicts
10 years ago
Michael Uleysky
b17ad14e2a
@include directive in lexical parser.
...
Correct error handling in lexical parser.
10 years ago
Michael Uleysky
21c8e0e4ad
Fixed -Wall warnings
10 years ago
Michael Uleysky
e011354f04
Interpret dot as function GET.
...
Add functions Copy (make object copy) and Evaluate (run functions) for class ObjectBase and its derivatives.
10 years ago
Michael Uleysky
5ed1648d7a
Add token DELIM in grammatic.
10 years ago
Michael Uleysky
68283153a9
Fix memory leak.
10 years ago
Michael Uleysky
f779f4075a
Avoid memory leaks in the case of syntax error in the grammatical parser.
10 years ago
Michael Uleysky
e29b8cc085
Grammatical parser
10 years ago
Michael Uleysky
be4c41c762
Lexical parser
10 years ago