Michael Uleysky
821aace1eb
Use shared_ptr<const ObjectBase> in many places.
8 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
176bdb2be0
New function Find() for ObjectPair and ObjectList. Same as Get() but return constant pointer on already existing object.
9 years ago
Michael Uleysky
c3c6f4643d
Use ToString for printing and dumping ObjectSimple classes.
9 years ago
Michael Uleysky
5703808781
Using ToString instead of std::to_string with different format conversion for double
9 years ago
Michael Uleysky
fc13d6586a
Fix incorrect parameter type.
9 years ago
Michael Uleysky
360cbd42a0
Move const qualifier in right place.
9 years ago
Michael Uleysky
8e9d4c3f0e
Function Split to break strings by delimiters.
9 years ago
Michael Uleysky
90f6c74c0a
Fix incorrect check.
9 years ago
Michael Uleysky
403b2edb62
Add function Exist() to temaplates OBType and OBTypeM to check if ObjectBase* pointer is non-zero.
9 years ago
Michael Uleysky
b0969362a7
OBType and OBTypeM now can accept zero pointer as constructor parameter.
...
OBType can be autoconverted to pointer on template parameter class.
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
c4ff7d9233
Add template OBTypeM as multiple-types analog of OBType.
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
0a4dbbadc7
Change type of pointer argument of the function DeallocateBlob() from void* to int8_t*, as Blob() return value.
9 years ago
Michael Uleysky
b442834bdc
Make template Get available for modules.
9 years ago
Michael Uleysky
162a18c72b
Replace IS_OTYPE macros on more useful template OBType
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