ByteArrayBasedParserInput

org.parboiled2.ParserInput.ByteArrayBasedParserInput
class ByteArrayBasedParserInput(bytes: Array[Byte], endIndex: Int) extends DefaultParserInput

ParserInput reading directly off a byte array. This avoids a separate decoding step but assumes that each byte represents exactly one character, which is encoded by ISO-8859-1! You can therefore use this ParserInput type only if you know that all input will be ISO-8859-1-encoded, or only contains 7-bit ASCII characters (which is a subset of ISO-8859-1)!

Note that this ParserInput type will NOT work with general UTF-8-encoded input as this can contain character representations spanning multiple bytes. However, if you know that your input will only ever contain 7-bit ASCII characters (0x00-0x7F) then UTF-8 is fine, since the first 127 UTF-8 characters are encoded with only one byte that is identical to 7-bit ASCII and ISO-8859-1.

Attributes

Graph
Supertypes
trait ParserInput
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def charAt(ix: Int): Char

Returns the character at the given (zero-based) index. Note: this method is hot and should be small and efficient. A range-check is not required for the parser to work correctly.

Returns the character at the given (zero-based) index. Note: this method is hot and should be small and efficient. A range-check is not required for the parser to work correctly.

Attributes

def sliceCharArray(start: Int, end: Int): Array[Char]

Returns the characters between index start (inclusively) and end (exclusively) as an Array[Char].

Returns the characters between index start (inclusively) and end (exclusively) as an Array[Char].

Attributes

def sliceString(start: Int, end: Int): String

Returns the characters between index start (inclusively) and end (exclusively) as a String.

Returns the characters between index start (inclusively) and end (exclusively) as a String.

Attributes

Inherited methods

def getLine(line: Int): String

Gets the input line with the given number as a String. Note: the first line is line number one!

Gets the input line with the given number as a String. Note: the first line is line number one!

Attributes

Inherited from:
DefaultParserInput

Concrete fields

val length: Int

The number of characters in this input. Note: this method is hot and should be small and efficient.

The number of characters in this input. Note: this method is hot and should be small and efficient.

Attributes