Mercurial > hg-stable
view rust/rhg/src/commands/root.rs @ 46632:5ce2aa7c2ad5
rhg: Move `Repo` object creation into `main()`
… rather than in each sub-command that needs a local repository.
This will allow accessing e.g. `.hg/blackbox.log` before dispatching
to sub-commands.
Differential Revision: https://phab.mercurial-scm.org/D10004
author | Simon Sapin <simon.sapin@octobus.net> |
---|---|
date | Mon, 15 Feb 2021 20:13:09 +0100 |
parents | 80840b651721 |
children | 97ac588b6d9e |
line wrap: on
line source
use crate::error::CommandError; use format_bytes::format_bytes; use hg::utils::files::get_bytes_from_path; pub const HELP_TEXT: &str = " Print the root directory of the current repository. Returns 0 on success. "; pub fn args() -> clap::App<'static, 'static> { clap::SubCommand::with_name("root").about(HELP_TEXT) } pub fn run(invocation: &crate::CliInvocation) -> Result<(), CommandError> { let repo = invocation.repo?; let bytes = get_bytes_from_path(repo.working_directory_path()); invocation .ui .write_stdout(&format_bytes!(b"{}\n", bytes.as_slice()))?; Ok(()) }