Class/Object

pli

VM

Related Docs: object VM | package pli

Permalink

class VM extends AnyRef

Simple virtual machine, that is, bytecode interpreter.

To create a virtual machine, use the companion object’s apply methods.

For debugging, consider to use a debug virtual machine instead.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. VM
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new VM(bytecode: Array[Int])

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. var codepointer: Int

    Permalink

    The adress in the bytecode array to read next.

  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def execute(adress: Int, opcode: Int, parameter: Int = 0): Unit

    Permalink

    Executes one already fetched and decoded bytecode instruction.

  10. def fetch(): Int

    Permalink

    Fetches next integer from the bytecode array.

  11. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. def get(offset: Int): Int

    Permalink

    Fetches a value from an arbitrary offset in the virtual machine's stack.

  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  15. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def pop(): Int

    Permalink

    Pops a value from the virtual machine's stack.

  20. def push(value: Int): Unit

    Permalink

    Pushes a value to the virtual machine's stack.

  21. def put(offset: Int, value: Int): Unit

    Permalink

    Stores a value at an arbitrary offset in the virtual machine's stack.

    Stores a value at an arbitrary offset in the virtual machine's stack. The value previously stored there is overwritten with the given value.

  22. def run(): Unit

    Permalink

    Fetches, decodes and executes bytecode instructions until an exit instruction is executed.

  23. var running: Boolean

    Permalink

    Whether we are currently running.

  24. var stack: Stack[Int]

    Permalink

    The virtual machine's stack.

  25. def step(): Unit

    Permalink

    Fetches, decodes and executes one bytecode instruction.

  26. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  27. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped