{-# OPTIONS_GHC -fno-warn-orphans #-} module Composite.Aeson.Path where import Composite.Aeson(JsonFormat, aesonJsonFormat, DefaultJsonFormat(defaultJsonFormat)) import Path(Path, Rel, Abs, File, Dir) relFileJsonFormat :: JsonFormat e (Path Rel File) relFileJsonFormat :: forall e. JsonFormat e (Path Rel File) relFileJsonFormat = forall a e. (ToJSON a, FromJSON a) => JsonFormat e a aesonJsonFormat relDirJsonFormat :: JsonFormat e (Path Rel Dir) relDirJsonFormat :: forall e. JsonFormat e (Path Rel Dir) relDirJsonFormat = forall a e. (ToJSON a, FromJSON a) => JsonFormat e a aesonJsonFormat absFileJsonFormat :: JsonFormat e (Path Abs File) absFileJsonFormat :: forall e. JsonFormat e (Path Abs File) absFileJsonFormat = forall a e. (ToJSON a, FromJSON a) => JsonFormat e a aesonJsonFormat absDirJsonFormat :: JsonFormat e (Path Abs Dir) absDirJsonFormat :: forall e. JsonFormat e (Path Abs Dir) absDirJsonFormat = forall a e. (ToJSON a, FromJSON a) => JsonFormat e a aesonJsonFormat instance DefaultJsonFormat (Path Rel File) where defaultJsonFormat :: forall e. JsonFormat e (Path Rel File) defaultJsonFormat = forall e. JsonFormat e (Path Rel File) relFileJsonFormat instance DefaultJsonFormat (Path Rel Dir) where defaultJsonFormat :: forall e. JsonFormat e (Path Rel Dir) defaultJsonFormat = forall e. JsonFormat e (Path Rel Dir) relDirJsonFormat instance DefaultJsonFormat (Path Abs File) where defaultJsonFormat :: forall e. JsonFormat e (Path Abs File) defaultJsonFormat = forall e. JsonFormat e (Path Abs File) absFileJsonFormat instance DefaultJsonFormat (Path Abs Dir) where defaultJsonFormat :: forall e. JsonFormat e (Path Abs Dir) defaultJsonFormat = forall e. JsonFormat e (Path Abs Dir) absDirJsonFormat