pub struct NoOutputFileSystem<C: Character> {
pub kpse: Kpathsea,
pub envs: HMap<String, String>,
pub interner: StringInterner<StringBackend<SymbolU32>, FxBuildHasher>,
/* private fields */
}Expand description
A FileSystem that does not write to the local physical file system.
If a file is modified, its contents are kept in memory.
Fields§
§kpse: Kpathsea§envs: HMap<String, String>§interner: StringInterner<StringBackend<SymbolU32>, FxBuildHasher>Implementations§
Trait Implementations§
Source§impl<C: Character> Clone for NoOutputFileSystem<C>
impl<C: Character> Clone for NoOutputFileSystem<C>
Source§impl<C: Character> FileSystem for NoOutputFileSystem<C>
impl<C: Character> FileSystem for NoOutputFileSystem<C>
Source§type File = VirtualFile<C>
type File = VirtualFile<C>
The type of files provided by this
FileSystem.Source§fn new(pwd: PathBuf) -> Self
fn new(pwd: PathBuf) -> Self
Creates a new
FileSystem with the given working directory.Source§fn ref_str(&self, id: <Self::File as File>::SourceRefID) -> &str
fn ref_str(&self, id: <Self::File as File>::SourceRefID) -> &str
Returns a human-readable representation of a
SourceRefID; e.g. the file name/path.Source§fn get<S: AsRef<str>>(&mut self, path: S) -> Self::File
fn get<S: AsRef<str>>(&mut self, path: S) -> Self::File
Returns the file with the given name in the file database.
May return nonexistent files in the CWD
Source§fn set_pwd(&mut self, pwd: PathBuf) -> PathBuf
fn set_pwd(&mut self, pwd: PathBuf) -> PathBuf
Sets the working directory of this
FileSystem, returning the old working directory
and updating the file database.Source§fn open_in(&mut self, idx: u8, file: Self::File)
fn open_in(&mut self, idx: u8, file: Self::File)
Opens the file with the given index for reading (
\openin).Source§fn read<ET: EngineTypes<Char = <Self::File as File>::Char>, F: FnMut(ET::Token)>(
&mut self,
idx: u8,
handler: &mut <ET::CSName as CSName<ET::Char>>::Handler,
state: &ET::State,
cont: F,
) -> TeXResult<(), ET>
fn read<ET: EngineTypes<Char = <Self::File as File>::Char>, F: FnMut(ET::Token)>( &mut self, idx: u8, handler: &mut <ET::CSName as CSName<ET::Char>>::Handler, state: &ET::State, cont: F, ) -> TeXResult<(), ET>
Reads a line from the file with the given index and current
CategoryCodeScheme (\read),
respecting groups (i.e. will continue reading at the end of a line until all open groups are closed).Source§fn readline<ET: EngineTypes<Char = <Self::File as File>::Char>, F: FnMut(ET::Token)>(
&mut self,
idx: u8,
_state: &ET::State,
cont: F,
) -> TeXResult<(), ET>
fn readline<ET: EngineTypes<Char = <Self::File as File>::Char>, F: FnMut(ET::Token)>( &mut self, idx: u8, _state: &ET::State, cont: F, ) -> TeXResult<(), ET>
Reads a line from the file with the given index using
CategoryCode::Other
expect for space characters (\readline).Auto Trait Implementations§
impl<C> Freeze for NoOutputFileSystem<C>
impl<C> RefUnwindSafe for NoOutputFileSystem<C>where
C: RefUnwindSafe,
impl<C> Send for NoOutputFileSystem<C>
impl<C> Sync for NoOutputFileSystem<C>
impl<C> Unpin for NoOutputFileSystem<C>where
C: Unpin,
impl<C> UnsafeUnpin for NoOutputFileSystem<C>
impl<C> UnwindSafe for NoOutputFileSystem<C>where
C: UnwindSafe + RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more