struct ProposalWrite<'a, R, N, B> {
adapters: &'a Adapters<R, N>,
builder: &'a B,
state: &'a ReleaseState,
units: &'a [Unit],
versions: &'a BTreeMap<String, Proposed>,
date: &'a str,
entries: &'a BTreeMap<String, Entry>,
revisions: &'a Revisions,
applications: &'a BTreeSet<String>,
}Expand description
Everything needed to write a proposal into a worktree.
Fields§
§adapters: &'a Adapters<R, N>§builder: &'a B§state: &'a ReleaseState§units: &'a [Unit]§versions: &'a BTreeMap<String, Proposed>§date: &'a str§entries: &'a BTreeMap<String, Entry>§revisions: &'a Revisions§applications: &'a BTreeSet<String>Implementations§
Source§impl<R, N, B: AssetBuilder> ProposalWrite<'_, R, N, B>
impl<R, N, B: AssetBuilder> ProposalWrite<'_, R, N, B>
Sourcefn write<G: ProposalGit>(
&self,
worktree: &Path,
committer: &Committer<'_, G>,
) -> Result<(), ProposalError>
fn write<G: ProposalGit>( &self, worktree: &Path, committer: &Committer<'_, G>, ) -> Result<(), ProposalError>
Write the proposal into the worktree of the authority tip, one commit per release group. Units whose version on the tip differs from the analyzed checkout are left unchanged.
The whole proposal is checked first. Each group is then planned and
applied alone, and generated files such as Cargo.lock are refreshed
after its manifest edits, so every commit has a consistent lockfile.
Auto Trait Implementations§
impl<'a, R, N, B> !RefUnwindSafe for ProposalWrite<'a, R, N, B>
impl<'a, R, N, B> !Send for ProposalWrite<'a, R, N, B>
impl<'a, R, N, B> !Sync for ProposalWrite<'a, R, N, B>
impl<'a, R, N, B> !UnwindSafe for ProposalWrite<'a, R, N, B>
impl<'a, R, N, B> Freeze for ProposalWrite<'a, R, N, B>
impl<'a, R, N, B> Unpin for ProposalWrite<'a, R, N, B>
impl<'a, R, N, B> UnsafeUnpin for ProposalWrite<'a, R, N, B>
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