Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- dataizeStep :: Context -> Object -> (Context, Either Object Bytes)
- dataizeStep' :: Context -> Object -> Either Object Bytes
- dataizeRecursively :: Context -> Object -> Either Object Bytes
- dataizeStepChain' :: Context -> Object -> ([LogEntry (Either Object Bytes)], Either Object Bytes)
- dataizeStepChain :: Object -> DataizeChain (Context, Either Object Bytes)
- dataizeRecursivelyChain' :: Context -> Object -> ([LogEntry (Either Object Bytes)], Either Object Bytes)
- dataizeRecursivelyChain :: Bool -> Object -> DataizeChain (Either Object Bytes)
- evaluateDataizationFunChain :: (res -> Bytes) -> (Bytes -> a) -> (Bytes -> Object) -> (a -> a -> res) -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateBinaryDataizationFunChain :: (res -> Bytes) -> (Bytes -> a) -> (Bytes -> Object) -> (Object -> Object) -> (Object -> Object) -> (a -> a -> res) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateUnaryDataizationFunChain :: (res -> Bytes) -> (Bytes -> a) -> (Bytes -> Object) -> (Object -> Object) -> (a -> res) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateIntIntIntFunChain :: (Int -> Int -> Int) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateIntIntBoolFunChain :: (Int -> Int -> Bool) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateBytesBytesBytesFunChain :: (Int -> Int -> Int) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateBytesBytesFunChain :: (Int -> Int) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateFloatFloatFloatFunChain :: (Double -> Double -> Double) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateBuiltinFunChain :: String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateBuiltinFunChainUnknown :: String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- evaluateBuiltinFun :: Context -> String -> Object -> EvaluationState -> (Object, EvaluationState)
- evaluateIODataizationFunChain :: IO String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState)
- extractRho :: Object -> Object
- extractAlpha0 :: Object -> Object
- extractLabel :: String -> Object -> Object
- wrapBytesInInt :: Bytes -> Object
- wrapBytesInFloat :: Bytes -> Object
- wrapBytesInString :: Bytes -> Object
- wrapBytesInBytes :: Bytes -> Object
- wrapTermination :: Object
- wrapBytesAsBool :: Bytes -> Object
Documentation
dataizeStep :: Context -> Object -> (Context, Either Object Bytes) Source #
Perform one step of dataization to the object (if possible).
dataizeRecursively :: Context -> Object -> Either Object Bytes Source #
Recursively perform normalization and dataization until we get bytes in the end.
dataizeStepChain' :: Context -> Object -> ([LogEntry (Either Object Bytes)], Either Object Bytes) Source #
dataizeStepChain :: Object -> DataizeChain (Context, Either Object Bytes) Source #
Perform one step of dataization to the object (if possible), reporting back individiual steps.
dataizeRecursivelyChain' :: Context -> Object -> ([LogEntry (Either Object Bytes)], Either Object Bytes) Source #
dataizeRecursivelyChain :: Bool -> Object -> DataizeChain (Either Object Bytes) Source #
Recursively perform normalization and dataization until we get bytes in the end, reporting intermediate steps
evaluateDataizationFunChain Source #
:: (res -> Bytes) | How to convert the result back to bytes |
-> (Bytes -> a) | How to interpret the bytes in terms of the given data type |
-> (Bytes -> Object) | How to wrap the bytes in an object |
-> (a -> a -> res) | A binary function on the data |
-> Object | |
-> EvaluationState | |
-> DataizeChain (Object, EvaluationState) |
Given converters between Bytes and some data type, a binary function on this data type, an object, and the current state of evaluation, returns the new object and a possibly modified state along with intermediate steps.
evaluateBinaryDataizationFunChain Source #
:: (res -> Bytes) | How to convert the result back to bytes |
-> (Bytes -> a) | How to interpret the bytes in terms of the given data type |
-> (Bytes -> Object) | How to wrap the bytes in an object |
-> (Object -> Object) | Extract the 1st argument to be dataized |
-> (Object -> Object) | Extract the 2nd argument to be dataized |
-> (a -> a -> res) | A binary function on the argument |
-> String | Name of the atom. |
-> Object | |
-> EvaluationState | |
-> DataizeChain (Object, EvaluationState) |
evaluateUnaryDataizationFunChain Source #
:: (res -> Bytes) | How to convert the result back to bytes |
-> (Bytes -> a) | How to interpret the bytes in terms of the given data type |
-> (Bytes -> Object) | How to wrap the bytes in an object |
-> (Object -> Object) | Extract the argument to be dataized |
-> (a -> res) | A unary function on the argument |
-> String | |
-> Object | |
-> EvaluationState | |
-> DataizeChain (Object, EvaluationState) |
Unary functions operate on the given object without any additional parameters
evaluateIntIntIntFunChain :: (Int -> Int -> Int) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
evaluateIntIntBoolFunChain :: (Int -> Int -> Bool) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
evaluateBytesBytesBytesFunChain :: (Int -> Int -> Int) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
evaluateBytesBytesFunChain :: (Int -> Int) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
evaluateFloatFloatFloatFunChain :: (Double -> Double -> Double) -> String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
evaluateBuiltinFunChain :: String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
Like evaluateDataizationFunChain
but specifically for the built-in functions.
This function is not safe. It returns undefined for unknown functions
evaluateBuiltinFunChainUnknown :: String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
evaluateBuiltinFun :: Context -> String -> Object -> EvaluationState -> (Object, EvaluationState) Source #
Like evaluateDataizationFun
but specifically for the built-in functions.
This function is not safe. It returns undefined for unknown functions
evaluateIODataizationFunChain :: IO String -> Object -> EvaluationState -> DataizeChain (Object, EvaluationState) Source #
extractRho :: Object -> Object Source #
extractAlpha0 :: Object -> Object Source #
wrapBytesInInt :: Bytes -> Object Source #
wrapBytesInFloat :: Bytes -> Object Source #
wrapBytesInString :: Bytes -> Object Source #
wrapBytesInBytes :: Bytes -> Object Source #
wrapBytesAsBool :: Bytes -> Object Source #