pub struct ModelPatch {
base_model_dir: PathBuf,
file_patches: Vec<FilePatch>,
toml_patch: Option<Table>,
}Expand description
Struct to hold a set of patches to apply to a base model.
Fields§
§base_model_dir: PathBuf§file_patches: Vec<FilePatch>§toml_patch: Option<Table>Implementations§
Source§impl ModelPatch
impl ModelPatch
Sourcepub fn new<P: Into<PathBuf>>(base_model_dir: P) -> Self
pub fn new<P: Into<PathBuf>>(base_model_dir: P) -> Self
Create a new empty ModelPatch for a base model at the given directory.
Sourcepub fn from_example(name: &str) -> Self
pub fn from_example(name: &str) -> Self
Create a new empty ModelPatch for an example model
Sourcepub fn with_file_patch(self, patch: FilePatch) -> Self
pub fn with_file_patch(self, patch: FilePatch) -> Self
Add a single FilePatch to this ModelPatch.
Sourcepub fn with_file_patches<I>(self, patches: I) -> Selfwhere
I: IntoIterator<Item = FilePatch>,
pub fn with_file_patches<I>(self, patches: I) -> Selfwhere
I: IntoIterator<Item = FilePatch>,
Add multiple FilePatch entries to this ModelPatch.
Sourcepub fn with_toml_patch(self, patch_str: impl AsRef<str>) -> Self
pub fn with_toml_patch(self, patch_str: impl AsRef<str>) -> Self
Add a TOML patch (provided as a string) to this ModelPatch.
The string will be parsed into a toml::value::Table.
Sourcepub fn build<O: AsRef<Path>>(&self, out_dir: O) -> Result<()>
pub fn build<O: AsRef<Path>>(&self, out_dir: O) -> Result<()>
Build this ModelPatch into out_dir (creating/overwriting files there).
Sourcepub fn build_to_tempdir(&self) -> Result<TempDir>
pub fn build_to_tempdir(&self) -> Result<TempDir>
Build the patched model into a temporary directory and return the TempDir.
Auto Trait Implementations§
impl Freeze for ModelPatch
impl RefUnwindSafe for ModelPatch
impl Send for ModelPatch
impl Sync for ModelPatch
impl Unpin for ModelPatch
impl UnwindSafe for ModelPatch
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> 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