class RootSource extends SourceCursor
A root source represents the full input string of a parsing operation.
In a single-pass parser like those for HOCON or CSS, only RootCursor
instances will be used for the entire
parsing operation.
In a multi-pass parser like those for text markup, a RootCursor
is only used for the first pass,
whereas the subsequent passes on parts of the input are performed with the other SourceCursor
implementations.
For this reason this type of cursor is only meant to be used for creating a root cursor for the input holding the whole document (e.g. the entire markup document or the full template).
For creating a cursor for a fragment of the input, either BlockSource
or LineSource
must be used
to preserve position tracking in relation to the root input.
- Alphabetic
- By Inheritance
- RootSource
- SourceCursor
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new RootSource(inputRef: InputString, offset: Int, nestLevel: Int)
Type Members
-
type
Self = RootSource
- Definition Classes
- RootSource → SourceCursor
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
atEnd: Boolean
Indicates whether this contexts offset is behind the last character of the input string
Indicates whether this contexts offset is behind the last character of the input string
- Definition Classes
- RootSource → SourceCursor
-
def
canConsume(maxChars: Int): Int
- Attributes
- protected
- Definition Classes
- SourceCursor
-
def
capture(numChars: Int): String
Captures a string containing the specified number of characters from the current offset.
Captures a string containing the specified number of characters from the current offset. If the number of remaining characters is less than the specified number, all remaining characters will be returned.
- Definition Classes
- RootSource → SourceCursor
-
def
char: Char
The character at the current offset.
The character at the current offset.
- Definition Classes
- SourceCursor
-
def
charAt(relativeOffset: Int): Char
The character at the specified offset, relative from the current offset.
The character at the specified offset, relative from the current offset.
- Definition Classes
- SourceCursor
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
consume(numChars: Int): RootSource
Consumes the specified number of characters, returning a new
SourceCursor
with the new offset.Consumes the specified number of characters, returning a new
SourceCursor
with the new offset.- Definition Classes
- RootSource → SourceCursor
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(obj: Any): Boolean
- Definition Classes
- RootSource → AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- RootSource → AnyRef → Any
-
val
input: String
The full input string, containing the string portions before and after the current offset.
The full input string, containing the string portions before and after the current offset.
- Definition Classes
- RootSource → SourceCursor
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
length: Int
The length of the input of this cursor.
The length of the input of this cursor.
- Definition Classes
- SourceCursor
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
val
nestLevel: Int
The nest level of this cursor in case of recursive parsing.
The nest level of this cursor in case of recursive parsing.
- Definition Classes
- RootSource → SourceCursor
-
def
nextNestLevel: RootSource
Create a new instance of this cursor with the nestLevel incremented.
Create a new instance of this cursor with the nestLevel incremented.
- Definition Classes
- RootSource → SourceCursor
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
val
offset: Int
The offset of this cursor from the start of the source.
The offset of this cursor from the start of the source.
- Definition Classes
- RootSource → SourceCursor
-
val
path: Option[Path]
The (virtual) path of the document this input originates from; may be empty in case of generated sources.
The (virtual) path of the document this input originates from; may be empty in case of generated sources.
- Definition Classes
- RootSource → SourceCursor
-
lazy val
position: Position
The current position in the input string.
The current position in the input string.
- Definition Classes
- RootSource → SourceCursor
-
def
remaining: Int
Indicates the number of characters remaining in the input string after the current offset.
Indicates the number of characters remaining in the input string after the current offset.
- Definition Classes
- RootSource → SourceCursor
-
def
reverse: RootSource
Returns a new
SourceCursor
with the input string being reversed, but pointing to the same character as this context.Returns a new
SourceCursor
with the input string being reversed, but pointing to the same character as this context.This is a low-level optimization for parsers that look for strings like email addresses where the first character is not significant, so that parsing backwards from any
@
encountered in the input provided better performance.- Definition Classes
- RootSource → SourceCursor
-
val
root: RootSource
The source for the root input, positioned to match the offset of this (potentially nested) source.
The source for the root input, positioned to match the offset of this (potentially nested) source.
- Definition Classes
- RootSource → SourceCursor
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- RootSource → AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()