Copyright | (C) CSIRO 2017-2018 |
---|---|
License | BSD3 |
Maintainer | Isaac Elliott <isaace71295@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- module Language.Python.Validate.Error
- module Language.Python.Validate.Indentation
- module Language.Python.Validate.Scope
- module Language.Python.Validate.Syntax
- validateModuleAll :: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) => Module '[] a -> Validation (NonEmpty e) (Module '[Scope, Syntax, Indentation] a)
- validateStatementAll :: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) => Statement '[] a -> Validation (NonEmpty e) (Statement '[Scope, Syntax, Indentation] a)
- validateExprAll :: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) => Expr '[] a -> Validation (NonEmpty e) (Expr '[Scope, Syntax, Indentation] a)
- validateAll :: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) => (s '[] a -> ValidateIndentation e (s '[Indentation] a)) -> (s '[Indentation] a -> ValidateSyntax e (s '[Syntax, Indentation] a)) -> (s '[Syntax, Indentation] a -> ValidateScope a e (s '[Scope, Syntax, Indentation] a)) -> s '[] a -> Validation (NonEmpty e) (s '[Scope, Syntax, Indentation] a)
Documentation
:: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) | |
=> Module '[] a |
|
-> Validation (NonEmpty e) (Module '[Scope, Syntax, Indentation] a) |
:: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) | |
=> Statement '[] a |
|
-> Validation (NonEmpty e) (Statement '[Scope, Syntax, Indentation] a) |
:: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) | |
=> Expr '[] a |
|
-> Validation (NonEmpty e) (Expr '[Scope, Syntax, Indentation] a) |
:: (AsIndentationError e a, AsSyntaxError e a, AsScopeError e a) | |
=> (s '[] a -> ValidateIndentation e (s '[Indentation] a)) | Indentation validator |
-> (s '[Indentation] a -> ValidateSyntax e (s '[Syntax, Indentation] a)) | Syntax validator |
-> (s '[Syntax, Indentation] a -> ValidateScope a e (s '[Scope, Syntax, Indentation] a)) | Scope validator |
-> s '[] a | |
-> Validation (NonEmpty e) (s '[Scope, Syntax, Indentation] a) |
Validate a datatype for indentation, syntax, and scope correctness
e.g.
validateModuleAll
=validateAll
validateModuleIndentation
validateModuleSyntax
validateModuleScope