Safe Haskell | None |
---|---|
Language | Haskell98 |
Synopsis
- data Pattern = Pattern {}
- mkPattern :: Monad m => Text -> m Pattern
- data SchemaType
- data Schema ref = Schema {
- schemaType :: [Choice2 SchemaType (Schema ref)]
- schemaProperties :: HashMap Text (Schema ref)
- schemaPatternProperties :: [(Pattern, Schema ref)]
- schemaAdditionalProperties :: Choice2 Bool (Schema ref)
- schemaItems :: Maybe (Choice2 (Schema ref) [Schema ref])
- schemaAdditionalItems :: Choice2 Bool (Schema ref)
- schemaRequired :: Bool
- schemaDependencies :: HashMap Text (Choice2 [Text] (Schema ref))
- schemaMinimum :: Maybe Scientific
- schemaMaximum :: Maybe Scientific
- schemaExclusiveMinimum :: Bool
- schemaExclusiveMaximum :: Bool
- schemaMinItems :: Int
- schemaMaxItems :: Maybe Int
- schemaUniqueItems :: Bool
- schemaPattern :: Maybe Pattern
- schemaMinLength :: Int
- schemaMaxLength :: Maybe Int
- schemaEnum :: Maybe [Value]
- schemaEnumDescriptions :: Maybe [Text]
- schemaDefault :: Maybe Value
- schemaTitle :: Maybe Text
- schemaDescription :: Maybe Text
- schemaFormat :: Maybe Text
- schemaDivisibleBy :: Maybe Scientific
- schemaDisallow :: [Choice2 SchemaType (Schema ref)]
- schemaExtends :: [Schema ref]
- schemaId :: Maybe Text
- schemaDRef :: Maybe ref
- schemaDSchema :: Maybe Text
- type Graph f ref = Map ref (f ref)
- empty :: Schema ref
- schemaQQ :: QuasiQuoter
Documentation
Compiled regex and its source
mkPattern :: Monad m => Text -> m Pattern Source #
Compile a regex to a pattern, reporting errors with fail
data SchemaType Source #
Primitive JSON types
StringType | |
NumberType | |
IntegerType | |
BooleanType | |
ObjectType | |
ArrayType | |
NullType | |
AnyType | any of the above |
Instances
JSON Schema (Draft 3) Core Schema Definition
Schema | |
|
Instances
Functor Schema Source # | |
Foldable Schema Source # | |
Defined in Data.Aeson.Schema.Types fold :: Monoid m => Schema m -> m # foldMap :: Monoid m => (a -> m) -> Schema a -> m # foldr :: (a -> b -> b) -> b -> Schema a -> b # foldr' :: (a -> b -> b) -> b -> Schema a -> b # foldl :: (b -> a -> b) -> b -> Schema a -> b # foldl' :: (b -> a -> b) -> b -> Schema a -> b # foldr1 :: (a -> a -> a) -> Schema a -> a # foldl1 :: (a -> a -> a) -> Schema a -> a # elem :: Eq a => a -> Schema a -> Bool # maximum :: Ord a => Schema a -> a # minimum :: Ord a => Schema a -> a # | |
Eq ref => Eq (Schema ref) Source # | |
Show ref => Show (Schema ref) Source # | |
(Eq ref, Lift ref) => Lift (Schema ref) Source # | |
FromJSON ref => FromJSON (Schema ref) Source # | |
schemaQQ :: QuasiQuoter Source #
QuasiQuoter for schemas in JSON (e.g. [schemaQQ| { "type": "number", "minimum": 0 } |]
)