-- $Id: HsPatStruct.hs,v 1.20 2001/10/18 22:15:47 hallgren Exp $
module HsPatStruct where
import HsIdent
import HsLiteral
data PI i p
= HsPId (HsIdentI i)
| HsPLit HsLiteral
| HsPNeg p
| HsPInfixApp p (HsIdentI i) p
| HsPApp i [p]
| HsPTuple [p]
| HsPList [p]
| HsPParen p
| HsPRec i [HsPatFieldI i p]
{-
| HsPRecUpdate i [HsPatFieldI i p] -- This doesn't correspond to
-- anything I could find in the
-- report ...
-}
| HsPAsPat i p
| HsPWildCard
| HsPIrrPat p
deriving (Eq, Show)
data HsPatFieldI i p
= HsPFieldPun i -- obsolete
| HsPFieldPat i p
deriving (Eq, Show)