| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Dynamic
Contents
Description
Support dynamic typing.
Synopsis
- data Dynamic
- (!) :: Dynamic -> Dynamic -> Dynamic
- set :: Dynamic -> Dynamic -> Dynamic -> Dynamic
- modify :: Dynamic -> (Dynamic -> Dynamic) -> Dynamic -> Dynamic
- del :: Dynamic -> Dynamic -> Dynamic
- fromJson :: Text -> Dynamic
- fromCsv :: Text -> [[Dynamic]]
- fromCsvNamed :: Text -> [Dynamic]
- fromJsonFile :: FilePath -> IO Dynamic
- fromCsvFile :: FilePath -> IO [[Dynamic]]
- fromCsvFileNamed :: FilePath -> IO [Dynamic]
- fromList :: [Dynamic] -> Dynamic
- fromDict :: [(Dynamic, Dynamic)] -> Dynamic
- toJson :: Dynamic -> Text
- toCsv :: [Dynamic] -> Text
- toCsvNamed :: [Dynamic] -> Text
- toJsonFile :: FilePath -> Dynamic -> IO ()
- toCsvFile :: FilePath -> [Dynamic] -> IO ()
- toDouble :: Dynamic -> Double
- toInt :: Dynamic -> Int
- toBool :: Dynamic -> Bool
- toList :: Dynamic -> [Dynamic]
- toKeys :: Dynamic -> [Dynamic]
- toElems :: Dynamic -> [Dynamic]
- get :: Dynamic -> [(Dynamic, Dynamic)] -> IO Text
- post :: Dynamic -> [(Dynamic, Dynamic)] -> Dynamic -> IO Text
- getJson :: Dynamic -> [(Dynamic, Dynamic)] -> IO Dynamic
- postJson :: Dynamic -> [(Dynamic, Dynamic)] -> Dynamic -> IO Dynamic
Documentation
The dynamic type.
Constructors
| Dictionary !(HashMap Text Dynamic) | |
| Array !(Vector Dynamic) | |
| String !Text | |
| Double !Double | |
| Bool !Bool | |
| Null |
Instances
| Enum Dynamic Source # | Treats the dynamic as a double. |
| Eq Dynamic Source # | |
| Fractional Dynamic Source # | |
| Integral Dynamic Source # | Implemented via |
Defined in Dynamic | |
| Data Dynamic Source # | |
Defined in Dynamic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Dynamic -> c Dynamic # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Dynamic # toConstr :: Dynamic -> Constr # dataTypeOf :: Dynamic -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Dynamic) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Dynamic) # gmapT :: (forall b. Data b => b -> b) -> Dynamic -> Dynamic # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Dynamic -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Dynamic -> r # gmapQ :: (forall d. Data d => d -> u) -> Dynamic -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Dynamic -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Dynamic -> m Dynamic # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Dynamic -> m Dynamic # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Dynamic -> m Dynamic # | |
| Num Dynamic Source # | Converts everything to a double. |
| Ord Dynamic Source # | |
| Real Dynamic Source # | Implemented via |
Defined in Dynamic Methods toRational :: Dynamic -> Rational # | |
| Show Dynamic Source # | Dumps it to JSON. |
| IsString Dynamic Source # | Makes a |
Defined in Dynamic Methods fromString :: String -> Dynamic # | |
| Generic Dynamic Source # | |
| Semigroup Dynamic Source # | Nulls are identity, arraysdicts join, string + doublebool
append everything else is |
| ToJSON Dynamic Source # | Pretty much a 1:1 correspondance. |
| FromJSON Dynamic Source # | Does what you'd expect. |
| FromRecord Dynamic Source # | Produces an array representing a row of columns. |
| ToRecord Dynamic Source # | Renders the elements of containers, or else a singleton. |
| FromNamedRecord Dynamic Source # | Produces a dictionary representing a row of columns. |
Defined in Dynamic Methods | |
| ToNamedRecord Dynamic Source # | Just works on dictionaries. |
Defined in Dynamic Methods toNamedRecord :: Dynamic -> NamedRecord # | |
| FromField Dynamic Source # | Tries to figure out decimals, coerce true/false into |
| ToField Dynamic Source # | Identity for strings, else JSON output. |
| type Rep Dynamic Source # | |
Defined in Dynamic type Rep Dynamic = D1 (MetaData "Dynamic" "Dynamic" "dynamic-0.1.0-64h5zDUyYMS8c8ykAkYPLE" False) ((C1 (MetaCons "Dictionary" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (HashMap Text Dynamic))) :+: (C1 (MetaCons "Array" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Vector Dynamic))) :+: C1 (MetaCons "String" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)))) :+: (C1 (MetaCons "Double" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Double)) :+: (C1 (MetaCons "Bool" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)) :+: C1 (MetaCons "Null" PrefixI False) (U1 :: Type -> Type)))) | |
Accessors
set :: Dynamic -> Dynamic -> Dynamic -> Dynamic Source #
set key value object -- set the field's value.
modify :: Dynamic -> (Dynamic -> Dynamic) -> Dynamic -> Dynamic Source #
modify k f obj -- modify the value at key.
Input
fromCsv :: Text -> [[Dynamic]] Source #
Read CSV into a list of rows with columns (don't use column names).
fromCsvNamed :: Text -> [Dynamic] Source #
Read CSV into a list of rows (use column names).
fromCsvFileNamed :: FilePath -> IO [Dynamic] Source #
Same as fromCsvFileNamed but from a file.
fromDict :: [(Dynamic, Dynamic)] -> Dynamic Source #
Convert a list of key/pairs to a dynamic dictionary.
Ouput
toCsvNamed :: [Dynamic] -> Text Source #
Produces a JSON representation of the string.
Web requests
HTTP GET request for text content.
HTTP POST request for text content.
HTTP GET request for text content.