rust/hg-core/src/transaction.rs
author Arseniy Alekseyev <aalekseyev@janestreet.com>
Mon, 02 Dec 2024 11:25:26 +0000
changeset 52352 2ff004fb491c
parent 52160 e01e84e5e426
permissions -rw-r--r--
hgignore: add a GlobSuffix type, instead of passing byte arrays I think this makes it easier to understand the purpose of this extra argument.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
}