Safe Haskell | None |
---|---|
Language | Haskell2010 |
- interpretWithJson :: Value -> Text -> Rendering Text
- interpret :: Value -> [Expr] -> Rendering Text
- renderTemplate :: Value -> Expr -> Rendering Text
- evalLogic :: Value -> Rendering Bool -> [Expr] -> Rendering Text
- evalCaseLogic :: Value -> Rendering Value -> [(Expr, Expr)] -> Rendering Text
- renderText :: Value -> Expr -> Rendering Text
- numberOrTextFormat :: Rendering Value -> Rendering Text
- evalKeyTruthiness :: Value -> Expr -> Rendering Bool
- evalTruthiness :: Value -> Expr -> Rendering Bool
- containsCheck :: Value -> Expr -> Expr -> Rendering Bool
- getStringsFromArray :: Value -> [Text]
- getNumbersFromArray :: Value -> [Scientific]
- varComparisons :: Value -> (Maybe Scientific -> Maybe Scientific -> Bool) -> Expr -> Expr -> Rendering Bool
- bothSidesEqual :: Value -> Expr -> Expr -> Rendering Bool
- extractValue :: Value -> JsonVarPath -> Rendering Value
- applyFilter :: Value -> Expr -> Rendering Text
- applyCellsM :: Value -> [Expr] -> Maybe Text
- applyFilterM :: Text -> Expr -> Maybe Text
- arrayFilterM :: Value -> Expr -> Maybe Text
- applyArrayFilterM :: [Value] -> Expr -> Maybe Text
- renderv :: Value -> Maybe Text
- renderEachArrayElem :: [Value] -> Maybe [Text]
Documentation
Interpret function - for use in testing the lib
renderTemplate :: Value -> Expr -> Rendering Text Source #
Rendering types
Main template block rendering fn
:: Value | JSON Context |
-> Rendering Bool | Predicate / logical expression result |
-> [Expr] | Expressions to evaluate if true |
-> Rendering Text |
Evaluate predicate result and render
Evaluate case logic
numberOrTextFormat :: Rendering Value -> Rendering Text Source #
Format variable as either number or Text
containsCheck :: Value -> Expr -> Expr -> Rendering Bool Source #
Check if the variable contains the thing on the rhs
getStringsFromArray :: Value -> [Text] Source #
Aggregate all the strings in the underlying array - if present
getNumbersFromArray :: Value -> [Scientific] Source #
Aggregate all the numbers in the underlying array - if present
varComparisons :: Value -> (Maybe Scientific -> Maybe Scientific -> Bool) -> Expr -> Expr -> Rendering Bool Source #
Truth evaluation with variables ONLY numberic comparison allowed, text comparisons not supported
Evaluate a binary comparison
extractValue :: Value -> JsonVarPath -> Rendering Value Source #
Fold over multiple layers of variable syntax, and deal with future event nesting