case class LabelStack(parent: LabelStack, target: Target, arity: Int, pushed: Int) extends Product with Serializable
A stack of labels, each one tracking following information:
- the parent label
- its target on break
- its arity (i.e. the number of return value to pop and return on break)
- the number of pushed value so far for the current label
At top-level, the parent is
nulland target is0. No checks need to be performed because the compiler is only called if the program is correct, in which case all breaks target an existing label. The top-level label is a special synthesized one, representing the top-level block of the function body.
- Source
- Compiler.scala
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- LabelStack
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Instance Constructors
- new LabelStack(parent: LabelStack, target: Target, arity: Int, pushed: Int)
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
- val arity: Int
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def break(lbll: Int): (LabelStack, Int)
- Annotations
- @inline()
- 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
- def isToplevel: Boolean
- Annotations
- @inline()
- 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()
- val parent: LabelStack
- def pop(n: Int): LabelStack
- Annotations
- @inline()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def push(n: Int): LabelStack
- Annotations
- @inline()
- val pushed: Int
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val target: Target
- 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
- Deprecated
(Since version ) see corresponding Javadoc for more information.