1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| instance JSON Status where
readJSON tweet = let (!) = flip valFromObj in do
userObject <- tweet ! "user"
user <- userObject ! "screen_name"
text <- tweet ! "text"
return Status {user = user, text = text}
showJSON = undefined
let statuses = decode json :: Result [Status]
import Text.JSON
import Text.JSON.Generic
data User = User {
screen_name :: String
} deriving (Eq, Show, Data, Typeable)
data Status = Status {
user :: User,
text :: String
} deriving (Eq, Show, Data, Typeable)
let statuses = decodeJSON json :: [Status] |