use of org.eclipse.xtext.example.arithmetics.arithmetics.Import in project xtext-eclipse by eclipse.
the class ArithmeticsSemanticSequencer method sequence.
@Override
public void sequence(ISerializationContext context, EObject semanticObject) {
EPackage epackage = semanticObject.eClass().getEPackage();
ParserRule rule = context.getParserRule();
Action action = context.getAssignedAction();
Set<Parameter> parameters = context.getEnabledBooleanParameters();
if (epackage == ArithmeticsPackage.eINSTANCE)
switch(semanticObject.eClass().getClassifierID()) {
case ArithmeticsPackage.DECLARED_PARAMETER:
sequence_DeclaredParameter(context, (DeclaredParameter) semanticObject);
return;
case ArithmeticsPackage.DEFINITION:
sequence_Definition(context, (Definition) semanticObject);
return;
case ArithmeticsPackage.DIV:
sequence_Multiplication(context, (Div) semanticObject);
return;
case ArithmeticsPackage.EVALUATION:
sequence_Evaluation(context, (Evaluation) semanticObject);
return;
case ArithmeticsPackage.FUNCTION_CALL:
sequence_PrimaryExpression(context, (FunctionCall) semanticObject);
return;
case ArithmeticsPackage.IMPORT:
sequence_Import(context, (Import) semanticObject);
return;
case ArithmeticsPackage.MINUS:
sequence_Addition(context, (Minus) semanticObject);
return;
case ArithmeticsPackage.MODULE:
sequence_Module(context, (org.eclipse.xtext.example.arithmetics.arithmetics.Module) semanticObject);
return;
case ArithmeticsPackage.MULTI:
sequence_Multiplication(context, (Multi) semanticObject);
return;
case ArithmeticsPackage.NUMBER_LITERAL:
sequence_PrimaryExpression(context, (NumberLiteral) semanticObject);
return;
case ArithmeticsPackage.PLUS:
sequence_Addition(context, (Plus) semanticObject);
return;
}
if (errorAcceptor != null)
errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
use of org.eclipse.xtext.example.arithmetics.arithmetics.Import in project xtext-eclipse by eclipse.
the class ArithmeticsScopeProvider method getScope.
@Override
public IScope getScope(EObject context, EReference reference) {
if (reference == ArithmeticsPackage.Literals.IMPORT__MODULE) {
return super.getGlobalScope(context.eResource(), reference);
}
Module module = EcoreUtil2.getContainerOfType(context, Module.class);
IScope result = IScope.NULLSCOPE;
for (Import i : module.getImports()) {
if (!i.getModule().eIsProxy()) {
result = getModuleScope(context, reference, i.getModule(), result);
}
}
result = getModuleScope(context, reference, module, result);
return getDefinitionScope(context, reference, result);
}
Aggregations