[463225] Create new IInterpreter instances for expression validation

The expression validation uses a specific singleton instead of
CompoundInterpreter.INSTANCE to provide the guarante the IInterpreter
instance configuration regarding metamodels/scope/imported classes is
correctly set for each expression.

The expected result is that for every call to analyze/validateExpression
the IInterpreter instance has been configured *from the outside* based
on the IInterpreterContext. When a new context requires a configuration
update, the IInterpreter is reconfigured.

Why still a singleton ? to pass a MultiLanguagesValidator instance
around on all those calls would require major API breaks in many places
(DialectService, SiriusInterpreterContextFactory and
IInterpretedExpressionTargetSwitch among others)

Bug: 463225
Change-Id: I2595abdead85dbb2b77a5d7fd1f287a20857479d
Signed-off-by: Cedric Brun <cedric.brun@obeo.fr>
11 files changed