class DepsGenerator extends LaTeXBuildTarget
- Source
- LaTeXML.scala
- Alphabetic
- By Inheritance
- DepsGenerator
- LaTeXBuildTarget
- BuildTargetArguments
- STeXAnalysis
- TraversingBuildTarget
- BuildTarget
- FormatBasedExtension
- Extension
- Logger
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new DepsGenerator()
Type Members
-
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
-
case class
LatexError(s: String, l: String) extends ExtensionError with Product with Serializable
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
anaStartArgs(args: List[String]): Unit
- Definition Classes
- BuildTargetArguments
-
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
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
-
def
build(a: Archive, up: Update, in: FilePath): Unit
delegates to build
delegates to build
- Definition Classes
- TraversingBuildTarget → BuildTarget
-
def
buildDir(bd: BuildTask, builtChildren: List[BuildTask], 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
- TraversingBuildTarget
-
def
buildFile(bt: BuildTask): BuildResult
the main abstract method for building one file
the main abstract method for building one file
- Definition Classes
- LaTeXBuildTarget → TraversingBuildTarget
-
def
buildOpts: OptionDescrs
options to be overridden by subclasses
options to be overridden by subclasses
- Definition Classes
- LaTeXBuildTarget → BuildTargetArguments
-
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
-
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
-
def
clean(a: Archive, in: FilePath = EmptyPath): Unit
recursively delete output files in parallel (!)
recursively delete output files in parallel (!)
- Definition Classes
- TraversingBuildTarget → BuildTarget
-
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
- LaTeXBuildTarget → TraversingBuildTarget
-
def
cleanFile(a: Archive, curr: Current): Unit
additional method that implementations may provide: cleans one file
additional method that implementations may provide: cleans one file
deletes the output and error file by default, may be overridden to, e.g., delete auxiliary files
- a
the containing archive
- curr
the inDim whose output is to be deleted
- Definition Classes
- TraversingBuildTarget
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
commonOpts: OptionDescrs
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
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
-
def
createLocalPaths(a: Archive, dir: File): Unit
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
def
createLocalPaths(bt: BuildTask): Unit
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
def
createSms(a: Archive, inFile: File, outFile: File): Unit
Collect sms content and write to outFile.
Collect sms content and write to outFile.
- Definition Classes
- STeXAnalysis
-
lazy val
defaultPrefix: String
- Definition Classes
- Extension
-
def
delete(f: File): Unit
auxiliary method for deleting a file
auxiliary method for deleting a file
- Attributes
- protected
- Definition Classes
- BuildTarget
-
def
deleteWithLog(f: File): Unit
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
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
-
def
destroyWhenRemainingTasksFinished: Unit
convenience for calling waitUntilRemainingTasksFinished and then destroy
convenience for calling waitUntilRemainingTasksFinished and then destroy
- Definition Classes
- Extension
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
estimateResult(bt: BuildTask): BuildSuccess
estimate the BuildResult without building, e.g., to predict dependencies
estimate the BuildResult without building, e.g., to predict dependencies
- Definition Classes
- LaTeXBuildTarget → TraversingBuildTarget
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
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
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getDeps(a: Archive, in: File, parents: Set[File], amble: Option[File] = None): List[Dependency]
get dependencies
get dependencies
- Definition Classes
- STeXAnalysis
-
def
getDirFiles(a: Archive, dir: File, includeFile: (String) ⇒ Boolean): List[String]
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
def
getDirFilesByExt(a: Archive, dir: File, exts: List[String]): List[File]
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
def
getErrorFile(a: Archive, inPath: FilePath): File
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
-
def
getFolderErrorFile(a: Archive, inPath: FilePath): File
- Definition Classes
- TraversingBuildTarget
-
def
getFolderOutFile(a: Archive, inPath: FilePath): File
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
-
def
getFromFirstArgOrEnvvar(args: List[String], name: String, default: String = ""): String
- Attributes
- protected
- Definition Classes
- Extension
-
def
getOutFile(a: Archive, inPath: FilePath): File
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
-
def
getOutPath(a: Archive, outFile: File): FilePath
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
inDim: ArchiveDimension
the input dimension/archive folder
the input dimension/archive folder
- Definition Classes
- LaTeXBuildTarget → TraversingBuildTarget
-
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
-
def
includeFile(n: 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
- LaTeXBuildTarget → TraversingBuildTarget
-
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
-
def
isApplicable(format: String): Boolean
- format
the format/key/other identifier, for which an extension is needed
- returns
true if this extension is applicable
- Definition Classes
- BuildTarget → FormatBasedExtension
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
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
- DepsGenerator → BuildTarget
-
val
localpathsFile: String
- Definition Classes
- LaTeXBuildTarget
-
def
log(e: Error): Unit
logs an error - always logged
logs an error - always logged
- Attributes
- protected
- Definition Classes
- Logger
-
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
-
def
logError(s: ⇒ String): Unit
log as an error message
log as an error message
- Attributes
- protected
- Definition Classes
- Logger
-
def
logFailure(f: FilePath): Unit
- Attributes
- protected
- Definition Classes
- STeXAnalysis
-
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
-
def
logPrefix: String
defaults to the key
defaults to the key
- Definition Classes
- BuildTarget → Extension → Logger
-
def
logResult(s: String): Unit
auxiliary method for logging results
auxiliary method for logging results
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
-
def
logSuccess(f: FilePath): Unit
- Attributes
- protected
- Definition Classes
- STeXAnalysis
-
def
logTemp(s: ⇒ String): Unit
temporary logging - always logged
temporary logging - always logged
- Attributes
- protected
- Definition Classes
- Logger
-
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
-
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
-
def
matchPathAndRepo(archive: Archive, inFile: File, line: String, parents: Set[File]): List[Dependency]
- Attributes
- protected
- Definition Classes
- STeXAnalysis
-
def
matchSmsEntry(a: Archive, line: String): List[STeXStructure]
- Definition Classes
- STeXAnalysis
-
def
mhRepos(a: Archive, r: String, b: String): List[Dependency]
- Definition Classes
- STeXAnalysis
-
def
mhReposClosure(archive: Archive, parents: Set[File], r: String, b: String): List[Dependency]
- Definition Classes
- STeXAnalysis
-
def
mkDep(a: Archive, ar: String, fp: FilePath): List[Dependency]
- Definition Classes
- STeXAnalysis
-
def
mkFileDep(archive: Archive, filePath: FilePath): Dependency
- Definition Classes
- STeXAnalysis
-
def
mkSTeXStructure(a: Archive, in: File, lines: Iterator[String], parents: Set[File]): STeXStructure
Method for creating STeXStructures, used for generating sms content and finding dependencies.
Method for creating STeXStructures, used for generating sms content and finding dependencies. inFile is used for relative \input paths
- Definition Classes
- STeXAnalysis
-
var
nameOfExecutable: String
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
val
optionsMap: OptionMap
the map computed from buildOpts
the map computed from buildOpts
- Attributes
- protected
- Definition Classes
- BuildTargetArguments
-
val
outDim: ArchiveDimension
the output archive folder
the output archive folder
- Definition Classes
- DepsGenerator → TraversingBuildTarget
-
val
outExt: String
the file extension used for generated files, defaults to outDim, override as needed
the file extension used for generated files, defaults to outDim, override as needed
- Definition Classes
- DepsGenerator → TraversingBuildTarget
-
def
parallel: Boolean
if true, multiple files/folders are built in parallel
if true, multiple files/folders are built in parallel
- Definition Classes
- TraversingBuildTarget
-
var
pipeOutput: Boolean
- Definition Classes
- LaTeXBuildTarget
-
val
pipeOutputOption: String
- Definition Classes
- LaTeXBuildTarget
-
def
procLogger(output: StringBuffer, pipeOutput: Boolean): ProcessLogger
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
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
-
val
quiet: Boolean
- Definition Classes
- BuildTargetArguments
-
def
readingSource(a: Archive, in: File, amble: Option[File] = None): List[Dependency]
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
def
reallyBuildFile(bt: BuildTask): BuildResult
to be implemented
to be implemented
- Definition Classes
- DepsGenerator → LaTeXBuildTarget
-
val
remainingStartArguments: List[String]
arguments to be consumed by subclasses
arguments to be consumed by subclasses
- Attributes
- protected
- Definition Classes
- BuildTargetArguments
- val report: Report
-
def
runBuildTask(bt: BuildTask, 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
-
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
-
def
skip(bt: BuildTask): Boolean
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
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
- LaTeXBuildTarget → Extension
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
timeout(pb: ProcessBuilder, log: ProcessLogger): Int
run process with logger synchronously within the given timeout
run process with logger synchronously within the given timeout
- returns
exit code
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
val
timeoutOption: String
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
var
timeoutVal: Int
- Attributes
- protected
- Definition Classes
- LaTeXBuildTarget
-
def
toKeyDep(d: Dependency, key: String): Dependency
- Attributes
- protected
- Definition Classes
- STeXAnalysis
-
def
toString(): String
- Definition Classes
- BuildTarget → AnyRef → Any
-
def
verbOpts: OptionDescrs
- Definition Classes
- BuildTargetArguments
-
val
verbose: Boolean
- Definition Classes
- BuildTargetArguments
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
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
Deprecated Value Members
-
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
- TraversingBuildTarget → BuildTarget
- Annotations
- @MMT_TODO( message = "needs review" )
- Deprecated
needs review
-
def
getDepsMap(args: Set[Dependency]): Map[Dependency, Set[Dependency]]
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
- Annotations
- @MMT_TODO( message = "needs review" )
- Deprecated
needs review
-
def
getFilesRec(a: Archive, in: FilePath): Set[Dependency]
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
- Annotations
- @MMT_TODO( message = "needs review" )
- Deprecated
needs review
-
def
getTestOutFile(a: Archive, inPath: FilePath): File
- Attributes
- protected
- Definition Classes
- TraversingBuildTarget
- Annotations
- @MMT_TODO( message = "needs review" )
- Deprecated
needs review