org.bitbucket.inkytonik.kiama.util

ParsingREPLWithConfig

trait ParsingREPLWithConfig[T, C <: REPLConfig] extends ParsingREPLBase[T, C]

A REPL that parses its input lines into a value (such as an abstract syntax tree), then processes them. C is the type of the configuration.

Source
REPL.scala
Linear Supertypes
ParsingREPLBase[T, C], REPLBase[C], Profiler, dsprofile.Profiler, Values, Messaging, PositionStore, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ParsingREPLWithConfig
  2. ParsingREPLBase
  3. REPLBase
  4. Profiler
  5. Profiler
  6. Values
  7. Messaging
  8. PositionStore
  9. AnyRef
  10. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class Child(i: Int) extends Step with Product with Serializable

    A step to child i of the current node, counting from zero.

  2. case class Dep(step: Step, tipe: Value, attribute: Value) extends Product with Serializable

    Dependence record saying that the source attribute depends on attribute of a node with type type that is the given step away.

  3. case class Record extends Product with Serializable

    Definition Classes
    Values
  4. abstract class Step extends AnyRef

    A single step in the evaluation of an attribute.

Abstract Value Members

  1. abstract def banner: String

    Banner message that is printed before the REPL starts.

    Banner message that is printed before the REPL starts.

    Definition Classes
    REPLBase
  2. abstract def createConfig(args: Seq[String]): C

    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.

    Definition Classes
    REPLBase
  3. abstract val parser: Parser[T]

    The particular parser used to parse this compiler's input.

    The particular parser used to parse this compiler's input.

    Definition Classes
    ParsingREPLBase
  4. abstract val parsers: ParsersBase

    The suite of parsers that is used by this compiler.

    The suite of parsers that is used by this compiler.

    Definition Classes
    ParsingREPLBase
  5. abstract def process(source: Source, t: T, config: C): Unit

    Process a user input value in the given configuration.

    Process a user input value in the given configuration.

    Definition Classes
    ParsingREPLBase

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. object Next extends Step with Product with Serializable

    A step to the previous node in a sequence.

  7. object Other extends Step with Product with Serializable

    A step to a node that doesn't fit into any of the other categories.

  8. object Parent extends Step with Product with Serializable

    A step to the parent of the current node.

  9. object Prev extends Step with Product with Serializable

    A step to the previous node in a sequence.

  10. object Self extends Step with Product with Serializable

    A step nowhere.

  11. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  12. def checkFor(record: Record, dim: Dimension, eventtype: String, needed: Dimension)(f: (Value) ⇒ Value): Value

    Definition Classes
    Values
  13. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  14. def column(message: Message): Option[Int]

    Return the optional column number of a message.

    Return the optional column number of a message.

    Definition Classes
    Messaging
  15. def createAndInitConfig(args: Seq[String]): C

    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.

    Definition Classes
    REPLBase
  16. def dimValue(record: Record, dim: Dimension): Value

    Support Kiama-specific profiling dimensions.

    Support Kiama-specific profiling dimensions.

    Definition Classes
    Profiler → Profiler → Values
  17. def driver(args: Seq[String]): Unit

    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.

    Definition Classes
    REPLBase
  18. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  20. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  21. def finishReport(): Unit

    Definition Classes
    Values
  22. def formatMessage(message: Message): String

    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.

    Definition Classes
    Messaging
  23. def formatMessages(messages: Messages): String

    Return a string containing all the given messages sorted and formatted.

    Return a string containing all the given messages sorted and formatted.

    Definition Classes
    Messaging
  24. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  25. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  26. def includeTimings: Boolean

    Definition Classes
    Profiler
  27. def isEventType(record: Record, eventtype: String): Boolean

    Definition Classes
    Values
  28. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  29. def line(message: Message): Option[Int]

    Return the optional line number of a message.

    Return the optional line number of a message.

    Definition Classes
    Messaging
  30. def main(args: Array[String]): Unit

    The entry point for this REPL.

    The entry point for this REPL.

    Definition Classes
    REPLBase
  31. implicit object messageOrdering extends Ordering[Message]

    An ordering on messages that prioritises line over column.

  32. def nanoToMs(nano: Long): Long

    Definition Classes
    Profiler
  33. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  34. final def notify(): Unit

    Definition Classes
    AnyRef
  35. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  36. def output(str: String): Unit

    Definition Classes
    Values
  37. def outputln(str: String): Unit

    Definition Classes
    Values
  38. def parseProfileOption(value: String): Seq[Dimension]

    Definition Classes
    Profiler
  39. def percent(v: Long, total: Long): String

    Definition Classes
    Profiler
  40. def positionOf(message: Message): Option[Position]

    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.

    Definition Classes
    Messaging
  41. val positions: Positions

    Definition Classes
    PositionStore
  42. def printDependencyGraph(record: Record, dim: Dimension): Unit

    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.

    Definition Classes
    Profiler
  43. def printReports(totalTime: Long, dimensionNames: Seq[Dimension], records: List[Record]): Unit

    Definition Classes
    Profiler
  44. var printTables: Boolean

    Definition Classes
    Values
  45. final def processconsole(console: Console, prompt: String, config: C): C

    Process interactively entered lines, one by one, until end of file.

    Process interactively entered lines, one by one, until end of file.

    Definition Classes
    REPLBase
    Annotations
    @tailrec()
  46. def processfile(filename: String, config: C): C

    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.

    Definition Classes
    REPLBase
  47. final def processfiles(config: C): C

    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.

    Definition Classes
    REPLBase
  48. def processline(source: Source, console: Console, config: C): Option[C]

    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.

    Definition Classes
    ParsingREPLBaseREPLBase
  49. def processlines(config: C): Unit

    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.

    Definition Classes
    REPLBase
  50. def profile[T](computation: ⇒ T, dimensionNames: Seq[Dimension], logging: Boolean): T

    Definition Classes
    Profiler
  51. def profileStart(logging: Boolean): Unit

    Definition Classes
    Profiler
  52. def profileStop(): (Seq[Dimension]) ⇒ Unit

    Definition Classes
    Profiler
  53. def profileStop(dimensionNames: Seq[Dimension]): Unit

    Definition Classes
    Profiler
  54. def profileStopInteractive(): Unit

    Definition Classes
    Profiler
  55. def prompt: String

    Define the prompt (default: "> ").

    Define the prompt (default: "> ").

    Definition Classes
    REPLBase
  56. def report(messages: Messages, emitter: Emitter = new OutputEmitter): Unit

    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.

    Definition Classes
    Messaging
  57. def startReport(dimensionNames: Seq[Dimension]): Unit

    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.

    Definition Classes
    Profiler → Values
  58. var startTime: Long

    Definition Classes
    Profiler
  59. def summariseAlongDims(dimensionNames: Seq[Dimension], records: List[Record], nrecords: Int, profiledTime: Long): Unit

    Definition Classes
    Profiler
  60. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  61. def time[T](computation: ⇒ T, warmup: Int, n: Int, discard: Int): Unit

    Definition Classes
    Profiler
  62. def toString(): String

    Definition Classes
    AnyRef → Any
  63. def trace(predicate: (Event) ⇒ Boolean): Unit

    Definition Classes
    Profiler
  64. def valueToString(a: Value): String

    Definition Classes
    Values
  65. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  66. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  67. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ParsingREPLBase[T, C]

Inherited from REPLBase[C]

Inherited from Profiler

Inherited from dsprofile.Profiler

Inherited from Values

Inherited from Messaging

Inherited from PositionStore

Inherited from AnyRef

Inherited from Any

Ungrouped