SpanScanner class Null safety

A subclass of LineScanner that exposes matched ranges as source map FileSpans.

Inheritance
Implemented types

Constructors

SpanScanner(String string, {dynamic sourceUrl, int? position})
Creates a new SpanScanner that starts scanning from position.
SpanScanner.eager(String string, {dynamic sourceUrl, int? position})
Creates a new SpanScanner that eagerly computes line and column numbers.
factory
SpanScanner.within(FileSpan span)
Creates a new SpanScanner that scans within span.
factory

Properties

column int
The scanner's current (zero-based) column number.
read-onlyoverride
emptySpan FileSpan
Returns an empty span at the current location.
read-only
hashCode int
The hash code for this object.
read-onlyinherited
isDone bool
Whether the scanner has completely consumed string.
read-onlyinherited
lastMatch Match?
The data about the previous match made by the scanner.
read-onlyinherited
lastSpan FileSpan?
The FileSpan for lastMatch.
read-only
line int
The scanner's current (zero-based) line number.
read-onlyoverride
location FileLocation
The current location of the scanner.
read-only
position int
The current position of the scanner in the string, in characters.
read / writeinherited
rest String
The portion of the string that hasn't yet been scanned.
read-onlyinherited
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
sourceUrl Uri?
The URL of the source of the string being scanned.
finalinherited
state LineScannerState
The scanner's state, including line and column information.
read / writeoverride
string String
The string being scanned through.
finalinherited

Methods

error(String message, {Match? match, int? position, int? length}) → Never
Throws a FormatException with message as well as a detailed description of the location of the error in the string.
override
expect(Pattern pattern, {String? name}) → void
If pattern matches at the current position of the string, scans forward until the end of the match.
inherited
expectChar(int character, {String? name}) → void
If the next character in the string is character, consumes it.
inherited
expectDone() → void
If the string has not been fully consumed, this throws a FormatException.
inherited
matches(Pattern pattern) bool
Returns whether or not pattern matches at the current position of the string.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
peekChar([int? offset]) int?
Returns the character code of the character offset away from position.
inherited
readChar() int
Consumes a single character and returns its character code.
inherited
scan(Pattern pattern) bool
If pattern matches at the current position of the string, scans forward until the end of the match.
inherited
scanChar(int character) bool
If the next character in the string is character, consumes it.
inherited
spanFrom(LineScannerState startState, [LineScannerState? endState]) FileSpan
Creates a FileSpan representing the source range between startState and the current position.
substring(int start, [int? end]) String
Returns the substring of string between start and end.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited