Module working_directory_pool

Source
Expand description

A pool of WorkingDirectory. Error concept: if there are errors, the WorkingDirectory is renamed but stays in the pool directory. (Only directories with names that are parseable as u64 are treated as usable entries.)

Structs§

ProcessingError
WdAllowBareOpt
WorkingDirectoryCleanupToken
This is a linear type (i.e. it cannot be dropped) and has to be passed to working_directory_cleanup, which will potentially clean up or delete the working directory that this represents. If you want to prevent that, call prohibit_cleanup() on it before passing it, or call its force_drop() method (easier to do in error handlers).
WorkingDirectoryId
WorkingDirectoryIdOpt
A precursor of WorkingDirectoryId that allows both D123 and 123 as IDs on parsing. This is to allow for allow_bare. Must be converted before use.
WorkingDirectoryPool
WorkingDirectoryPoolAndLock
WorkingDirectoryPoolBaseDir
WorkingDirectoryPoolBaseDirLock
A public lock on a WorkingDirectoryPoolBaseDir. Takes exclusive access to the WorkingDirectoryPoolBaseDir.
WorkingDirectoryPoolContext
Completed options, and WorkingDirectoryPoolBaseDir even has an open (lockable) file.
WorkingDirectoryPoolGuard
WorkingDirectoryPoolGuardMut
WorkingDirectoryPoolOpts
For RunConfigOpts configuration file. remote_repository_url is separate from this because that seemed to make more sense for the RunConfigOpts.

Statics§

WORKING_DIRECTORY_ID_ALLOW_WITHOUT_PREFIX
But actually use WorkingDirectoryPoolOpts and its to_working_directory_id method instead!

Functions§

finish_parsing_working_directory_ids