{-# OPTIONS_GHC -Wno-orphans #-}
module Language.Haskell.Exts.Observe where
import Data.Ratio
import Debug.Hoed.Pure hiding (Module)
import Language.Haskell.Exts
instance Observable Boxed
instance Observable a => Observable (Alt a)
instance Observable a => Observable (Rhs a)
instance Observable a => Observable (Asst a)
instance Observable a => Observable (Context a)
instance Observable a => Observable (ClassDecl a)
instance Observable a => Observable (Assoc a)
instance Observable a => Observable (Decl a)
instance Observable a => Observable (Role a)
instance Observable a => Observable (BooleanFormula a)
instance Observable a => Observable (Annotation a)
instance Observable a => Observable (Rule a)
instance Observable a => Observable (RuleVar a)
instance Observable a => Observable (Activation a)
instance Observable a => Observable (Safety a)
instance Observable a => Observable (CallConv a)
instance Observable a => Observable (PatternSynDirection a)
instance Observable a => Observable (Match a)
instance Observable a => Observable (Op a)
instance Observable a => Observable (InstDecl a)
instance Observable a => Observable (InstHead a)
instance Observable a => Observable (InstRule a)
instance Observable a => Observable (Overlap a)
instance Observable a => Observable (FunDep a)
instance Observable a => Observable (FieldDecl a)
instance Observable a => Observable (GadtDecl a)
instance Observable a => Observable (Deriving a)
instance Observable a => Observable (ConDecl a)
instance Observable a => Observable (QualConDecl a)
instance Observable a => Observable (DataOrNew a)
instance Observable a => Observable (TypeEqn a)
instance Observable a => Observable (InjectivityInfo a)
instance Observable a => Observable (ResultSig a)
instance Observable a => Observable (DeclHead a)
instance Observable a => Observable (Binds a)
instance Observable a => Observable (Exp a)
instance Observable a => Observable (XAttr a)
instance Observable a => Observable (Bracket a)
instance Observable a => Observable (QualStmt a)
instance Observable a => Observable (FieldUpdate a)
instance Observable a => Observable (GuardedRhs a)
instance Observable a => Observable (IPBind a)
instance Observable a => Observable (IPName a)
instance Observable a => Observable (Kind a)
instance Observable a => Observable (Stmt a)
instance Observable a => Observable (Literal a)
instance Observable a => Observable (ModuleName a)
instance Observable a => Observable (Name a)
instance Observable a => Observable (XName a)
instance Observable a => Observable (PXAttr a)
instance Observable a => Observable (Pat a)
instance Observable a => Observable (RPat a)
instance Observable a => Observable (RPatOp a)
instance Observable a => Observable (PatField a)
instance Observable a => Observable (Promoted a)
instance Observable a => Observable (QName a)
instance Observable a => Observable (QOp a)
instance Observable a => Observable (Sign a)
instance Observable a => Observable (SpecialCon a)
instance Observable a => Observable (Splice a)
instance Observable a => Observable (TyVarBind a)
instance Observable a => Observable (Type a)
instance Observable a => Observable (Unpackedness a)
instance Observable a => Observable (BangType a)
instance Observable a => Observable (Module a)
instance Observable a => Observable (ModuleHead a)
instance Observable a => Observable (WarningText a)
instance Observable a => Observable (ModulePragma a)
instance Observable a => Observable (ImportDecl a)
instance Observable a => Observable (ImportSpec a)
instance Observable a => Observable (Namespace a)
instance Observable a => Observable (ImportSpecList a)
instance Observable a => Observable (ExportSpecList a)
instance Observable a => Observable (EWildcard a)
instance Observable a => Observable (CName a)
instance Observable a => Observable (ExportSpec a)
instance Observable Tool
-- These instances belong in Hoed
instance (Eq a, Show a) => Observable (Ratio a) where
observer = observeBase
constrain = constrainBase