Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Parser for Ogma specs stored in JSON files.
Synopsis
- data JSONFormat = JSONFormat {
- specInternalVars :: String
- specInternalVarId :: String
- specInternalVarExpr :: String
- specInternalVarType :: String
- specExternalVars :: String
- specExternalVarId :: String
- specExternalVarType :: String
- specRequirements :: String
- specRequirementId :: String
- specRequirementDesc :: String
- specRequirementExpr :: String
- data JSONFormatInternal = JSONFormatInternal {
- jfiInternalVars :: [JSONPathElement]
- jfiInternalVarId :: [JSONPathElement]
- jfiInternalVarExpr :: [JSONPathElement]
- jfiInternalVarType :: [JSONPathElement]
- jfiExternalVars :: [JSONPathElement]
- jfiExternalVarId :: [JSONPathElement]
- jfiExternalVarType :: [JSONPathElement]
- jfiRequirements :: [JSONPathElement]
- jfiRequirementId :: [JSONPathElement]
- jfiRequirementDesc :: [JSONPathElement]
- jfiRequirementExpr :: [JSONPathElement]
- parseJSONFormat :: JSONFormat -> Either String JSONFormatInternal
- parseJSONSpec :: (String -> Either String a) -> JSONFormat -> Value -> Either String (Spec a)
- valueToString :: String -> Value -> Either String String
- listToEither :: String -> [a] -> Either String a
- parseJSONPath :: Text -> Either String [JSONPathElement]
- showErrors :: Show a => Either a b -> Either String b
Documentation
data JSONFormat Source #
data JSONFormatInternal Source #
parseJSONSpec :: (String -> Either String a) -> JSONFormat -> Value -> Either String (Spec a) Source #
parseJSONPath :: Text -> Either String [JSONPathElement] Source #
Parse a JSONPath expression, returning its element components.