Class BlangXbaseCompiler

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
org.eclipse.xtext.xbase.compiler.XbaseCompiler
ca.ubc.stat.blang.compiler.BlangXbaseCompiler

public class BlangXbaseCompiler
extends org.eclipse.xtext.xbase.compiler.XbaseCompiler
  • Field Summary

    Fields
    Modifier and Type Field Description
    static java.util.HashMap<java.lang.String,​java.util.HashMap<java.lang.String,​org.eclipse.xtext.xbase.lib.Functions.Function2<org.eclipse.xtext.xbase.compiler.Later,​org.eclipse.xtext.xbase.compiler.output.ITreeAppendable,​org.eclipse.xtext.xbase.compiler.output.ITreeAppendable>>> typeConversionMap
    Map of available type conversions.
  • Constructor Summary

    Constructors
    Constructor Description
    BlangXbaseCompiler()  
  • Method Summary

    Modifier and Type Method Description
    protected void doConversion​(org.eclipse.xtext.xbase.typesystem.references.LightweightTypeReference toBeConvertedTo, org.eclipse.xtext.xbase.typesystem.references.LightweightTypeReference actual, org.eclipse.xtext.xbase.compiler.output.ITreeAppendable appendable, org.eclipse.xtext.xbase.XExpression context, org.eclipse.xtext.xbase.compiler.Later expression)
    left: totoBeConvertedTo right: actualType

    Methods inherited from class org.eclipse.xtext.xbase.compiler.XbaseCompiler

    _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaExpression, _toJavaIfElseStatement, _toJavaIfStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaStatement, _toJavaSwitchStatement, allCasesAreExitedEarly, appendCatchAndFinally, appendCatchClause, appendCatchClauseParameter, appendCloseIfStatement, appendClosureParameter, appendClosureParameterVarArgs, appendConstructedTypeName, appendFinallyWithResources, appendForLoopParameter, appendImmutableCollectionExpression, appendOpenIfStatement, appendOperationVisibility, appendSneakyThrow, appendTypeArguments, appendTypeParameters, appendVariableTypeAndName, bracesAreAddedByOuterStructure, canCompileToJavaBasicForStatement, canCompileToJavaLambda, canUseArrayInitializer, canUseArrayInitializerImpl, closeBlock, constructorCallToJavaExpression, createSwitchLocalVariableName, declareAndAppendSwitchSyntheticLocalVariable, declareLocalVariable, declareSwitchResultVariable, doInternalToJavaStatement, executeThenPart, getActualArguments, getClosureOperationParameterType, getClosureOperationReturnType, getCollectionElementType, getForLoopParameterType, getLocationOfDefault, getLocationWithNewKeyword, getParameterType, getReferenceName, getSwitchExpressionKey, getSwitchLocalVariableName, getSwitchLocalVariableSimpleName, getSwitchLocalVariableType, internalCanCompileToJavaExpression, internalToConvertedExpression, isAtLeast, isCompiledToJava7Switch, isCompiledToJavaSwitch, isSimpleFeatureCall, isType, isVariableDeclarationRequired, needSyntheticSelfVariable, resolveSynonymType, resolveType, toAnonymousClass, toJavaBasicForStatement, toJavaWhileStatement, toLambda

    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, 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • typeConversionMap

      public static final java.util.HashMap<java.lang.String,​java.util.HashMap<java.lang.String,​org.eclipse.xtext.xbase.lib.Functions.Function2<org.eclipse.xtext.xbase.compiler.Later,​org.eclipse.xtext.xbase.compiler.output.ITreeAppendable,​org.eclipse.xtext.xbase.compiler.output.ITreeAppendable>>> typeConversionMap
      Map of available type conversions. It works in two steps: actual -> toBeConvertedTo -> converter. Converters are lambdas taking two arguments, Later and ITreeAppendable, as given to #doConversion()
  • Constructor Details

    • BlangXbaseCompiler

      public BlangXbaseCompiler()
  • Method Details

    • doConversion

      protected void doConversion​(org.eclipse.xtext.xbase.typesystem.references.LightweightTypeReference toBeConvertedTo, org.eclipse.xtext.xbase.typesystem.references.LightweightTypeReference actual, org.eclipse.xtext.xbase.compiler.output.ITreeAppendable appendable, org.eclipse.xtext.xbase.XExpression context, org.eclipse.xtext.xbase.compiler.Later expression)
      left: totoBeConvertedTo right: actualType
      Overrides:
      doConversion in class org.eclipse.xtext.xbase.compiler.TypeConvertingCompiler