package volgo

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Non_raising.MakeSource

The interface exported by Vcs.

'a result is the identity for the raising API, or a type based on Result depending on the API selected by the user in the non-raising APIs.

The individual functions are documented in the Vcs module.

Parameters

module M : M

Signature

Sourceval init : < Volgo__.Trait.init.. > Volgo__.Vcs0.t -> path:Fpath_sexp0.Absolute_path.t -> (Volgo__.Repo_root.t, M.t) Result.t
Sourceval find_enclosing_git_repo_root : < Volgo__.Trait.file_system.. > Volgo__.Vcs0.t -> from:Fpath_sexp0.Absolute_path.t -> (Volgo__.Repo_root.t option, M.t) Result.t
Sourceval find_enclosing_repo_root : < Volgo__.Trait.file_system.. > Volgo__.Vcs0.t -> from:Fpath_sexp0.Absolute_path.t -> store:(Fpath_sexp0.Fsegment.t * 'store) list -> (('store * Volgo__.Repo_root.t) option, M.t) Result.t
Sourceval add : < Volgo__.Trait.add.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> path:Path_in_repo.t -> (unit, M.t) Result.t
Sourceval commit : < Volgo__.Trait.commit ; Volgo__.Trait.current_revision.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> commit_message:Volgo__.Commit_message.t -> (Rev.t, M.t) Result.t
Sourceval current_branch : < Volgo__.Trait.current_branch.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> (Branch_name.t, M.t) Result.t
Sourceval current_branch_opt : < Volgo__.Trait.current_branch.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> (Branch_name.t option, M.t) Result.t
Sourceval current_revision : < Volgo__.Trait.current_revision.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> (Rev.t, M.t) Result.t
Sourceval ls_files : < Volgo__.Trait.ls_files.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> below:Path_in_repo.t -> (Path_in_repo.t list, M.t) Result.t
Sourceval show_file_at_rev : < Volgo__.Trait.show.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> rev:Rev.t -> path:Path_in_repo.t -> ([ `Present of string | `Absent ], M.t) Result.t
Sourceval load_file : < Volgo__.Trait.file_system.. > Volgo__.Vcs0.t -> path:Fpath_sexp0.Absolute_path.t -> (string, M.t) Result.t
Sourceval save_file : ?perms:int -> < Volgo__.Trait.file_system.. > Volgo__.Vcs0.t -> path:Fpath_sexp0.Absolute_path.t -> file_contents:string -> (unit, M.t) Result.t
Sourceval read_dir : < Volgo__.Trait.file_system.. > Volgo__.Vcs0.t -> dir:Fpath_sexp0.Absolute_path.t -> (Fpath_sexp0.Fsegment.t list, M.t) Result.t
Sourceval rename_current_branch : < Volgo__.Trait.branch.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> to_:Branch_name.t -> (unit, M.t) Result.t
Sourceval name_status : < Volgo__.Trait.name_status.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> changed:Volgo__.Name_status.Changed.t -> (Volgo__.Name_status.Change.t list, M.t) Result.t
Sourceval num_status : < Volgo__.Trait.num_status.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> changed:Volgo__.Name_status.Changed.t -> (Volgo__.Num_status.Change.t list, M.t) Result.t
Sourceval log : < Volgo__.Trait.log.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> (Log.Line.t list, M.t) Result.t
Sourceval refs : < Volgo__.Trait.refs.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> (Refs.Line.t list, M.t) Result.t
Sourceval graph : < Volgo__.Trait.log ; Volgo__.Trait.refs.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> (Volgo__.Graph.t, M.t) Result.t
Sourceval set_user_name : < Volgo__.Trait.config.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> user_name:Volgo__.User_name.t -> (unit, M.t) Result.t
Sourceval set_user_email : < Volgo__.Trait.config.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> user_email:Volgo__.User_email.t -> (unit, M.t) Result.t
Sourceval git : ?env:string array -> ?run_in_subdir:Path_in_repo.t -> < Volgo__.Trait.git.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> args:string list -> f:(Volgo__.Git.Output.t -> ('a, M.t) Result.t) -> ('a, M.t) Result.t

See the note in Vcs.git about error handling with respect to exceptions raised by f.

Some helpers dedicated to the corresponding result type are provided by the module Vcs.Git. They are convenient to use to build the f parameter.

Sourceval hg : ?env:string array -> ?run_in_subdir:Path_in_repo.t -> < Volgo__.Trait.hg.. > Volgo__.Vcs0.t -> repo_root:Volgo__.Repo_root.t -> args:string list -> f:(Volgo__.Hg.Output.t -> ('a, M.t) Result.t) -> ('a, M.t) Result.t