From: Michael Orlitzky Date: Fri, 2 Jan 2015 21:22:52 +0000 (-0500) Subject: Migrate TSN.XML.JFile to fixed-vector-hetero. X-Git-Tag: 0.2.1~20 X-Git-Url: https://gitweb.michael.orlitzky.com/?a=commitdiff_plain;h=f64dd9351c77beb0333bef5c38058194439a0254;p=dead%2Fhtsn-import.git Migrate TSN.XML.JFile to fixed-vector-hetero. --- diff --git a/src/TSN/XML/JFile.hs b/src/TSN/XML/JFile.hs index b3b3280..d434220 100644 --- a/src/TSN/XML/JFile.hs +++ b/src/TSN/XML/JFile.hs @@ -28,6 +28,7 @@ import Data.List ( intercalate ) import Data.String.Utils ( split ) import Data.Time ( UTCTime(..) ) import Data.Tuple.Curry ( uncurryN ) +import qualified Data.Vector.HFixed as H ( HVector, convert ) import Database.Groundhog ( countAll, deleteAll, @@ -62,7 +63,6 @@ import Text.XML.HXT.Core ( -- Local imports -import Generics ( Generic(..), to_tuple ) import TSN.Codegen ( tsn_codegen_config ) import TSN.Database ( insert_or_select ) import TSN.DbImport ( DbImport(..), ImportResult(..), run_dbmigrate ) @@ -127,9 +127,9 @@ data Message = deriving (Eq, GHC.Generic, Show) --- | For 'Generics.to_tuple'. +-- | For 'H.convert'. -- -instance Generic Message +instance H.HVector Message instance ToDb Message where @@ -257,9 +257,9 @@ data JFileGameXml = deriving (Eq, GHC.Generic, Show) --- | For 'Generics.to_tuple'. +-- | For 'H.convert'. -- -instance Generic JFileGameXml +instance H.HVector JFileGameXml -- * JFileGameListXml @@ -435,7 +435,7 @@ mkPersist tsn_codegen_config [groundhog| pickle_message :: PU Message pickle_message = xpElem "message" $ - xpWrap (from_tuple, to_tuple) $ + xpWrap (from_tuple, H.convert) $ xp6Tuple (xpElem "XML_File_ID" xpInt) (xpElem "heading" xpText) (xpElem "category" xpText) @@ -460,7 +460,7 @@ pickle_gamelist = pickle_game :: PU JFileGameXml pickle_game = xpElem "game" $ - xpWrap (from_tuple, to_tuple) $ + xpWrap (from_tuple, H.convert) $ xp14Tuple (xpElem "game_id" xpInt) (xpElem "schedule_id" xpInt) pickle_odds_info @@ -553,7 +553,7 @@ pickle_home_team = (xpOption xpText) -- Yup, some are nameless where from_tuple = HTeam . (uncurryN Team) - to_tuple' (HTeam t) = to_tuple t + to_tuple' (HTeam t) = H.convert t -- | (Un)pickle an away team to/from the dual XML/DB representation @@ -568,7 +568,7 @@ pickle_away_team = (xpOption xpText) -- Yup, some are nameless where from_tuple = VTeam . (uncurryN Team) - to_tuple' (VTeam t) = to_tuple t + to_tuple' (VTeam t) = H.convert t pickle_status :: PU JFileGameStatus