--  Copyright (C) 2013 Ganesh Sittampalam
--
--  BSD3

module Darcs.Patch.Matchable ( Matchable ) where

import Darcs.Patch.Inspect ( PatchInspect )
import Darcs.Patch.Apply ( Apply(..) )
import Darcs.Patch.Commute ( Commute(..) )
import Darcs.Patch.Invert ( Invert(..) )

class (Apply p, Commute p, Invert p, PatchInspect p)
    => Matchable p