git-vogue-0.2.1.0: A framework for pre-commit checks.

Safe HaskellNone
LanguageHaskell2010

Git.Vogue.Types

Synopsis

Documentation

data VogueOptions Source

Options parsed from the command-line.

Constructors

Options 

data VogueCommand Source

Commands, with parameters, to be executed.

Constructors

CmdInit

Add git-vogue support to a git repository.

CmdVerify

Verify that support is installed and plugins happen.

CmdPlugins

List the plugins that git-vogue knows about.

CmdDisable PluginName

Disable a plugin

CmdEnable PluginName

Enable a plugin

CmdRunCheck

Run check plugins on files in a git repository.

CmdRunFix

Run fix plugins on files in a git repository.

data Check Source

Phantom type for Statuses related to checking

data Fix Source

Phantom type for Statuses related to fixing

data Result Source

Result of running a Plugin

data Plugin m Source

A plugin that can be told to check or fix a list of files

Constructors

Plugin 

Instances

data SearchMode Source

We want the flexibility of just checking changed files, or maybe checking all of them.

data PluginDiscoverer m Source

A thing that can find plugins, for example we might search through the libexec directory for executables.

Constructors

PluginDiscoverer 

Fields

discoverPlugins :: m [Plugin m]
 
disablePlugin :: PluginName -> m ()
 
enablePlugin :: PluginName -> m ()
 

data VCS m Source

A VCS backend, such as git.

Constructors

VCS 

Fields

getFiles :: SearchMode -> m [FilePath]

Find all staged files

installHook :: m ()

Install pre-commit hook, will only be called if checkHook returns False

removeHook :: m ()

Remove pre-commit hook

checkHook :: m Bool

Check pre-commit hook

getTopLevel :: m FilePath

Find the / of the repo