Package org.eclipse.xtext.xbase.compiler
Class XbaseCompiler
- java.lang.Object
-
public class XbaseCompiler extends FeatureCallCompiler
-
-
Constructor Summary
Constructors Constructor Description XbaseCompiler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void_toJavaExpression(XAnnotation annotation, ITreeAppendable b)protected void_toJavaExpression(XBlockExpression expr, ITreeAppendable b)protected void_toJavaExpression(XCastedExpression expr, ITreeAppendable b)protected void_toJavaExpression(XClosure closure, ITreeAppendable b)protected void_toJavaExpression(XConstructorCall expr, ITreeAppendable b)protected void_toJavaExpression(XIfExpression expr, ITreeAppendable b)protected void_toJavaExpression(XInstanceOfExpression expr, ITreeAppendable b)protected void_toJavaExpression(XListLiteral literal, ITreeAppendable b)protected void_toJavaExpression(XReturnExpression returnExpression, ITreeAppendable b)protected void_toJavaExpression(XSetLiteral literal, ITreeAppendable b)protected void_toJavaExpression(XSwitchExpression expr, ITreeAppendable b)protected void_toJavaExpression(XSynchronizedExpression synchronizedExpression, ITreeAppendable b)protected void_toJavaExpression(XThrowExpression throwExpression, ITreeAppendable b)protected void_toJavaExpression(XTryCatchFinallyExpression expr, ITreeAppendable b)protected void_toJavaIfElseStatement(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaIfStatement(XCasePart casePart, java.util.List<XCasePart> fallThroughCases, XSwitchExpression expr, XExpression then, ITreeAppendable b, boolean isReferenced, java.lang.String switchResultName, java.lang.String matchedVariable, java.lang.String variableName, XSwitchExpressionCompilationState state)protected void_toJavaStatement(XBasicForLoopExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XBlockExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XCastedExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XClosure closure, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XConstructorCall expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XDoWhileExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XForLoopExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XIfExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XInstanceOfExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XListLiteral literal, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XReturnExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XSetLiteral literal, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XSynchronizedExpression synchronizedExpression, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XThrowExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XTryCatchFinallyExpression expr, ITreeAppendable outerAppendable, boolean isReferenced)protected void_toJavaStatement(XVariableDeclaration varDeclaration, ITreeAppendable b, boolean isReferenced)protected void_toJavaStatement(XWhileExpression expr, ITreeAppendable b, boolean isReferenced)protected void_toJavaSwitchStatement(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)protected booleanallCasesAreExitedEarly(XSwitchExpression expr)protected voidappendCatchAndFinally(XTryCatchFinallyExpression expr, ITreeAppendable b, boolean isReferenced)protected voidappendCatchClause(XCatchClause catchClause, boolean parentIsReferenced, java.lang.String parentVariable, ITreeAppendable appendable)protected voidappendCatchClauseParameter(XCatchClause catchClause, org.eclipse.xtext.common.types.JvmTypeReference parameterType, java.lang.String parameterName, ITreeAppendable appendable)protected ITreeAppendableappendCloseIfStatement(XCasePart casePart, ITreeAppendable caseAppendable, XSwitchExpressionCompilationState state)protected voidappendClosureParameter(org.eclipse.xtext.common.types.JvmFormalParameter closureParam, LightweightTypeReference parameterType, ITreeAppendable appendable)protected voidappendClosureParameterVarArgs(org.eclipse.xtext.common.types.JvmFormalParameter closureParam, LightweightTypeReference parameterType, ITreeAppendable appendable)protected voidappendConstructedTypeName(XConstructorCall constructorCall, ITreeAppendable typeAppendable)protected voidappendFinallyWithResources(XTryCatchFinallyExpression expr, ITreeAppendable b)protected voidappendForLoopParameter(XForLoopExpression expr, ITreeAppendable appendable)protected voidappendImmutableCollectionExpression(XCollectionLiteral literal, ITreeAppendable b, java.lang.String collectionsMethod, java.lang.Class<?> guavaHelper, java.lang.String guavaHelperMethod)protected ITreeAppendableappendOpenIfStatement(XCasePart casePart, ITreeAppendable b, java.lang.String matchedVariable, java.lang.String variableName, XSwitchExpressionCompilationState state)protected voidappendOperationVisibility(ITreeAppendable b, org.eclipse.xtext.common.types.JvmOperation operation)protected voidappendSneakyThrow(XTryCatchFinallyExpression expr, ITreeAppendable b, java.lang.String variable)protected ITreeAppendableappendTypeArguments(XAbstractFeatureCall call, ITreeAppendable original)protected voidappendTypeParameters(ITreeAppendable appendable, org.eclipse.xtext.common.types.JvmOperation operation, LightweightTypeReference instantiatedType)Append the type parameters of the given operation.protected LightweightTypeReferenceappendVariableTypeAndName(XVariableDeclaration varDeclaration, ITreeAppendable appendable)protected booleanbracesAreAddedByOuterStructure(XExpression expression)protected booleancanCompileToJavaBasicForStatement(XBasicForLoopExpression expr, ITreeAppendable b)protected booleancanCompileToJavaLambda(XClosure closure, LightweightTypeReference typeRef, org.eclipse.xtext.common.types.JvmOperation operation)protected booleancanUseArrayInitializer(XListLiteral literal, ITreeAppendable appendable)protected booleancanUseArrayInitializerImpl(XListLiteral literal, ITreeAppendable appendable)protected voidcloseBlock(ITreeAppendable appendable)Close a block of code.protected voidconstructorCallToJavaExpression(XConstructorCall expr, ITreeAppendable b)protected java.lang.StringcreateSwitchLocalVariableName(XSwitchExpression expr)protected java.lang.StringdeclareAndAppendSwitchSyntheticLocalVariable(XSwitchExpression expr, java.lang.String name, ITreeAppendable b)protected java.lang.StringdeclareLocalVariable(XSwitchExpression expr, ITreeAppendable b)protected java.lang.StringdeclareSwitchResultVariable(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)protected voiddoInternalToJavaStatement(XExpression obj, ITreeAppendable appendable, boolean isReferenced)protected voidexecuteThenPart(XSwitchExpression expr, java.lang.String switchResultName, XExpression then, ITreeAppendable b, boolean isReferenced)protected java.util.List<XExpression>getActualArguments(XAbstractFeatureCall featureCall)protected LightweightTypeReferencegetClosureOperationParameterType(LightweightTypeReference closureType, org.eclipse.xtext.common.types.JvmOperation operation, int i)protected LightweightTypeReferencegetClosureOperationReturnType(LightweightTypeReference closureType, org.eclipse.xtext.common.types.JvmOperation operation)protected LightweightTypeReferencegetCollectionElementType(XCollectionLiteral literal)protected org.eclipse.xtext.common.types.JvmTypeReferencegetForLoopParameterType(XForLoopExpression expr)protected org.eclipse.xtext.generator.trace.ILocationDatagetLocationOfDefault(XSwitchExpression expression)protected org.eclipse.xtext.generator.trace.ILocationDatagetLocationWithNewKeyword(XConstructorCall call)protected org.eclipse.xtext.common.types.JvmTypeReferencegetParameterType(org.eclipse.xtext.common.types.JvmFormalParameter declaredParam)protected java.lang.StringgetReferenceName(XExpression expr, ITreeAppendable b)protected java.lang.ObjectgetSwitchExpressionKey(XSwitchExpression expr)protected java.lang.StringgetSwitchLocalVariableName(XSwitchExpression expr, ITreeAppendable b)protected java.lang.StringgetSwitchLocalVariableSimpleName(XSwitchExpression expr)protected org.eclipse.xtext.common.types.JvmTypeReferencegetSwitchLocalVariableType(XSwitchExpression expr)protected booleaninternalCanCompileToJavaExpression(XExpression expression, ITreeAppendable appendable)protected voidinternalToConvertedExpression(XExpression obj, ITreeAppendable appendable)protected booleanisAtLeast(ITreeAppendable b, org.eclipse.xtext.util.JavaVersion version)protected booleanisCompiledToJava7Switch(XSwitchExpression expr)Determine whether the given switch expression should be compiled to a Java switch for Java version 7 or higher.protected booleanisCompiledToJavaSwitch(XSwitchExpression expr)Determine whether the given switch expression should be compiled to a Java switch for Java version 6 or lower.protected booleanisSimpleFeatureCall(XExpression switch1)protected booleanisType(XExpression element, java.lang.Class<?> clazz)protected booleanisVariableDeclarationRequired(XExpression expr, ITreeAppendable b, boolean recursive)whether an expression needs to be declared in a statement If an expression has side effects this method must return true for it.protected booleanneedSyntheticSelfVariable(XClosure closure, LightweightTypeReference typeRef)protected org.eclipse.xtext.common.types.JvmTypeReferenceresolveSynonymType(org.eclipse.xtext.common.types.JvmSynonymTypeReference reference, org.eclipse.emf.ecore.EObject context)protected LightweightTypeReferenceresolveType(XExpression element, java.lang.Class<?> clazz)protected ITreeAppendabletoAnonymousClass(XClosure closure, ITreeAppendable b, LightweightTypeReference type, org.eclipse.xtext.common.types.JvmOperation operation)protected voidtoJavaBasicForStatement(XBasicForLoopExpression expr, ITreeAppendable b, boolean isReferenced)protected voidtoJavaWhileStatement(XBasicForLoopExpression expr, ITreeAppendable b, boolean isReferenced)protected ITreeAppendabletoLambda(XClosure closure, ITreeAppendable b, LightweightTypeReference type, org.eclipse.xtext.common.types.JvmOperation operation, boolean writeExplicitTargetType)-
Methods inherited from class org.eclipse.xtext.xbase.compiler.FeatureCallCompiler
_toJavaExpression, _toJavaStatement, _toJavaStatement, appendArgument, appendArgument, appendArguments, appendArguments, appendFeatureCall, appendInlineFeatureCall, appendLeftOperand, appendNullValue, appendNullValueUntyped, appendReceiver, assignmentToJavaExpression, featureCalltoJavaExpression, generateShortCircuitInvocation, getActualReceiver, getDefaultLiteral, getFeatureCall, getLocationInFileProvider, getLocationOfTypeArguments, getLocationWithoutTypeArguments, getLocationWithTypeArguments, getLogicalContainerProvider, inlineCallNeedsParenthesis, isDeclaredInNewLine, isHidden, isMemberCall, isReferenceToSelf, isVariableDeclarationRequired, isVariableDeclarationRequired, needMultiAssignment, nullSafeMemberFeatureCallExpressionNeedsPreparation, prepareExpression, toLocationData
-
Methods inherited from class org.eclipse.xtext.xbase.compiler.LiteralsCompiler
_toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, generateComment, generateComment, toJavaExpression, toJavaStatement
-
Methods inherited from class org.eclipse.xtext.xbase.compiler.TypeConvertingCompiler
convertPrimitiveToWrapper, convertWrapperToPrimitive, doCastConversion, doConversion, doReassignThisInClosure, findImplementingOperation, internalToConvertedExpression, internalToJavaExpression, normalizeBlockExpression, normalizeBlockExpression, reassignThisInClosure
-
Methods inherited from class org.eclipse.xtext.xbase.compiler.AbstractXbaseCompiler
_toJavaExpression, _toJavaStatement, appendDefaultLiteral, canCompileToJavaExpression, compile, compile, compile, compile, compileAsJavaExpression, compileAsJavaExpression, compileWithJvmConstructorCall, declareFreshLocalVariable, declareSyntheticVariable, findKnownTopLevelType, findKnownType, generateCheckedExceptionHandling, getDefaultValueLiteral, getExpectedType, getFavoriteVariableName, getLightweightExpectedType, getLightweightReturnType, getLightweightType, getLightweightType, getNameProvider, getResolvedTypes, getType, getType, getTypeComputationServices, getTypeForVariableDeclaration, getTypeReferenceSerializer, getVarName, hasJvmConstructorCall, hasUnhandledException, internalToJavaStatement, isEarlyExit, isJavaConformant, isPrimitiveVoid, isPrimitiveVoid, isReferenceToForeignTypeParameter, isUnhandledException, isVariableDeclarationRequired, makeJavaIdentifier, needsSneakyThrow, newTypeReferenceOwner, resolveMultiType, serialize, serialize, serialize, setNameProvider, toJavaExpression, toJavaStatement, toLightweight
-
-
-
-
Method Detail
-
_toJavaStatement
protected void _toJavaStatement(XListLiteral literal, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
_toJavaStatement
protected void _toJavaStatement(XSetLiteral literal, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
isType
protected boolean isType(XExpression element, java.lang.Class<?> clazz)
-
resolveType
protected LightweightTypeReference resolveType(XExpression element, java.lang.Class<?> clazz)
-
getCollectionElementType
protected LightweightTypeReference getCollectionElementType(XCollectionLiteral literal)
-
_toJavaExpression
protected void _toJavaExpression(XListLiteral literal, ITreeAppendable b)
-
_toJavaExpression
protected void _toJavaExpression(XSetLiteral literal, ITreeAppendable b)
-
appendImmutableCollectionExpression
protected void appendImmutableCollectionExpression(XCollectionLiteral literal, ITreeAppendable b, java.lang.String collectionsMethod, java.lang.Class<?> guavaHelper, java.lang.String guavaHelperMethod)
-
canUseArrayInitializer
protected boolean canUseArrayInitializer(XListLiteral literal, ITreeAppendable appendable)
-
canUseArrayInitializerImpl
protected boolean canUseArrayInitializerImpl(XListLiteral literal, ITreeAppendable appendable)
-
getActualArguments
protected java.util.List<XExpression> getActualArguments(XAbstractFeatureCall featureCall)
- Overrides:
getActualArgumentsin classFeatureCallCompiler
-
appendTypeArguments
protected ITreeAppendable appendTypeArguments(XAbstractFeatureCall call, ITreeAppendable original)
- Overrides:
appendTypeArgumentsin classFeatureCallCompiler
-
internalToConvertedExpression
protected void internalToConvertedExpression(XExpression obj, ITreeAppendable appendable)
- Overrides:
internalToConvertedExpressionin classFeatureCallCompiler
-
doInternalToJavaStatement
protected void doInternalToJavaStatement(XExpression obj, ITreeAppendable appendable, boolean isReferenced)
- Overrides:
doInternalToJavaStatementin classFeatureCallCompiler
-
_toJavaStatement
protected void _toJavaStatement(XBlockExpression expr, ITreeAppendable b, boolean isReferenced)
-
bracesAreAddedByOuterStructure
protected boolean bracesAreAddedByOuterStructure(XExpression expression)
-
_toJavaExpression
protected void _toJavaExpression(XBlockExpression expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XTryCatchFinallyExpression expr, ITreeAppendable outerAppendable, boolean isReferenced)
-
appendCatchAndFinally
protected void appendCatchAndFinally(XTryCatchFinallyExpression expr, ITreeAppendable b, boolean isReferenced)
-
appendSneakyThrow
protected void appendSneakyThrow(XTryCatchFinallyExpression expr, ITreeAppendable b, java.lang.String variable)
-
appendCatchClause
protected void appendCatchClause(XCatchClause catchClause, boolean parentIsReferenced, java.lang.String parentVariable, ITreeAppendable appendable)
-
appendCatchClauseParameter
protected void appendCatchClauseParameter(XCatchClause catchClause, org.eclipse.xtext.common.types.JvmTypeReference parameterType, java.lang.String parameterName, ITreeAppendable appendable)
-
resolveSynonymType
protected org.eclipse.xtext.common.types.JvmTypeReference resolveSynonymType(org.eclipse.xtext.common.types.JvmSynonymTypeReference reference, org.eclipse.emf.ecore.EObject context)
-
appendFinallyWithResources
protected void appendFinallyWithResources(XTryCatchFinallyExpression expr, ITreeAppendable b)
- Since:
- 2.18
-
isAtLeast
protected boolean isAtLeast(ITreeAppendable b, org.eclipse.xtext.util.JavaVersion version)
- Since:
- 2.18
-
_toJavaExpression
protected void _toJavaExpression(XTryCatchFinallyExpression expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XThrowExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
_toJavaExpression
protected void _toJavaExpression(XInstanceOfExpression expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XInstanceOfExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
_toJavaStatement
protected void _toJavaStatement(XVariableDeclaration varDeclaration, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
appendVariableTypeAndName
protected LightweightTypeReference appendVariableTypeAndName(XVariableDeclaration varDeclaration, ITreeAppendable appendable)
-
_toJavaStatement
protected void _toJavaStatement(XWhileExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
_toJavaStatement
protected void _toJavaStatement(XDoWhileExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
_toJavaStatement
protected void _toJavaStatement(XBasicForLoopExpression expr, ITreeAppendable b, boolean isReferenced)
-
canCompileToJavaBasicForStatement
protected boolean canCompileToJavaBasicForStatement(XBasicForLoopExpression expr, ITreeAppendable b)
-
toJavaBasicForStatement
protected void toJavaBasicForStatement(XBasicForLoopExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
toJavaWhileStatement
protected void toJavaWhileStatement(XBasicForLoopExpression expr, ITreeAppendable b, boolean isReferenced)
-
_toJavaStatement
protected void _toJavaStatement(XForLoopExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
appendForLoopParameter
protected void appendForLoopParameter(XForLoopExpression expr, ITreeAppendable appendable)
-
getForLoopParameterType
protected org.eclipse.xtext.common.types.JvmTypeReference getForLoopParameterType(XForLoopExpression expr)
-
getParameterType
protected org.eclipse.xtext.common.types.JvmTypeReference getParameterType(org.eclipse.xtext.common.types.JvmFormalParameter declaredParam)
-
_toJavaStatement
protected void _toJavaStatement(XConstructorCall expr, ITreeAppendable b, boolean isReferenced)
-
constructorCallToJavaExpression
protected void constructorCallToJavaExpression(XConstructorCall expr, ITreeAppendable b)
-
appendConstructedTypeName
protected void appendConstructedTypeName(XConstructorCall constructorCall, ITreeAppendable typeAppendable)
-
getLocationWithNewKeyword
protected org.eclipse.xtext.generator.trace.ILocationData getLocationWithNewKeyword(XConstructorCall call)
-
_toJavaExpression
protected void _toJavaExpression(XConstructorCall expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XReturnExpression expr, ITreeAppendable b, boolean isReferenced)
- Parameters:
isReferenced- unused in this context but necessary for dispatch signature
-
_toJavaExpression
protected void _toJavaExpression(XCastedExpression expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XCastedExpression expr, ITreeAppendable b, boolean isReferenced)
-
_toJavaStatement
protected void _toJavaStatement(XIfExpression expr, ITreeAppendable b, boolean isReferenced)
-
_toJavaExpression
protected void _toJavaExpression(XIfExpression expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)
-
_toJavaSwitchStatement
protected void _toJavaSwitchStatement(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)
-
declareLocalVariable
protected java.lang.String declareLocalVariable(XSwitchExpression expr, ITreeAppendable b)
-
getSwitchLocalVariableName
protected java.lang.String getSwitchLocalVariableName(XSwitchExpression expr, ITreeAppendable b)
-
declareAndAppendSwitchSyntheticLocalVariable
protected java.lang.String declareAndAppendSwitchSyntheticLocalVariable(XSwitchExpression expr, java.lang.String name, ITreeAppendable b)
-
createSwitchLocalVariableName
protected java.lang.String createSwitchLocalVariableName(XSwitchExpression expr)
-
getSwitchLocalVariableSimpleName
protected java.lang.String getSwitchLocalVariableSimpleName(XSwitchExpression expr)
-
getSwitchLocalVariableType
protected org.eclipse.xtext.common.types.JvmTypeReference getSwitchLocalVariableType(XSwitchExpression expr)
-
declareSwitchResultVariable
protected java.lang.String declareSwitchResultVariable(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)
-
executeThenPart
protected void executeThenPart(XSwitchExpression expr, java.lang.String switchResultName, XExpression then, ITreeAppendable b, boolean isReferenced)
-
_toJavaIfElseStatement
protected void _toJavaIfElseStatement(XSwitchExpression expr, ITreeAppendable b, boolean isReferenced)
-
_toJavaIfStatement
protected void _toJavaIfStatement(XCasePart casePart, java.util.List<XCasePart> fallThroughCases, XSwitchExpression expr, XExpression then, ITreeAppendable b, boolean isReferenced, java.lang.String switchResultName, java.lang.String matchedVariable, java.lang.String variableName, XSwitchExpressionCompilationState state)
-
closeBlock
protected void closeBlock(ITreeAppendable appendable)
Close a block of code.- Parameters:
appendable- the receiver of the block closing code.
-
appendOpenIfStatement
protected ITreeAppendable appendOpenIfStatement(XCasePart casePart, ITreeAppendable b, java.lang.String matchedVariable, java.lang.String variableName, XSwitchExpressionCompilationState state)
-
appendCloseIfStatement
protected ITreeAppendable appendCloseIfStatement(XCasePart casePart, ITreeAppendable caseAppendable, XSwitchExpressionCompilationState state)
-
isCompiledToJavaSwitch
protected boolean isCompiledToJavaSwitch(XSwitchExpression expr)
Determine whether the given switch expression should be compiled to a Java switch for Java version 6 or lower.
-
isCompiledToJava7Switch
protected boolean isCompiledToJava7Switch(XSwitchExpression expr)
Determine whether the given switch expression should be compiled to a Java switch for Java version 7 or higher.
-
allCasesAreExitedEarly
protected boolean allCasesAreExitedEarly(XSwitchExpression expr)
-
isSimpleFeatureCall
protected boolean isSimpleFeatureCall(XExpression switch1)
-
getSwitchExpressionKey
protected java.lang.Object getSwitchExpressionKey(XSwitchExpression expr)
-
getReferenceName
protected java.lang.String getReferenceName(XExpression expr, ITreeAppendable b)
- Overrides:
getReferenceNamein classAbstractXbaseCompiler- Returns:
- the variable name under which the result of the expression is stored. Returns
nullif the expression hasn't been assigned to a local variable before.
-
getLocationOfDefault
protected org.eclipse.xtext.generator.trace.ILocationData getLocationOfDefault(XSwitchExpression expression)
-
_toJavaExpression
protected void _toJavaExpression(XSwitchExpression expr, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XSynchronizedExpression synchronizedExpression, ITreeAppendable b, boolean isReferenced)
-
_toJavaExpression
protected void _toJavaExpression(XSynchronizedExpression synchronizedExpression, ITreeAppendable b)
-
_toJavaExpression
protected void _toJavaExpression(XReturnExpression returnExpression, ITreeAppendable b)
-
_toJavaExpression
protected void _toJavaExpression(XThrowExpression throwExpression, ITreeAppendable b)
-
_toJavaStatement
protected void _toJavaStatement(XClosure closure, ITreeAppendable b, boolean isReferenced)
-
toAnonymousClass
protected ITreeAppendable toAnonymousClass(XClosure closure, ITreeAppendable b, LightweightTypeReference type, org.eclipse.xtext.common.types.JvmOperation operation)
-
needSyntheticSelfVariable
protected boolean needSyntheticSelfVariable(XClosure closure, LightweightTypeReference typeRef)
-
appendTypeParameters
protected void appendTypeParameters(ITreeAppendable appendable, org.eclipse.xtext.common.types.JvmOperation operation, LightweightTypeReference instantiatedType)
Append the type parameters of the given operation.- Parameters:
appendable- the receiver of the Java code.operation- the source operation.instantiatedType- the type of the operation container.
-
appendClosureParameter
protected void appendClosureParameter(org.eclipse.xtext.common.types.JvmFormalParameter closureParam, LightweightTypeReference parameterType, ITreeAppendable appendable)
-
appendClosureParameterVarArgs
protected void appendClosureParameterVarArgs(org.eclipse.xtext.common.types.JvmFormalParameter closureParam, LightweightTypeReference parameterType, ITreeAppendable appendable)
-
appendOperationVisibility
protected void appendOperationVisibility(ITreeAppendable b, org.eclipse.xtext.common.types.JvmOperation operation)
-
getClosureOperationParameterType
protected LightweightTypeReference getClosureOperationParameterType(LightweightTypeReference closureType, org.eclipse.xtext.common.types.JvmOperation operation, int i)
-
getClosureOperationReturnType
protected LightweightTypeReference getClosureOperationReturnType(LightweightTypeReference closureType, org.eclipse.xtext.common.types.JvmOperation operation)
-
toLambda
protected ITreeAppendable toLambda(XClosure closure, ITreeAppendable b, LightweightTypeReference type, org.eclipse.xtext.common.types.JvmOperation operation, boolean writeExplicitTargetType)
-
_toJavaExpression
protected void _toJavaExpression(XClosure closure, ITreeAppendable b)
-
canCompileToJavaLambda
protected boolean canCompileToJavaLambda(XClosure closure, LightweightTypeReference typeRef, org.eclipse.xtext.common.types.JvmOperation operation)
-
internalCanCompileToJavaExpression
protected boolean internalCanCompileToJavaExpression(XExpression expression, ITreeAppendable appendable)
- Overrides:
internalCanCompileToJavaExpressionin classFeatureCallCompiler- Parameters:
expression- to be used by subtypesappendable- to be used by subtypes
-
isVariableDeclarationRequired
protected boolean isVariableDeclarationRequired(XExpression expr, ITreeAppendable b, boolean recursive)
Description copied from class:AbstractXbaseCompilerwhether an expression needs to be declared in a statement If an expression has side effects this method must return true for it.- Overrides:
isVariableDeclarationRequiredin classFeatureCallCompiler- Parameters:
expr- the checked expressionb- the appendable which represents the current compiler staterecursive- determines if the siblings of the expression shall be investigated too to determine the is variable declaration required status
-
_toJavaExpression
protected void _toJavaExpression(XAnnotation annotation, ITreeAppendable b)
-
-