API reference / @jsprismarine/predicates / ParseContext
Class: ParseContext
Defined in: parse.ts:52
The parse-time state threaded through the grammar: where in the JSON we are, where diagnostics go, how references resolve, and which references are already on the stack so a cycle reports instead of recursing forever.
Constructors
Constructor
new ParseContext(
path,diagnostics,resolver,extensions?,visiting?):ParseContext
Defined in: parse.ts:60
Parameters
path
string
diagnostics
resolver
ReferenceResolver | undefined
extensions?
GrammarExtensions = {}
visiting?
Set<string> = ...
Returns
ParseContext
Properties
diagnostics
readonlydiagnostics:DiagnosticCollector
Defined in: parse.ts:54
extensions
readonlyextensions:GrammarExtensions
Defined in: parse.ts:56
path
readonlypath:string
Defined in: parse.ts:53
resolver
readonlyresolver:ReferenceResolver|undefined
Defined in: parse.ts:55
visiting
readonlyvisiting:Set<string>
Defined in: parse.ts:58
Reference keys currently being expanded, shared by every context in one parse.
Methods
at()
at(
segment):ParseContext
Defined in: parse.ts:75
Returns a context pointing at a member or array element of the current value.
Parameters
segment
string | number
Returns
ParseContext
atReference()
atReference(
id):ParseContext
Defined in: parse.ts:86
Returns a context whose path names a resolved reference rather than a JSON member.
Parameters
id
string
Returns
ParseContext
error()
error(
message):void
Defined in: parse.ts:91
Records a fault at the current path.
Parameters
message
string
Returns
void
warn()
warn(
message):void
Defined in: parse.ts:96
Records a recovered fault at the current path, such as a grammar member this package does not implement.
Parameters
message
string
Returns
void