schematic-0.1.0.0: JSON-biased spec and validation tool

Safe HaskellNone
LanguageHaskell2010

Data.Schematic.Utils

Documentation

class Known a where Source #

Minimal complete definition

known

Methods

known :: a Source #

Instances

Known (Proxy k a) Source # 

Methods

known :: Proxy k a Source #

(Known (Sing a a1), Known (Sing [a] as)) => Known (Sing [a] ((:) a a1 as)) Source # 

Methods

known :: Sing [a] ((a ': a1) as) Source #

Known (Sing [k] ([] k)) Source # 

Methods

known :: Sing [k] [k] Source #

KnownNat n => Known (Sing Nat n) Source # 

Methods

known :: Sing Nat n Source #

KnownSymbol s => Known (Sing Symbol s) Source # 

Methods

known :: Sing Symbol s Source #

(Known (Sing k1 a), Known (Sing k b)) => Known (Sing (k1, k) ((,) k1 k a b)) Source # 

Methods

known :: Sing (k1, k) ((k1, k) a b) Source #

(KnownSymbol k, Known (Sing Symbol k)) => Known (Sing PathSegment (Key k)) Source # 
(KnownNat n, Known (Sing Nat n)) => Known (Sing PathSegment (Ix n)) Source # 
Known (Sing [TextConstraint] sl) => Known (Sing Schema (SchemaText sl)) Source # 
Known (Sing [NumberConstraint] sl) => Known (Sing Schema (SchemaNumber sl)) Source # 
Known (Sing [(Symbol, Schema)] stl) => Known (Sing Schema (SchemaObject stl)) Source # 
(Known (Sing [ArrayConstraint] ac), Known (Sing Schema s)) => Known (Sing Schema (SchemaArray ac s)) Source # 

Methods

known :: Sing Schema (SchemaArray ac s) Source #

Known (Sing Schema SchemaNull) Source # 
Known (Sing Schema s) => Known (Sing Schema (SchemaOptional s)) Source # 
KnownNat n => Known (Sing ArrayConstraint (AEq n)) Source # 
KnownNat n => Known (Sing NumberConstraint (NLe n)) Source # 
KnownNat n => Known (Sing NumberConstraint (NGt n)) Source # 
KnownNat n => Known (Sing NumberConstraint (NEq n)) Source # 
KnownNat n => Known (Sing TextConstraint (TEq n)) Source # 
KnownNat n => Known (Sing TextConstraint (TLe n)) Source # 
KnownNat n => Known (Sing TextConstraint (TGt n)) Source # 
(KnownSymbol s, Known (Sing Symbol s)) => Known (Sing TextConstraint (TRegex s)) Source # 
(All Symbol KnownSymbol ss, Known (Sing [Symbol] ss)) => Known (Sing TextConstraint (TEnum ss)) Source # 
(Known (Sing u a), Known (Rec u (Sing u) tl)) => Known (Rec u (Sing u) ((:) u a tl)) Source # 

Methods

known :: Rec u (Sing u) ((u ': a) tl) Source #

Known (Rec u (Sing u) ([] u)) Source # 

Methods

known :: Rec u (Sing u) [u] Source #