yamlparse-applicative-0.1.0.1: Declaritive configuration parsing with free docs

Safe HaskellNone
LanguageHaskell2010

YamlParse.Applicative.Explain

Synopsis

Documentation

data Schema Source #

Instances
Eq Schema Source # 
Instance details

Defined in YamlParse.Applicative.Explain

Methods

(==) :: Schema -> Schema -> Bool #

(/=) :: Schema -> Schema -> Bool #

Show Schema Source # 
Instance details

Defined in YamlParse.Applicative.Explain

Generic Schema Source # 
Instance details

Defined in YamlParse.Applicative.Explain

Associated Types

type Rep Schema :: Type -> Type #

Methods

from :: Schema -> Rep Schema x #

to :: Rep Schema x -> Schema #

Validity Schema Source # 
Instance details

Defined in YamlParse.Applicative.Explain

type Rep Schema Source # 
Instance details

Defined in YamlParse.Applicative.Explain

type Rep Schema = D1 (MetaData "Schema" "YamlParse.Applicative.Explain" "yamlparse-applicative-0.1.0.1-UxmMdzpIow2sVHpoP0RIi" False) ((((C1 (MetaCons "EmptySchema" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "AnySchema" PrefixI False) (U1 :: Type -> Type)) :+: (C1 (MetaCons "ExactSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :+: C1 (MetaCons "NullSchema" PrefixI False) (U1 :: Type -> Type))) :+: ((C1 (MetaCons "MaybeSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema)) :+: C1 (MetaCons "BoolSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)))) :+: (C1 (MetaCons "NumberSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text))) :+: C1 (MetaCons "StringSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)))))) :+: (((C1 (MetaCons "ArraySchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema)) :+: C1 (MetaCons "ObjectSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema))) :+: (C1 (MetaCons "FieldSchema" PrefixI False) ((S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool)) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema))) :+: C1 (MetaCons "ListSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema)))) :+: ((C1 (MetaCons "MapSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema)) :+: C1 (MetaCons "MapKeysSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema))) :+: (C1 (MetaCons "ApSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema)) :+: (C1 (MetaCons "AltSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Schema])) :+: C1 (MetaCons "CommentSchema" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Schema)))))))

explainParser :: Parser i o -> Schema Source #

Use a parser to produce a schema that describes it for documentation.

Nothing means that nothing even needs to be parsed, you just get the a without parsing anything. This is for the pure case.