diff options
Diffstat (limited to 'gtfs/Servant')
-rw-r--r-- | gtfs/Servant/GTFS/Realtime.hs | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/gtfs/Servant/GTFS/Realtime.hs b/gtfs/Servant/GTFS/Realtime.hs deleted file mode 100644 index 8923b92..0000000 --- a/gtfs/Servant/GTFS/Realtime.hs +++ /dev/null @@ -1,38 +0,0 @@ -{-# LANGUAGE FlexibleInstances #-} -{-# LANGUAGE MultiParamTypeClasses #-} -{-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE TypeApplications #-} -{-# LANGUAGE ScopedTypeVariables #-} -{-# LANGUAGE UndecidableInstances #-} - - -module Servant.GTFS.Realtime (Proto) where - -import Servant - ( MimeRender(..), - MimeUnrender(mimeUnrender), - Accept(contentType), - Proxy(Proxy) ) -import Text.ProtocolBuffers - ( Wire, ReflectDescriptor, messagePut, messageGet ) -import Network.HTTP.Media ((//)) -import Data.Either.Combinators (mapRight) -import Data.Swagger (ToSchema(..)) - - --- | A servant encoding for protobuf-encoded messages -data Proto - -instance Accept Proto where - contentType _ = "application" // "octet-stream" - -instance (Wire msg, ReflectDescriptor msg) => MimeUnrender Proto msg where - mimeUnrender _ = mapRight fst . messageGet @msg - -instance (Wire msg, ReflectDescriptor msg) => MimeRender Proto msg where - mimeRender _ = messagePut - --- TODO: this instance is horrible; ideally it should at least include --- the name of the message type (if at all possible) -instance {-# OVERLAPPABLE #-} Wire msg => ToSchema msg where - declareNamedSchema _ = declareNamedSchema (Proxy @String) |