A step to child i
of the current node, counting from zero.
A step to child i
of the current node, counting from zero.
Dependence record saying that the source attribute depends on
attribute
of a node with type type
that is the given step away.
Dependence record saying that the source attribute depends on
attribute
of a node with type type
that is the given step away.
A single step in the evaluation of an attribute.
A single step in the evaluation of an attribute.
Banner message that is printed before the REPL starts.
Banner message that is printed before the REPL starts.
The particular parser used to parse this compiler's input.
The particular parser used to parse this compiler's input.
The suite of parsers that is used by this compiler.
The suite of parsers that is used by this compiler.
Process a user input value in the given configuration.
Process a user input value in the given configuration.
A step to the previous node in a sequence.
A step to the previous node in a sequence.
A step to a node that doesn't fit into any of the other categories.
A step to a node that doesn't fit into any of the other categories. This category will be used for nodes that were obtained as the result of reference attributes or as values that sit outside the main tree.
A step to the parent of the current node.
A step to the parent of the current node.
A step to the previous node in a sequence.
A step to the previous node in a sequence.
A step nowhere.
A step nowhere. I.e., the dependent attribute is evaluated at the current node.
Return the optional column number of a message.
Return the optional column number of a message.
Create and initialise the configuration for a particular run of the REPL.
Create and initialise the configuration for a particular run of the REPL.
Default: call createConfig
and then initialise the resulting configuration.
Create the configuration for a particular run of the REPL.
Create the configuration for a particular run of the REPL. If supplied, use
emitter
instead of a standard output emitter.
Support Kiama-specific profiling dimensions.
Support Kiama-specific profiling dimensions.
Driver for this REPL.
Driver for this REPL. First, use the argument list to create a
configuration for this execution. If the arguments parse ok, then
print the REPL banner. Read lines from the console and pass non-null ones
to processline
. If ignoreWhitespaceLines
is true, do not pass lines that
contain just whitespace, otherwise do. Continue until processline
returns false. Call prompt
each time input is about to be read.
Format the message for reporting as a line containing the position and label, the input text line and line(s) containing the context of the position.
Format the message for reporting as a line containing the position and label, the input text line and line(s) containing the context of the position. If no position is associated with this message just format as a line containing the label.
Return a string containing all the given messages sorted and formatted.
Return a string containing all the given messages sorted and formatted.
Return the optional line number of a message.
Return the optional line number of a message.
The entry point for this REPL.
The entry point for this REPL.
An ordering on messages that prioritises line over column.
An ordering on messages that prioritises line over column.
A message's starting position as determined from the starting position of the message's value.
A message's starting position as determined from the starting position
of the message's value. Will be None
if the value has no position.
Print the dependency graph for the attribute evaluation represented
by record
.
Print the dependency graph for the attribute evaluation represented
by record
. The output is in dot form.
Process interactively entered lines, one by one, until end of file.
Process interactively entered lines, one by one, until end of file.
Process a file argument by passing its contents line-by-line to
processline
.
Process a file argument by passing its contents line-by-line to
processline
.
Process the files one by one, allowing config to be updated each time and updated config to be used by the next file.
Process the files one by one, allowing config to be updated each time and updated config to be used by the next file.
Process a user input line by parsing it to get a value of type T
,
then passing it to the process
method.
Process a user input line by parsing it to get a value of type T
,
then passing it to the process
method. Returns the configuration
unchanged.
Process interactively entered lines, one by one, until end of file.
Process interactively entered lines, one by one, until end of file. Prompt with the given prompt.
Define the prompt (default: "> "
).
Define the prompt (default: "> "
).
Output the messages in order of position using the given emitter, which defaults to terminal output.
Output the messages in order of position using the given emitter, which defaults to terminal output.
Take any actions that need to be done at the start of reporting.
Take any actions that need to be done at the start of reporting.
A REPL that parses its input lines into a value (such as an abstract syntax tree), then processes them. Output is emitted to standard output.