pub trait Materializer {
// Required methods
fn materialize(
&self,
source: &GitSource,
branch: &BranchInstance,
) -> Result<()>;
fn remove(&self, branch: &BranchInstance) -> Result<()>;
}Expand description
The materializer contract: a workspace presents a full, real, verifiable Git repo at the binding record’s revision. Nothing outside this boundary may care how that presentation is produced — this implementation clones; a future one may project.
Required Methods§
fn materialize(&self, source: &GitSource, branch: &BranchInstance) -> Result<()>
fn remove(&self, branch: &BranchInstance) -> Result<()>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".