Packages

c

info.kwarc.mmt.api.checking

TwoStepInterpreter

class TwoStepInterpreter extends Interpreter

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TwoStepInterpreter
  2. Interpreter
  3. Importer
  4. GeneralImporter
  5. TraversingBuildTarget
  6. BuildTarget
  7. FormatBasedExtension
  8. Extension
  9. Logger
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new TwoStepInterpreter(parser: Parser, checker: Checker, simplifier: Simplifier)

    parser

    the first step: parsing

    checker

    the first part of the second step: checking

    simplifier

    the second part of the second step: elaboration/simplification

Type Members

  1. case class LocalError(s: String) extends ExtensionError with Product with Serializable

    a custom error class for this extension

    a custom error class for this extension

    Definition Classes
    Extension

Value Members

  1. object asInterpreter extends Interpreter

    an Interpreter that calls this importer to interpret a parsing stream

    an Interpreter that calls this importer to interpret a parsing stream

    This Interpreter is only applicable if it can determine an archive that the parsing stream is created from. In that case, it will import the file, i.e., change the state of the archive.

    Definition Classes
    Importer
  2. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  3. final def ##(): Int
    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. def apply(pu: ParsingUnit)(implicit errorCont: ErrorHandler): CheckingResult

    object interpretation

    object interpretation

    Definition Classes
    TwoStepInterpreterInterpreter
  6. def apply(ps: ParsingStream)(implicit errorCont: ErrorHandler): StructuralElement

    parses a ParsingStream and checks the result

    parses a ParsingStream and checks the result

    Definition Classes
    TwoStepInterpreterInterpreter
  7. def apply(modifier: BuildTargetModifier, arch: Archive, in: FilePath): Unit

    the main function to run the build target

    the main function to run the build target

    en empty in filepath addresses the whole archive

    modifier

    chooses build, clean, or update

    arch

    the archive to build on

    in

    the folder inside the archive's inDim folder to which building is restricted

    Definition Classes
    BuildTarget
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def build(a: Archive, up: Update, in: FilePath, errorCont: Option[ErrorHandler]): Unit

    entry point for recursive building

    entry point for recursive building

    Definition Classes
    TraversingBuildTarget
  10. def build(a: Archive, up: Update, in: FilePath): Unit

    delegates to build

    delegates to build

    Definition Classes
    TraversingBuildTargetBuildTarget
  11. def buildDir(bd: BuildTask, builtChildren: List[BuildTask], level: Level.Level): BuildResult

    similar to buildFile but called on every directory (after all its children have been processed)

    similar to buildFile but called on every directory (after all its children have been processed)

    This does nothing by default and can be overridden if needed.

    bd

    information about input/output file etc

    builtChildren

    tasks for building the children

    level

    error/force level to perform action depending on user input

    Definition Classes
    ImporterTraversingBuildTarget
  12. def buildFile(bf: BuildTask): BuildResult

    the main abstract method for building one file

    the main abstract method for building one file

    bf

    information about input/output file etc

    Definition Classes
    ImporterTraversingBuildTarget
  13. def buildTaskToParsingStream(bf: BuildTask): (DPath, ParsingStream)

    converts the interface of Importer to the one of Parser

    converts the interface of Importer to the one of Parser

    Attributes
    protected
    Definition Classes
    Interpreter
  14. def catchErrors[A](msg: String, recoverWith: ⇒ A)(code: ⇒ A): A

    like its partner but with return value

    like its partner but with return value

    Attributes
    protected
    Definition Classes
    Extension
  15. def catchErrors(msg: String)(code: ⇒ Unit): Unit

    convenience method for wrapping code in error handler that throws LocalError

    convenience method for wrapping code in error handler that throws LocalError

    Attributes
    protected
    Definition Classes
    Extension
  16. val checker: Checker
  17. def clean(a: Archive, in: FilePath = EmptyPath): Unit

    recursively delete output files in parallel (!)

    recursively delete output files in parallel (!)

    Definition Classes
    TraversingBuildTargetBuildTarget
  18. def cleanDir(a: Archive, curr: Current): Unit

    additional method that implementations may provide: cleans one directory

    additional method that implementations may provide: cleans one directory

    does nothing by default

    a

    the containing archive

    curr

    the outDim directory to be deleted

    Definition Classes
    ImporterTraversingBuildTarget
  19. def cleanFile(a: Archive, curr: Current): Unit

    additionally deletes content and relational

    additionally deletes content and relational

    a

    the containing archive

    curr

    the inDim whose output is to be deleted

    Definition Classes
    ImporterTraversingBuildTarget
  20. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  21. val controller: Controller

    the controller that this extension is added to; only valid after creation of the extension, i.e., will return null if used in a non-lazy val-field

    the controller that this extension is added to; only valid after creation of the extension, i.e., will return null if used in a non-lazy val-field

    Attributes
    protected
    Definition Classes
    Extension
  22. lazy val defaultPrefix: String
    Definition Classes
    Extension
  23. def delete(f: File): Unit

    auxiliary method for deleting a file

    auxiliary method for deleting a file

    Attributes
    protected
    Definition Classes
    BuildTarget
  24. def destroy: Unit

    extension-specific cleanup (override as needed, empty by default)

    extension-specific cleanup (override as needed, empty by default)

    Extensions may create persistent data structures and threads, but they must clean up after themselves in this method

    Definition Classes
    Extension
  25. def destroyWhenRemainingTasksFinished: Unit

    convenience for calling waitUntilRemainingTasksFinished and then destroy

    convenience for calling waitUntilRemainingTasksFinished and then destroy

    Definition Classes
    Extension
  26. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  27. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  28. def estimateResult(bf: BuildTask): BuildSuccess

    estimate the BuildResult without building, e.g., to predict dependencies

    estimate the BuildResult without building, e.g., to predict dependencies

    Definition Classes
    TraversingBuildTarget
  29. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  30. val folderName: String

    the name that is used for the special file representing the containing folder (without extension), empty by default

    the name that is used for the special file representing the containing folder (without extension), empty by default

    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  31. def format: String

    the input format (e.g., the file extension) to which this interpreter is applicable

    the input format (e.g., the file extension) to which this interpreter is applicable

    Definition Classes
    TwoStepInterpreterInterpreter
  32. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  33. def getErrorFile(a: Archive, inPath: FilePath): File
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  34. def getFolderErrorFile(a: Archive, inPath: FilePath): File
    Definition Classes
    TraversingBuildTarget
  35. def getFolderOutFile(a: Archive, inPath: FilePath): File
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  36. def getFromFirstArgOrEnvvar(args: List[String], name: String, default: String = ""): String
    Attributes
    protected
    Definition Classes
    Extension
  37. def getOutFile(a: Archive, inPath: FilePath): File
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  38. def getOutPath(a: Archive, outFile: File): FilePath
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  39. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  40. def importDocument(bf: BuildTask, index: (Document) ⇒ Unit): BuildResult

    creates a ParsingStream for the input file and interprets it

    creates a ParsingStream for the input file and interprets it

    index

    a continuation function to be called on every generated document

    Definition Classes
    InterpreterImporter
  41. def inDim: ArchiveDimension

    source by default, may be overridden

    source by default, may be overridden

    Definition Classes
    ImporterTraversingBuildTarget
  42. def inExts: List[String]

    the file extensions to which this may be applicable

    the file extensions to which this may be applicable

    Definition Classes
    InterpreterImporter
  43. def includeDir(name: String): Boolean

    true by default; override to skip auxiliary directories

    true by default; override to skip auxiliary directories

    name

    the name of the directory (no path)

    Definition Classes
    TraversingBuildTarget
  44. def includeFile(s: String): Boolean

    there is no inExt, instead we test to check which files should be used; this is often a test for the file extension

    there is no inExt, instead we test to check which files should be used; this is often a test for the file extension

    This must be such that all auxiliary files are skipped. see defaultFileExtension if you need an inExt (for meta targets)

    Definition Classes
    ImporterTraversingBuildTarget
  45. def initOther(e: Extension): Unit

    any extension can initialize other extensions if those are not meant to be added to the ExtensionManager

    any extension can initialize other extensions if those are not meant to be added to the ExtensionManager

    Attributes
    protected
    Definition Classes
    Extension
  46. def isApplicable(s: String): Boolean

    returns

    true if this extension is applicable

    Definition Classes
    InterpreterBuildTargetFormatBasedExtension
  47. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  48. val key: String

    a string identifying this build target, used for parsing commands, logging, error messages

    a string identifying this build target, used for parsing commands, logging, error messages

    Definition Classes
    InterpreterGeneralImporterBuildTarget
  49. def log(e: Error): Unit

    logs an error - always logged

    logs an error - always logged

    Attributes
    protected
    Definition Classes
    Logger
  50. def log(s: ⇒ String, subgroup: Option[String] = None): Unit

    logs a message with this logger's logprefix

    logs a message with this logger's logprefix

    Attributes
    protected
    Definition Classes
    Logger
  51. def logError(s: ⇒ String): Unit

    log as an error message

    log as an error message

    Attributes
    protected
    Definition Classes
    Logger
  52. def logGroup[A](a: ⇒ A): A

    wraps around a group to create nested logging

    wraps around a group to create nested logging

    Attributes
    protected
    Definition Classes
    Logger
  53. def logPrefix: String

    defaults to the key

    defaults to the key

    Definition Classes
    BuildTargetExtensionLogger
  54. def logResult(s: String): Unit

    auxiliary method for logging results

    auxiliary method for logging results

    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  55. def logTemp(s: ⇒ String): Unit

    temporary logging - always logged

    temporary logging - always logged

    Attributes
    protected
    Definition Classes
    Logger
  56. def makeBuildTask(a: Archive, inPath: FilePath, children: List[BuildTask] = Nil): BuildTask

    makes a build task for a single file (ignoring built children) or directory

    makes a build task for a single file (ignoring built children) or directory

    Definition Classes
    TraversingBuildTarget
  57. def makeErrorThrower(msg: String): ErrorHandler

    an ErrorHandler that wraps an error in a LocalError and throws it

    an ErrorHandler that wraps an error in a LocalError and throws it

    Attributes
    protected
    Definition Classes
    Extension
  58. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  59. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  60. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  61. val outDim: ArchiveDimension

    narration, produces also content and relational

    narration, produces also content and relational

    Definition Classes
    ImporterTraversingBuildTarget
  62. val outExt: String

    omdoc

    omdoc

    Definition Classes
    ImporterTraversingBuildTarget
  63. def parallel: Boolean

    if true, multiple files/folders are built in parallel

    if true, multiple files/folders are built in parallel

    Definition Classes
    TraversingBuildTarget
  64. val parser: Parser
  65. def producesFrom(outPath: FilePath): Option[FilePath]

    if this target produces additional files (e.g., the aux files of LaTeX), this method should map them to the respective main file

    if this target produces additional files (e.g., the aux files of LaTeX), this method should map them to the respective main file

    outPath

    the output path (relative to archive)

    returns

    the input path (relative to inDim)

    Definition Classes
    TraversingBuildTarget
  66. val report: Report
    Attributes
    protected
    Definition Classes
    ExtensionLogger
  67. def runBuildTask(bt: BuildTask, level: Level.Level): BuildResult

    wraps around buildFile and buildDir (which do the actual building) to add error handling, logging, etc.

    wraps around buildFile and buildDir (which do the actual building) to add error handling, logging, etc.

    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
  68. def runBuildTaskIfNeeded(deps: Set[Dependency], bt: BuildTask, up: Update): BuildResult

    the entry point for build managers: runs a build task unless (depending on the modifier) nothing has changed

    the entry point for build managers: runs a build task unless (depending on the modifier) nothing has changed

    Definition Classes
    TraversingBuildTarget
  69. val simplifier: Simplifier
    Definition Classes
    TwoStepInterpreterInterpreter
  70. def start(args: List[String]): Unit

    extension-specific initialization (override as needed, empty by default)

    extension-specific initialization (override as needed, empty by default)

    Definition Classes
    Extension
  71. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  72. def toString(): String
    Definition Classes
    BuildTarget → AnyRef → Any
  73. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  74. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  75. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  76. def waitUntilRemainingTasksFinished: Unit

    extensions that process tasks in separate threads should override this and wait until those threads are done

    extensions that process tasks in separate threads should override this and wait until those threads are done

    Definition Classes
    Extension
  77. def writeToNot(mod: Module, file: File): Unit

    extract the notations of a knowledge item and write them to a file

    extract the notations of a knowledge item and write them to a file

    Attributes
    protected
    Definition Classes
    GeneralImporter
  78. def writeToRel(se: StructuralElement, file: File): Unit

    extract the relational information about a knowledge item and write it to a file

    extract the relational information about a knowledge item and write it to a file

    Attributes
    protected
    Definition Classes
    GeneralImporter

Deprecated Value Members

  1. def buildDepsFirst(a: Archive, up: Update, in: FilePath = EmptyPath): Unit

    build estimated dependencies first

    build estimated dependencies first

    this can be used by the trivial build manager to build targets (like latexml) in dependency order provided that estimated dependencies are correct.

    For a queue build manager this code is obsolete

    Definition Classes
    TraversingBuildTargetBuildTarget
    Annotations
    @MMT_TODO( message = "needs review" )
    Deprecated

    needs review

  2. def getDepsMap(args: Set[Dependency]): Map[Dependency, Set[Dependency]]
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
    Annotations
    @MMT_TODO( message = "needs review" )
    Deprecated

    needs review

  3. def getFilesRec(a: Archive, in: FilePath): Set[Dependency]
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
    Annotations
    @MMT_TODO( message = "needs review" )
    Deprecated

    needs review

  4. def getTestOutFile(a: Archive, inPath: FilePath): File
    Attributes
    protected
    Definition Classes
    TraversingBuildTarget
    Annotations
    @MMT_TODO( message = "needs review" )
    Deprecated

    needs review

Inherited from Interpreter

Inherited from Importer

Inherited from GeneralImporter

Inherited from TraversingBuildTarget

Inherited from BuildTarget

Inherited from FormatBasedExtension

Inherited from Extension

Inherited from Logger

Inherited from AnyRef

Inherited from Any

Ungrouped