Packages

c

scala.tools.tasty

TastyReader

class TastyReader extends AnyRef

A byte array buffer that can be filled with bytes or natural numbers in TASTY format, and that supports reading and patching addresses represented as natural numbers.

Source
TastyReader.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TastyReader
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new TastyReader(bytes: Array[Byte])
  2. new TastyReader(bytes: Array[Byte], start: Int, end: Int, base: Int = 0)

    bytes

    The array containing data

    start

    The position from which to read

    end

    The position one greater than the last byte to be read

    base

    The index referenced by the logical zero address Addr(0)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from TastyReader toany2stringadd[TastyReader] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (TastyReader, B)
    Implicit
    This member is added by an implicit conversion from TastyReader toArrowAssoc[TastyReader] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def addr(idx: Int): Addr
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. val base: Int
  9. val bytes: Array[Byte]
  10. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  11. def collectWhile[T](cond: => Boolean)(op: => T): List[T]

    Perform op while cindition cond holds and collect results in a list.

  12. def currentAddr: Addr

    The address of the next byte to read

  13. def doUntil(end: Addr)(op: => Unit): Unit
  14. def endAddr: Addr

    the address one greater than the last brte to read

  15. def ensuring(cond: (TastyReader) => Boolean, msg: => Any): TastyReader
    Implicit
    This member is added by an implicit conversion from TastyReader toEnsuring[TastyReader] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: (TastyReader) => Boolean): TastyReader
    Implicit
    This member is added by an implicit conversion from TastyReader toEnsuring[TastyReader] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: Boolean, msg: => Any): TastyReader
    Implicit
    This member is added by an implicit conversion from TastyReader toEnsuring[TastyReader] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: Boolean): TastyReader
    Implicit
    This member is added by an implicit conversion from TastyReader toEnsuring[TastyReader] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  21. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  22. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  23. def goto(addr: Addr): Unit

    Set read position to the one pointed to by addr

  24. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  25. def ifBefore[T](end: Addr)(op: => T, default: T): T

    If before given end address, the result of op, otherwise default

  26. def index(addr: Addr): Int
  27. def isAtEnd: Boolean

    Have all bytes been read?

  28. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  29. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  30. def nextByte: Int

    Returns the next byte of data as a natural number without advancing the read position

  31. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  32. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  33. def readAddr(): Addr

    Read a natural number and return as an address

  34. def readByte(): Int

    Read a byte of data.

  35. def readBytes(n: Int): Array[Byte]

    Read the next n bytes of data.

  36. def readEnd(): Addr

    Read a length number and return the absolute end address implied by it, given as

    + .

    Read a length number and return the absolute end address implied by it, given as

    + .

  37. def readInt(): Int

    Read an integer number in 2's complement big endian format, base 128.

    Read an integer number in 2's complement big endian format, base 128. All but the last digits have bit 0x80 set.

  38. def readLongInt(): Long

    Read a long integer number in 2's complement big endian format, base 128.

  39. def readLongNat(): Long

    Read a natural number fitting in a Long in big endian format, base 128.

    Read a natural number fitting in a Long in big endian format, base 128. All but the last digits have bit 0x80 set.

  40. def readNameRef(): NameRef

    Read a natural number and return as a NameRef

  41. def readNat(): Int

    Read a natural number fitting in an Int in big endian format, base 128.

    Read a natural number fitting in an Int in big endian format, base 128. All but the last digits have bit 0x80 set.

  42. def readUncompressedLong(): Long

    Read an uncompressed Long stored in 8 bytes in big endian format

  43. def startAddr: Addr

    The address of the first byte to read, respectively byte that was read

  44. def subReader(start: Addr, end: Addr): TastyReader

    A new reader over the same array with the same address base, but with specified start and end positions

  45. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  46. def toString(): String
    Definition Classes
    AnyRef → Any
  47. def until[T](end: Addr)(op: => T): List[T]

    Perform op until end address is reached and collect results in a list.

  48. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  49. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  50. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Deprecated Value Members

  1. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from TastyReader toStringFormat[TastyReader] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  2. def [B](y: B): (TastyReader, B)
    Implicit
    This member is added by an implicit conversion from TastyReader toArrowAssoc[TastyReader] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromTastyReader to any2stringadd[TastyReader]

Inherited by implicit conversion StringFormat fromTastyReader to StringFormat[TastyReader]

Inherited by implicit conversion Ensuring fromTastyReader to Ensuring[TastyReader]

Inherited by implicit conversion ArrowAssoc fromTastyReader to ArrowAssoc[TastyReader]

Ungrouped