{-# OPTIONS_GHC -fno-warn-orphans #-} module Darcs.Patch.Prim.V1.Details () where import Prelude () import Darcs.Prelude import Darcs.Patch.Prim.Class ( PrimDetails(..) ) import Darcs.Patch.Prim.V1.Core ( Prim(..), FilePatchType(..), DirPatchType(..) ) import Darcs.Patch.SummaryData ( SummDetail(..), SummOp(..) ) instance PrimDetails Prim where summarizePrim :: Prim wX wY -> [SummDetail] summarizePrim (FP f :: FileName f (Hunk _ o :: [ByteString] o n :: [ByteString] n)) = [SummOp -> FileName -> Int -> Int -> Int -> SummDetail SummFile SummOp SummMod FileName f ([ByteString] -> Int forall (t :: * -> *) a. Foldable t => t a -> Int length [ByteString] o) ([ByteString] -> Int forall (t :: * -> *) a. Foldable t => t a -> Int length [ByteString] n) 0] summarizePrim (FP f :: FileName f (Binary _ _)) = [SummOp -> FileName -> Int -> Int -> Int -> SummDetail SummFile SummOp SummMod FileName f 0 0 0] summarizePrim (FP f :: FileName f AddFile) = [SummOp -> FileName -> Int -> Int -> Int -> SummDetail SummFile SummOp SummAdd FileName f 0 0 0] summarizePrim (FP f :: FileName f RmFile) = [SummOp -> FileName -> Int -> Int -> Int -> SummDetail SummFile SummOp SummRm FileName f 0 0 0] summarizePrim (FP f :: FileName f (TokReplace{})) = [SummOp -> FileName -> Int -> Int -> Int -> SummDetail SummFile SummOp SummMod FileName f 0 0 1] summarizePrim (DP d :: FileName d AddDir) = [FileName -> SummDetail SummAddDir FileName d] summarizePrim (DP d :: FileName d RmDir) = [FileName -> SummDetail SummRmDir FileName d] summarizePrim (Move f1 :: FileName f1 f2 :: FileName f2) = [FileName -> FileName -> SummDetail SummMv FileName f1 FileName f2] summarizePrim (ChangePref{}) = [SummDetail SummNone]