c

io.bullet.borer

InputReader

final class InputReader[Config <: Config] extends AnyRef

Stateful, mutable abstraction for reading a stream of CBOR or JSON data from the given input.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InputReader
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new InputReader(parser: Parser[_], directParser: DirectJsonParser, receiverWrapper: Wrapper[Config], config: Config, target: Target)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply[T](implicit arg0: Decoder[T]): T
    Annotations
    @inline()
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def bufferUnsizedBytes[Bytes]()(implicit byteAccess: ByteAccess[Bytes]): InputReader.this.type
  7. def bufferUnsizedTextBytes[Bytes]()(implicit byteAccess: ByteAccess[Bytes]): InputReader.this.type

    If the current data item is an unsized Text item it'll be buffered and converted into a sized text item.

  8. def charsCompare(value: Array[Char]): Int

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  10. def cursor: Long
    Annotations
    @inline()
  11. def dataItem(): Int
    Annotations
    @inline()
  12. def decodeTextBytes(): InputReader.this.type

    If the current data item is a sized or unsized Text item it'll be buffered and decoded into a Chars data item.

    If the current data item is a sized or unsized Text item it'll be buffered and decoded into a Chars data item.

    Annotations
    @tailrec()
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  16. def has(item: Int): Boolean

    Checks whether the next data item is of the given type.

    Checks whether the next data item is of the given type.

    Example: reader.has(DataItem.Int)

    Annotations
    @inline()
  17. def hasAnyOf(mask: Int): Boolean

    Checks whether the next data item type is masked in the given bit mask.

    Checks whether the next data item type is masked in the given bit mask.

    Example: reader.hasAnyOf(DataItem.Int | DataItem.Float)

    Annotations
    @inline()
  18. def hasArrayHeader(length: Long): Boolean
    Annotations
    @inline()
  19. def hasArrayHeader(length: Int): Boolean
    Annotations
    @inline()
  20. def hasArrayHeader: Boolean
    Annotations
    @inline()
  21. def hasArrayStart: Boolean
    Annotations
    @inline()
  22. def hasBoolean(value: Boolean): Boolean
    Annotations
    @inline()
  23. def hasBoolean: Boolean
    Annotations
    @inline()
  24. def hasBreak: Boolean
    Annotations
    @inline()
  25. def hasByte(value: Byte): Boolean
    Annotations
    @inline()
  26. def hasByte: Boolean
    Annotations
    @inline()
  27. def hasByteArray: Boolean
    Annotations
    @inline()
  28. def hasBytes: Boolean
    Annotations
    @inline()
  29. def hasBytesStart: Boolean
    Annotations
    @inline()
  30. def hasChar(value: Char): Boolean
    Annotations
    @inline()
  31. def hasChar: Boolean
    Annotations
    @inline()
  32. def hasChars(value: Array[Char]): Boolean

    Tests the next data item for equality with the given Array[Char].

    Tests the next data item for equality with the given Array[Char]. NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

    Annotations
    @inline()
  33. def hasChars: Boolean
    Annotations
    @inline()
  34. def hasDouble(value: Double): Boolean
    Annotations
    @inline()
  35. def hasDouble: Boolean
    Annotations
    @inline()
  36. def hasEndOfInput: Boolean
    Annotations
    @inline()
  37. def hasFloat(value: Float): Boolean
    Annotations
    @inline()
  38. def hasFloat: Boolean
    Annotations
    @inline()
  39. def hasFloat16(value: Float): Boolean
    Annotations
    @inline()
  40. def hasFloat16: Boolean
    Annotations
    @inline()
  41. def hasInt(value: Int): Boolean
    Annotations
    @inline()
  42. def hasInt: Boolean
    Annotations
    @inline()
  43. def hasLong(value: Long): Boolean
    Annotations
    @inline()
  44. def hasLong: Boolean
    Annotations
    @inline()
  45. def hasMapHeader(length: Long): Boolean
    Annotations
    @inline()
  46. def hasMapHeader(length: Int): Boolean
    Annotations
    @inline()
  47. def hasMapHeader: Boolean
    Annotations
    @inline()
  48. def hasMapStart: Boolean
    Annotations
    @inline()
  49. def hasNull: Boolean
    Annotations
    @inline()
  50. def hasNumberString(value: String): Boolean
    Annotations
    @inline()
  51. def hasNumberString: Boolean
    Annotations
    @inline()
  52. def hasOverLong(value: Long): Boolean
    Annotations
    @inline()
  53. def hasOverLong: Boolean
    Annotations
    @inline()
  54. def hasShort(value: Short): Boolean
    Annotations
    @inline()
  55. def hasShort: Boolean
    Annotations
    @inline()
  56. def hasSimpleValue(value: Int): Boolean
    Annotations
    @inline()
  57. def hasSimpleValue: Boolean
    Annotations
    @inline()
  58. def hasSizedBytes: Boolean
    Annotations
    @inline()
  59. def hasSizedTextBytes: Boolean
    Annotations
    @inline()
  60. def hasString(value: String): Boolean

    Tests the next data item for equality with the given String.

    Tests the next data item for equality with the given String. NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

    Annotations
    @inline()
  61. def hasString: Boolean
    Annotations
    @inline()
  62. def hasTag(tag: Tag): Boolean
    Annotations
    @inline()
  63. def hasTag: Boolean
    Annotations
    @inline()
  64. def hasTextBytes: Boolean
    Annotations
    @inline()
  65. def hasTextStart: Boolean
    Annotations
    @inline()
  66. def hasUndefined: Boolean
    Annotations
    @inline()
  67. def hasUnsizedBytes: Boolean
    Annotations
    @inline()
  68. def hasUnsizedTextBytes: Boolean
    Annotations
    @inline()
  69. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  70. def input: Input[_]
    Annotations
    @inline()
  71. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  72. def longCompare(value: Long): Int

    Returns one of the following 4 values: - Int.MaxValue if the next data item is not a Long - minus one a if the next data item is a Long < value - zero if the next data item is a Long == value - one if the next data item is a Long > value

  73. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  74. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  75. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  76. def overLongNegative: Boolean
    Annotations
    @inline()
  77. def overflow(msg: String): Nothing
    Annotations
    @inline()
  78. def position: Position
    Annotations
    @inline()
  79. def read[T]()(implicit decoder: Decoder[T]): T
    Annotations
    @inline()
  80. def readArrayClose[T](unbounded: Boolean, value: T): T
    Annotations
    @inline()
  81. def readArrayHeader(length: Long): InputReader.this.type
    Annotations
    @inline()
  82. def readArrayHeader(length: Int): InputReader.this.type
    Annotations
    @inline()
  83. def readArrayHeader(): Long
  84. def readArrayOpen(arity: Long): Boolean
    Annotations
    @inline()
  85. def readArrayStart(): InputReader.this.type
  86. def readBoolean(): Boolean
  87. def readBreak(): InputReader.this.type
  88. def readByte(): Byte
  89. def readByteArray(): Array[Byte]
  90. def readBytes[Bytes]()(implicit arg0: ByteAccess[Bytes]): Bytes
  91. def readBytesStart(): InputReader.this.type
  92. def readChar(): Char
  93. def readChars(chars: Array[Char]): InputReader.this.type
  94. def readChars(): Array[Char]
  95. def readDouble(): Double
  96. def readEndOfInput(): Unit
    Annotations
    @inline()
  97. def readFloat(): Float
  98. def readFloat16(): Float
  99. def readInt(): Int
  100. def readLong(): Long
  101. def readMapClose[T](unbounded: Boolean, value: T): T
    Annotations
    @inline()
  102. def readMapHeader(length: Long): InputReader.this.type
    Annotations
    @inline()
  103. def readMapHeader(length: Int): InputReader.this.type
    Annotations
    @inline()
  104. def readMapHeader(): Long
  105. def readMapOpen(arity: Long): Boolean
    Annotations
    @inline()
  106. def readMapStart(): InputReader.this.type
  107. def readNull(): Null
  108. def readNumberString(): String
  109. def readOverLong(): Long
  110. def readShort(): Short
  111. def readSimpleValue(value: Int): InputReader.this.type
    Annotations
    @inline()
  112. def readSimpleValue(): Int
  113. def readSizedBytes[Bytes]()(implicit byteAccess: ByteAccess[Bytes]): Bytes
  114. def readSizedTextBytes[Bytes]()(implicit byteAccess: ByteAccess[Bytes]): Bytes
  115. def readString(s: String): InputReader.this.type
  116. def readString(): String
  117. def readTag(tag: Tag): InputReader.this.type
    Annotations
    @inline()
  118. def readTag(): Tag
  119. def readTextBytes[Bytes]()(implicit arg0: ByteAccess[Bytes]): Bytes
  120. def readTextStart(): InputReader.this.type
  121. def readUndefined(): InputReader.this.type
  122. def readUnsizedBytes[Bytes]()(implicit byteAccess: ByteAccess[Bytes]): Bytes
  123. def readUnsizedTextBytes[Bytes]()(implicit byteAccess: ByteAccess[Bytes]): Bytes
  124. def readUntilBreak[T](zero: T)(f: (T) => T): T
  125. def readUntilBreak[M[_], T]()(implicit arg0: Decoder[T], factory: Factory[T, M[T]]): M[T]
  126. def readingCbor: Boolean
    Annotations
    @inline()
  127. def readingJson: Boolean
    Annotations
    @inline()
  128. def skipDataItem(): InputReader.this.type

    Skips the current (atomic) data item.

    Skips the current (atomic) data item.

    CAUTION: If the data item is an Array/Map - Start/Header then this call will NOT skip the whole array or map, but only the starting data item! Use skipElement instead if you also want to skip complex elements!

  129. def skipElement(): InputReader.this.type

    Moves the cursor beyond the current data element, thereby also skipping complex, potentially nested array or map structures.

  130. def skipTwoElements(): InputReader.this.type
    Annotations
    @inline()
  131. def stringCompare(value: String): Int

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

  132. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  133. val target: Target
  134. def toString(): String
    Definition Classes
    AnyRef → Any
  135. def tryReadArrayHeader(length: Long): Boolean
    Annotations
    @inline()
  136. def tryReadArrayHeader(length: Int): Boolean
    Annotations
    @inline()
  137. def tryReadArrayStart(): Boolean
    Annotations
    @inline()
  138. def tryReadBoolean(value: Boolean): Boolean
    Annotations
    @inline()
  139. def tryReadBreak(): Boolean
    Annotations
    @inline()
  140. def tryReadByte(value: Byte): Boolean
    Annotations
    @inline()
  141. def tryReadBytesStart(): Boolean
    Annotations
    @inline()
  142. def tryReadChar(value: Char): Boolean
    Annotations
    @inline()
  143. def tryReadChars(value: Array[Char]): Boolean

    Tests the next data item for equality with the given Array[Char] and advances the cursor if so.

    Tests the next data item for equality with the given Array[Char] and advances the cursor if so. NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

    Annotations
    @inline()
  144. def tryReadCharsCompare(value: Array[Char]): Int

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    Advanced the cursor if the return value is zero.

    NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

  145. def tryReadDouble(value: Double): Boolean
    Annotations
    @inline()
  146. def tryReadEndOfInput(): Boolean
    Annotations
    @inline()
  147. def tryReadFloat(value: Float): Boolean
    Annotations
    @inline()
  148. def tryReadFloat16(value: Float): Boolean
    Annotations
    @inline()
  149. def tryReadInt(value: Int): Boolean
    Annotations
    @inline()
  150. def tryReadLong(value: Long): Boolean
    Annotations
    @inline()
  151. def tryReadLongCompare(value: Long): Int
  152. def tryReadMapHeader(length: Long): Boolean
    Annotations
    @inline()
  153. def tryReadMapHeader(length: Int): Boolean
    Annotations
    @inline()
  154. def tryReadMapStart(): Boolean
    Annotations
    @inline()
  155. def tryReadNull(): Boolean
    Annotations
    @inline()
  156. def tryReadNumberString(value: String): Boolean
    Annotations
    @inline()
  157. def tryReadOverLong(value: Long): Boolean
    Annotations
    @inline()
  158. def tryReadShort(value: Short): Boolean
    Annotations
    @inline()
  159. def tryReadSimpleValue(value: Int): Boolean
    Annotations
    @inline()
  160. def tryReadString(value: String): Boolean

    Tests the next data item for equality with the given String and advances the cursor if so.

    Tests the next data item for equality with the given String and advances the cursor if so. NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

    Annotations
    @inline()
  161. def tryReadStringCompare(value: String): Int

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    Returns one of the following 4 values: - Int.MinValue if the next data item is not a string - a negative value (!= Int.MinValue) a if the next data item is a string that compares as '<' to value - zero if the next data item is a string that compares as '==' to value - a positive value if the next data item is a string that compares as '>' to value

    Advanced the cursor if the return value is zero.

    NOTE: This method causes text bytes (sized or unsized) to be buffered and converted to Chars data items!

  162. def tryReadTag(tag: Tag): Boolean
    Annotations
    @inline()
  163. def tryReadTextStart(): Boolean
    Annotations
    @inline()
  164. def tryReadUndefined(): Boolean
    Annotations
    @inline()
  165. def unexpectedDataItem(expected: String, actual: String): Nothing
    Annotations
    @inline()
  166. def unexpectedDataItem(expected: String): Nothing
  167. def validationFailure(msg: String): Nothing
    Annotations
    @inline()
  168. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  169. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  170. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped