| Safe Haskell | None |
|---|---|
| Language | Haskell98 |
Data.Aeson.Schema.Types
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
Constructors
| Pattern | |
Fields | |
mkPattern :: Monad m => Text -> m Pattern Source #
Compile a regex to a pattern, reporting errors with fail
data SchemaType Source #
Primitive JSON types
Constructors
| StringType | |
| NumberType | |
| IntegerType | |
| BooleanType | |
| ObjectType | |
| ArrayType | |
| NullType | |
| AnyType | any of the above |
Instances
JSON Schema (Draft 3) Core Schema Definition
Constructors
| Schema | |
Fields
| |
Instances
| Functor Schema Source # | |
| Foldable Schema Source # | |
Defined in Data.Aeson.Schema.Types Methods 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 } |])