Hi Horacio
I've just pushed a number of changes to master.
Advance to Luna
0.11 version numbers.
https://hudson.eclipse.org/hudson/job/qvtd-luna/
Eliminate Acceleo
qvtd.build now exploits the ocl.build changes that use Xtend rather
than Acceleo. You no longer need to have Acceleo installed, so don't
need its cycle burning. Either upgrade to the OCL master or just
close the qvtd.build plugin.
QVTiTransformationAnalysis
performs the required analysis to find out what allInstnaces are in
use and allocate outer to middle cache indexes.
QVTiModelManager
maintains outer to middle caches.
MiddlePropertyAssignment, MiddlePropertyCallExp
are used by the CS2Pivot analysis wherever outer to middle caches
should be used.
QVTiInterpreterTests
has a commented out testClassToRDBMS() that does a number of
successful middle cache accesses before a CCE on:
" la.attribute := t; -- TODO check the whole attribute
rules"
which follows an earlier la.attribute assignment.
I've cleaned up the evaluator facade for the other three tests.
When debugging, it's much easier if Java rather than DynamicEObjects
are in use, the code in the fourth test woeriks but needs cleaning
up, but may need to wait for Bug 411614.
*ToStringVisitor
I put some better code in the ToStringVisitors so that debugging was
less unpleasant.
For tracing, you will probably find it better to complete the
ToStringVisitors rather than write a new suite of formatting
methods.
Evaluator visitPropertyAssignment
if (slotExp instanceof VariableExp ) { // What
other type of expressions are there?
Variable slotVar = (Variable)
((VariableExp)slotExp).getReferredVariable();
May indeed be just VariableExp, but if you visit it, you don't need
to worry. No need for a special case.
Regards
Ed
|