Module tectonic::driver

source ·
Expand description

This module contains the high-level interface that ties together the various engines. The main struct is ProcessingSession, which knows how to run (and re-run if necessary) the various engines in the right order.

For an example of how to use this module, see cli_driver.rs, which contains tectonic’s main CLI program.

Structs

A summary of the I/O that happened on a file. We record its access pattern; where it came from, if it was used as an input; the cryptographic digest of the file when it was last read; and the cryptographic digest of the file as it was last written.
The IoEvents type implements the IoEventBackend. It is used to figure out when to rerun the TeX engine, to figure out which files should be written to disk, and to emit Makefile rules.
The ProcessingSession struct runs the whole show when we’re actually processing a file. It understands, for example, the need to re-run the TeX engine if the .aux file changed.
A builder-style interface for creating a ProcessingSession.

Enums

Different patterns with which files may have been accessed by the underlying engines. Once a file is marked as ReadThenWritten or WrittenThenRead, its pattern does not evolve further.
The different types of output files that tectonic knows how to produce.
The different types of “passes” that ProcessingSession knows how to run. See ProcessingSession::run for more details.