class NonStreamCodeGenerator extends AnyRef
Class for the translation of TeSSLa expressions of non-stream type
- Alphabetic
- By Inheritance
- NonStreamCodeGenerator
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new NonStreamCodeGenerator(extSpec: ExtendedSpecification)
Type Members
- case class TypeArgManagement(resMap: Map[core.TesslaAST.Core.Identifier, core.TesslaAST.Core.Type], unappliedArgs: Seq[core.TesslaAST.Core.Type]) extends Product with Serializable
Class for managing type arguments
Class for managing type arguments
- resMap
Map representing depiction from type arg names to types
- unappliedArgs
Types where type application has already been processed but not the expression where the types are applied to
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def translateAssignment(id: core.TesslaAST.Core.Identifier, e: core.TesslaAST.Core.ExpressionArg, tm: TypeArgManagement, defContext: Map[core.TesslaAST.Core.Identifier, DefinitionExpression]): ImpLanStmt
Translates an assignment from TeSSLa to ImpLan
Translates an assignment from TeSSLa to ImpLan
- id
The id which is assigned
- e
The expression assigned to id
- tm
The TypeArgManagement to resolve type parameters
- defContext
Definition context depicting all var names in the current scope to their definition expression
- returns
The translated assignment
- def translateBody(body: Map[core.TesslaAST.Core.Identifier, DefinitionExpression], ret: core.TesslaAST.Core.ExpressionArg, tm: TypeArgManagement, defContext: Map[core.TesslaAST.Core.Identifier, DefinitionExpression]): Seq[ImpLanStmt]
Translates a block of statements with return expression (i.e.
Translates a block of statements with return expression (i.e. the body of a lambda) to IntermediateCode.ImpLanStmts
- body
The sequence of statements to be translated
- ret
The return expression of the block
- tm
The TypeArgManagement to resolve type parameters
- defContext
Definition context depicting all var names in the current scope to their definition expression
- returns
The translated block. Contains a IntermediateCode.ReturnStatement at the end
- def translateExpressionArg(e: core.TesslaAST.Core.ExpressionArg, tm: TypeArgManagement, defContext: Map[core.TesslaAST.Core.Identifier, DefinitionExpression] = Map()): ImpLanExpr
Translates an ExpressionArg to a corresponding IntermediateCode.ImpLanExpr
Translates an ExpressionArg to a corresponding IntermediateCode.ImpLanExpr
- e
The expression to be translated
- tm
The TypeArgManagement to resolve type parameters
- defContext
Definition context depicting all var names in the current scope to their definition expression
- returns
The translated expression
- def translateExtern(e: core.TesslaAST.Core.ExternExpression, tm: TypeArgManagement, defContext: Map[core.TesslaAST.Core.Identifier, DefinitionExpression]): ImpLanExpr
- e
Translates an ExternExpression. If the extern is of function type a lambda expression is wrapped around it. If the extern is directly applied this lambda is most likely unnecessary and this function should not be used for translation of the called extern.
- tm
The TypeArgManagement to resolve type parameters
- defContext
Definition context depicting all var names in the current scope to their definition expression
- returns
The translated expression
- def translateFunction(e: core.TesslaAST.Core.FunctionExpression, tm: TypeArgManagement, defContext: Map[core.TesslaAST.Core.Identifier, DefinitionExpression]): ImpLanExpr
Translates a TeSSLa Core FunctionExpression to an ImpLan IntermediateCode.LambdaExpression
Translates a TeSSLa Core FunctionExpression to an ImpLan IntermediateCode.LambdaExpression
- e
The function to be translated
- tm
The TypeArgManagement to resolve type parameters
- defContext
Definition context depicting all var names in the current scope to their definition expression
- returns
The translated function expression
- def translateFunctionCall(e: core.TesslaAST.Core.ExpressionArg, args: Seq[ImpLanExpr], tm: TypeArgManagement, defContext: Map[core.TesslaAST.Core.Identifier, DefinitionExpression] = Map()): ImpLanExpr
Translates a function application to ImpLan
Translates a function application to ImpLan
- e
The function expression which is applied
- args
The argument expressions of the application
- tm
The TypeArgManagement to resolve type parameters
- defContext
Definition context depicting all var names in the current scope to their definition expression
- returns
The translated function application
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- object TypeArgManagement extends Serializable
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated