Я пишу приложение, использующее Github Webhooks API. В сообщении ловушки я получил эту структуру JSON: http://organicorange.ro:8000/set
Я делаю объявление типа следующим образом:
newtype CommitList = CommitList {commitList :: [Commit]}
instance FromJSON CommitList where
parseJSON (Object o) = CommitList <$> o .: "commits"
parseJSON _ = mzero
data Commit = Commit {ids :: String, message :: String, url :: String, modified :: [String], author :: Auth} deriving (Show)
instance FromJSON Commit where
parseJSON (Object o) = Commit <$> o .: "id" <*> o .: "message" <*> o .: "url" <*> o .: "modified" <*> o .: "author"
parseJSON _ = mzero
data Auth = Auth {name :: String, email :: String, username :: String} deriving (Show)
instance FromJSON Auth where
parseJSON (Object o) = Auth <$> o .: "name" <*> o .: "email" <*> o .: "username"
parseJSON _ = mzero
Как я могу проанализировать «модифицированный» массив, чтобы вернуть список?
Auth
в тест GHCi, но экземплярFromJSON a => FromJSON [a]
уже есть. - person bheklilr   schedule 29.08.2014[["src/FullBG/index.html","src/Main.hs","src/app.json"]]
, мне нужен список с такими компонентами, как["src/FullBG/index.html","src/Main.hs","src/app.json"]
. - person Deck Pope   schedule 29.08.2014