org.eclipse.xtext.xbase.compiler
Class FeatureCallCompiler
java.lang.Object
org.eclipse.xtext.xbase.compiler.AbstractXbaseCompiler
org.eclipse.xtext.xbase.compiler.TypeConvertingCompiler
org.eclipse.xtext.xbase.compiler.LiteralsCompiler
org.eclipse.xtext.xbase.compiler.FeatureCallCompiler
- Direct Known Subclasses:
- XbaseCompiler
@NonNullByDefault
public class FeatureCallCompiler
- extends LiteralsCompiler
- Author:
- Sven Efftinge - Initial contribution and API
Method Summary |
protected void |
_toJavaExpression(XAbstractFeatureCall call,
ITreeAppendable b)
|
protected void |
_toJavaStatement(XAbstractFeatureCall expr,
ITreeAppendable b,
boolean isReferenced)
|
protected void |
_toJavaStatement(XFeatureCall expr,
ITreeAppendable b,
boolean isReferenced)
|
protected void |
appendArgument(XExpression argument,
ITreeAppendable b)
|
protected void |
appendArgument(XExpression argument,
ITreeAppendable b,
boolean doLineWrappingIfSourceWasWrapped)
|
protected void |
appendArguments(java.util.List<? extends XExpression> arguments,
ITreeAppendable b)
|
protected void |
appendArguments(java.util.List<? extends XExpression> arguments,
ITreeAppendable b,
boolean shouldWrapLine)
|
protected void |
appendFeatureCall(XAbstractFeatureCall call,
ITreeAppendable b)
|
protected void |
appendInlineFeatureCall(XAbstractFeatureCall call,
ITreeAppendable b)
|
protected void |
appendNullValue(JvmTypeReference type,
org.eclipse.emf.ecore.EObject context,
ITreeAppendable b)
|
protected boolean |
appendReceiver(XAbstractFeatureCall call,
ITreeAppendable b,
boolean isExpressionContext)
|
protected ITreeAppendable |
appendTypeArguments(XAbstractFeatureCall call,
ITreeAppendable original)
|
protected void |
assignmentToJavaExpression(XAssignment expr,
ITreeAppendable b,
boolean isExpressionContext)
|
protected void |
doInternalToJavaStatement(XExpression obj,
ITreeAppendable appendable,
boolean isReferenced)
|
protected void |
featureCalltoJavaExpression(XAbstractFeatureCall call,
ITreeAppendable b,
boolean isExpressionContext)
|
protected void |
generateShortCircuitInvocation(XAbstractFeatureCall binaryOperation,
ITreeAppendable b)
|
protected java.lang.String |
getDefaultLiteral(JvmPrimitiveType primitiveType)
|
protected ILocationInFileProvider |
getLocationInFileProvider()
|
protected ILocationData |
getLocationOfTypeArguments(XAbstractFeatureCall call)
|
protected ILocationData |
getLocationWithoutTypeArguments(XAbstractFeatureCall call)
|
protected ILocationData |
getLocationWithTypeArguments(XAbstractFeatureCall call)
|
protected ILogicalContainerProvider |
getLogicalContainerProvider()
|
protected ILocationData |
getStaticQualifierLocation(XFeatureCall call)
|
protected JvmTypeReference |
getUpperBound(XAbstractFeatureCall call,
org.eclipse.emf.common.util.EList<JvmTypeConstraint> constraints)
|
protected void |
internalToConvertedExpression(XExpression obj,
ITreeAppendable appendable)
|
protected boolean |
isDeclaredInNewLine(XExpression obj)
|
protected boolean |
isHidden(INode node)
|
protected boolean |
isMemberCall(XAbstractFeatureCall call)
|
protected boolean |
isStatic(JvmIdentifiableElement feature)
|
protected boolean |
isVariableDeclarationRequired(XExpression expr,
ITreeAppendable b)
whether an expression needs to be declared in a statement
If an expression has side effects this method must return true for it. |
protected void |
prepareExpression(XExpression arg,
ITreeAppendable b)
|
protected ILocationData |
toLocationData(java.util.List<INode> nodes)
|
Methods inherited from class org.eclipse.xtext.xbase.compiler.LiteralsCompiler |
_toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, generateComment, generateComment |
Methods inherited from class org.eclipse.xtext.xbase.compiler.TypeConvertingCompiler |
convertArrayToList, convertFunctionType, convertListToArray, convertMultiType, convertPrimitiveToWrapper, convertWrapperToPrimitive, doConversion, getContextProvider, identifierStartWith, internalToConvertedExpression, internalToJavaExpression, isFunction, isList, isProcedure |
Methods inherited from class org.eclipse.xtext.xbase.compiler.AbstractXbaseCompiler |
_toJavaExpression, _toJavaStatement, appendDefaultLiteral, canCompileToJavaExpression, compile, compile, compile, compileAsJavaExpression, declareFreshLocalVariable, declareSyntheticVariable, generateCheckedExceptionHandling, getDefaultValueLiteral, getFavoriteVariableName, getNameProvider, getPrimitives, getReferenceName, getTypeConformanceComputer, getTypeForVariableDeclaration, getTypeProvider, getTypeReferences, getVarName, internalCanCompileToJavaExpression, internalToJavaStatement, isPrimitiveVoid, isReferenceToForeignTypeParameter, makeJavaIdentifier, needsSneakyThrow, resolveMultiType, serialize, serialize, serialize, setNameProvider, setTypeReferences, toJavaExpression, toJavaStatement |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FeatureCallCompiler
public FeatureCallCompiler()
internalToConvertedExpression
protected void internalToConvertedExpression(XExpression obj,
ITreeAppendable appendable)
- Overrides:
internalToConvertedExpression
in class LiteralsCompiler
doInternalToJavaStatement
protected void doInternalToJavaStatement(XExpression obj,
ITreeAppendable appendable,
boolean isReferenced)
- Overrides:
doInternalToJavaStatement
in class LiteralsCompiler
_toJavaStatement
protected void _toJavaStatement(XAbstractFeatureCall expr,
ITreeAppendable b,
boolean isReferenced)
_toJavaStatement
protected void _toJavaStatement(XFeatureCall expr,
ITreeAppendable b,
boolean isReferenced)
generateShortCircuitInvocation
protected void generateShortCircuitInvocation(XAbstractFeatureCall binaryOperation,
ITreeAppendable b)
isVariableDeclarationRequired
protected boolean isVariableDeclarationRequired(XExpression expr,
ITreeAppendable b)
- Description copied from class:
AbstractXbaseCompiler
- whether an expression needs to be declared in a statement
If an expression has side effects this method must return true for it.
- Overrides:
isVariableDeclarationRequired
in class LiteralsCompiler
- Parameters:
expr
- the checked expressionb
- the appendable which represents the current compiler state
prepareExpression
protected void prepareExpression(XExpression arg,
ITreeAppendable b)
_toJavaExpression
protected void _toJavaExpression(XAbstractFeatureCall call,
ITreeAppendable b)
featureCalltoJavaExpression
protected void featureCalltoJavaExpression(XAbstractFeatureCall call,
ITreeAppendable b,
boolean isExpressionContext)
appendTypeArguments
protected ITreeAppendable appendTypeArguments(XAbstractFeatureCall call,
ITreeAppendable original)
getLocationWithoutTypeArguments
@Nullable
protected ILocationData getLocationWithoutTypeArguments(XAbstractFeatureCall call)
getLocationWithTypeArguments
@Nullable
protected ILocationData getLocationWithTypeArguments(XAbstractFeatureCall call)
getLocationOfTypeArguments
@Nullable
protected ILocationData getLocationOfTypeArguments(XAbstractFeatureCall call)
toLocationData
@Nullable
protected ILocationData toLocationData(java.util.List<INode> nodes)
isHidden
protected boolean isHidden(INode node)
appendReceiver
protected boolean appendReceiver(XAbstractFeatureCall call,
ITreeAppendable b,
boolean isExpressionContext)
getStaticQualifierLocation
@Nullable
protected ILocationData getStaticQualifierLocation(XFeatureCall call)
appendNullValue
protected void appendNullValue(JvmTypeReference type,
org.eclipse.emf.ecore.EObject context,
ITreeAppendable b)
getDefaultLiteral
protected java.lang.String getDefaultLiteral(JvmPrimitiveType primitiveType)
isMemberCall
protected boolean isMemberCall(XAbstractFeatureCall call)
isStatic
protected boolean isStatic(JvmIdentifiableElement feature)
assignmentToJavaExpression
protected void assignmentToJavaExpression(XAssignment expr,
ITreeAppendable b,
boolean isExpressionContext)
appendFeatureCall
protected void appendFeatureCall(XAbstractFeatureCall call,
ITreeAppendable b)
appendInlineFeatureCall
protected void appendInlineFeatureCall(XAbstractFeatureCall call,
ITreeAppendable b)
appendArguments
protected void appendArguments(java.util.List<? extends XExpression> arguments,
ITreeAppendable b)
appendArguments
protected void appendArguments(java.util.List<? extends XExpression> arguments,
ITreeAppendable b,
boolean shouldWrapLine)
appendArgument
protected void appendArgument(XExpression argument,
ITreeAppendable b)
appendArgument
protected void appendArgument(XExpression argument,
ITreeAppendable b,
boolean doLineWrappingIfSourceWasWrapped)
isDeclaredInNewLine
protected boolean isDeclaredInNewLine(XExpression obj)
getUpperBound
protected JvmTypeReference getUpperBound(XAbstractFeatureCall call,
org.eclipse.emf.common.util.EList<JvmTypeConstraint> constraints)
getLogicalContainerProvider
protected ILogicalContainerProvider getLogicalContainerProvider()
getLocationInFileProvider
protected ILocationInFileProvider getLocationInFileProvider()