de.uni_luebeck.isp.tessla.tessla_compiler.NonStreamCodeGenerator
TypeArgManagement
Companion object TypeArgManagement
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
- 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
- Alphabetic
- By Inheritance
- TypeArgManagement
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new TypeArgManagement(resMap: Map[core.TesslaAST.Core.Identifier, core.TesslaAST.Core.Type], unappliedArgs: Seq[core.TesslaAST.Core.Type])
- 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
- final def getClass(): Class[_ <: AnyRef]
- 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()
- def parsKnown(pars: Seq[core.TesslaAST.Core.Identifier]): TypeArgManagement
Processes the sub-expression after a type application and adds the type arg -> type relation to the resMap.
Processes the sub-expression after a type application and adds the type arg -> type relation to the resMap. unappliedArgs is cleared. The types are connected to the arguments in the order they appeared in the type application.
- pars
The type params of the sub-expression. If number does not match previous typeApp call as much type args as possible are connected to types.
- returns
An updated TypeArgManagement
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val resMap: Map[core.TesslaAST.Core.Identifier, core.TesslaAST.Core.Type]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def typeApp(types: Seq[core.TesslaAST.Core.Type]): TypeArgManagement
Process a type application.
Process a type application. The new types are stored in unappliedArgs until the expression they are applied on is hit. If unappliedArgs already contains types they are overwritten.
- types
The types which are applied to the subexpression
- returns
An updated TypeArgManagement
- val unappliedArgs: Seq[core.TesslaAST.Core.Type]
- 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])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated