Module Vcs.Trait

The traits that Vcs depends on to implement its functionality.

Vcs uses the provider library in order not to commit to a specific implementation for the low level interaction with git. This works by defining a set of traits that constitute the low level operations needed by Vcs.

Casual users of Vcs are not expected to use this module directly. Rather this is used by implementers of providers for the Vcs library.

type add = [
  1. | `Add of add_ty
]
and add_ty
module Add : sig ... end
type branch = [
  1. | `Branch of branch_ty
]
and branch_ty
module Branch : sig ... end
type commit = [
  1. | `Commit of commit_ty
]
and commit_ty
module Commit : sig ... end
type config = [
  1. | `Config of config_ty
]
and config_ty
module Config : sig ... end
type file_system = [
  1. | `File_system of file_system_ty
]
and file_system_ty
module File_system : sig ... end
type git = [
  1. | `Git of git_ty
]
and git_ty
module Git : sig ... end
type init = [
  1. | `Init of init_ty
]
and init_ty
module Init : sig ... end
type log = [
  1. | `Log of log_ty
]
and log_ty
module Log : sig ... end
type ls_files = [
  1. | `Ls_files of ls_files_ty
]
and ls_files_ty
module Ls_files : sig ... end
type name_status = [
  1. | `Name_status of name_status_ty
]
and name_status_ty
module Name_status : sig ... end
type num_status = [
  1. | `Num_status of num_status_ty
]
and num_status_ty
module Num_status : sig ... end
type refs = [
  1. | `Refs of refs_ty
]
and refs_ty
module Refs : sig ... end
type rev_parse = [
  1. | `Rev_parse of rev_parse_ty
]
and rev_parse_ty
module Rev_parse : sig ... end
type show = [
  1. | `Show of show_ty
]
and show_ty
module Show : sig ... end
type Provider.Trait.t +=
  1. | Add : ('t, (module Add.S with type t = 't), [> add ]) Provider.Trait.t
  2. | Branch : ('t, (module Branch.S with type t = 't), [> branch ]) Provider.Trait.t
  3. | Commit : ('t, (module Commit.S with type t = 't), [> commit ]) Provider.Trait.t
  4. | Config : ('t, (module Config.S with type t = 't), [> config ]) Provider.Trait.t
  5. | File_system : ('t, (module File_system.S with type t = 't), [> file_system ]) Provider.Trait.t
  6. | Git : ('t, (module Git.S with type t = 't), [> git ]) Provider.Trait.t
  7. | Init : ('t, (module Init.S with type t = 't), [> init ]) Provider.Trait.t
  8. | Log : ('t, (module Log.S with type t = 't), [> log ]) Provider.Trait.t
  9. | Ls_files : ('t, (module Ls_files.S with type t = 't), [> ls_files ]) Provider.Trait.t
  10. | Name_status : ('t, (module Name_status.S with type t = 't), [> name_status ]) Provider.Trait.t
  11. | Num_status : ('t, (module Num_status.S with type t = 't), [> num_status ]) Provider.Trait.t
  12. | Refs : ('t, (module Refs.S with type t = 't), [> refs ]) Provider.Trait.t
  13. | Rev_parse : ('t, (module Rev_parse.S with type t = 't), [> rev_parse ]) Provider.Trait.t
  14. | Show : ('t, (module Show.S with type t = 't), [> show ]) Provider.Trait.t

The union of all traits defined in Vcs.