Michael Uleysky
c59ac16589
Fix false error if more then one function have same name.
8 years ago
Michael Uleysky
c02f46df5e
Using ObjectList::IndexType instead of ObjectList::ListValues::size_type.
...
Add STL-compatible forward iterator for ObjectList.
9 years ago
Michael Uleysky
522a4b2092
Remove unused mutexes from DepTree::thread_params.
9 years ago
Michael Uleysky
acc973982a
Enforce constantness of all Objects.
9 years ago
Michael Uleysky
da0c897a95
Error reporting in arifmetic and Get<> functions.
...
Replace 0 on nullptr.
9 years ago
Michael Uleysky
79c55b1618
Add support for extended error reporting by functions (functions can return ObjectError object with description of error).
9 years ago
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
235437354e
Check and really use linker flags
9 years ago
Michael Uleysky
92a617eaac
Prevent conflict of definition of yyguts_t from different lex files.
9 years ago
Michael Uleysky
8e9d4c3f0e
Function Split to break strings by delimiters.
9 years ago
Michael Uleysky
c218ef8eaf
Use templates for generating standart arifmetic functions.
...
Automatic translation of strings to numbers in arifmetic functions.
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
162a18c72b
Replace IS_OTYPE macros on more useful template OBType
9 years ago
Michael Uleysky
ebc4f236db
CMake build system
9 years ago
Michael Uleysky
c5bff0c2f0
Add externally defined CFLAGS and LDFLAGS to compiler and linker options.
9 years ago
Michael Uleysky
9e85bfe6c7
Fix compilation on Ubuntu
9 years ago
Michael Uleysky
705b220ae1
Build system for modules
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
17dcff67cb
Functions accept const ObjectList*, not ObjectList*
9 years ago
Michael Uleysky
c5d4c27a55
Enable Link-Time Optimisation
9 years ago
Michael Uleysky
ef38fb1781
Rearrange code. common.h now have all api for modules.
9 years ago
Michael Uleysky
0ea30b894a
Move exported definitions in common.h
9 years ago
Michael Uleysky
a8d1239b46
Rename arifmetic.{cpp,h} to builtin.{cpp,h}
9 years ago
Michael Uleysky
a23c393e9e
Fix clang and cppcheck warnings
10 years ago
Michael Uleysky
f90e798502
Multithreading support
10 years ago
Michael Uleysky
28cb54ff70
Command-line options.
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
e39589f216
Fix memory leak
10 years ago
Michael Uleysky
3f0b187d8c
Optimize building of the dependency tree
10 years ago
Michael Uleysky
106fbe1612
Fixes
10 years ago
Michael Uleysky
ef2218b91c
Realisation of print() and save()
10 years ago
Michael Uleysky
9dbc3abaed
Recursive evaluating
10 years ago
Michael Uleysky
21c8e0e4ad
Fixed -Wall warnings
10 years ago
Michael Uleysky
cd60230d54
Add various typedef's
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
894a74eed9
Check parsed config on unknown functions
10 years ago
Michael Uleysky
6761e6e462
DumpConfig() function
10 years ago
Michael Uleysky
973762bfd4
Buiding dependency tree with checking of circular dependencies.
10 years ago
Michael Uleysky
68283153a9
Fix memory leak.
10 years ago
Michael Uleysky
72c98542e0
Build dependency tree
10 years ago
Michael Uleysky
f779f4075a
Avoid memory leaks in the case of syntax error in the grammatical parser.
10 years ago
Michael Uleysky
a31a47656d
Add simple arifmetic functions.
...
Tune exported suymbols.
10 years ago