annotate rust/hg-core/src/transaction.rs @ 52300:04b9a56c2d25

rust-lib: only export very common types to the top of the crate This was done very early in the Rust project's lifecycle and I had very little Rust experience. Let's keep the `DirstateParents` since they'll pop up in all higher-level code and make the rest more explicit imports to make the imports less confusing and the lib less cluttered.
author Rapha?l Gom?s <rgomes@octobus.net>
date Mon, 04 Nov 2024 11:13:05 +0100
parents e01e84e5e426
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
52160
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
1 use std::path::Path;
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
2
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
3 /// The Mercurial transaction system is based on the append-only nature
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
4 /// of its core files. This exposes the necessary methods to safely write to
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
5 /// the different core datastructures.
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
6 pub trait Transaction {
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
7 /// Record the state of an append-only file before update
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
8 fn add(&mut self, file: impl AsRef<Path>, offset: usize);
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
9
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
10 // TODO the rest of the methods once we do more in Rust.
e01e84e5e426 rust-revlog: add a Rust-only `InnerRevlog`
Rapha?l Gom?s <rgomes@octobus.net>
parents:
diff changeset
11 }