Improve EOperation handling
* Use the static signature of the EOperation to locate the
implementation method, so that it can be invoked on any
type-compatible list of arguments.
Previously the lookup was done on the exact types of the runtime
arguments, so an EOperation op(T) could not be invoked on an argument
whose type was a strict sub-type of T.
* Handle multi-valued EParameters, which in Java will be generated as
EList parameters.
* Avoid a reflective lookup on each invocation. We now rely only on the
static signature of the EOperation, so the lookup can be done only
once on initialization.
Change-Id: I133844bc233f7de547b0a98a847112f480627ac0
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
9 files changed