When scanning for the matching parenthesis, string literals
were not taken into account, which would inevitably lead to
errors if one wanted to do a selection on a string containing
a parenthesis.
Now it uses a state-machine to skip the ones that are located
inside literals.
In case of multiple renames, all of the resulting relations will point
to the same data, so writing on one and marking its only known copy
as writable would be incorrect.
For this to work, all the references should be kown to all the other
instances.
It is probably not worth to implement it.
Implemented test for the update
Require them to have assert rather than testing the
result variables set.
This makes for way simpler code.
Now also prints stacktrace to know where the problem occurred.
Outer joins add the placeholder '---' that is used as some sort of NULL
value.
However select operations on such relations would always fail, because
relations are supposed to only contain values of class rstring, and
the placeholder was added as a regular string.
As a consequence, automatic casting would always fail, and the select
would always raise an exception.
Added a new test case with this specific case in mind.
The symbols previously used were a Canadian script, and were looking
good enough, but they might not be installed in every machine.
Besides, all this is to workaround a Qt5 bug that prevents from
rendering those symbols at times.
- Simplified code of optimizations module
- Improved doc of optimization module
- Added option to get all the intermediate passages of optimization
git-svn-id: http://galileo.dmi.unict.it/svn/relational/trunk@269 014f5005-505e-4b48-8d0a-63407b615a7c