hsinspect-0.1.0: Inspect Haskell source files.
Safe HaskellSafe-Inferred
LanguageHaskell2010

HsInspect.Types

Documentation

data Type Source #

Constructors

ProductType Text [Text] Bool Text [(Text, [Text])]

^ type tparams newtype cons [(param types, [typarams])]

RecordType Text [Text] Bool Text [(Text, Text, [Text])]

^ type tparams newtype cons [(fieldname, param type, [typarams])]

SumType Text [Text] [(Text, [(Text, [Text])])]

^ type tparams [(cons, [param types, [typarams]])] (no records)

Instances

Instances details
Show Type Source # 
Instance details

Defined in HsInspect.Types

Methods

showsPrec :: Int -> Type -> ShowS #

show :: Type -> String #

showList :: [Type] -> ShowS #

Eq Type Source # 
Instance details

Defined in HsInspect.Types

Methods

(==) :: Type -> Type -> Bool #

(/=) :: Type -> Type -> Bool #

ToSexp Type Source # 
Instance details

Defined in HsInspect.Types

Methods

toSexp :: Type -> Sexp Source #

data Pos Source #

Constructors

Pos Int Int 

Instances

Instances details
Show Pos Source # 
Instance details

Defined in HsInspect.Types

Methods

showsPrec :: Int -> Pos -> ShowS #

show :: Pos -> String #

showList :: [Pos] -> ShowS #

Eq Pos Source # 
Instance details

Defined in HsInspect.Types

Methods

(==) :: Pos -> Pos -> Bool #

(/=) :: Pos -> Pos -> Bool #

Ord Pos Source # 
Instance details

Defined in HsInspect.Types

Methods

compare :: Pos -> Pos -> Ordering #

(<) :: Pos -> Pos -> Bool #

(<=) :: Pos -> Pos -> Bool #

(>) :: Pos -> Pos -> Bool #

(>=) :: Pos -> Pos -> Bool #

max :: Pos -> Pos -> Pos #

min :: Pos -> Pos -> Pos #

ToSexp Pos Source # 
Instance details

Defined in HsInspect.Types

Methods

toSexp :: Pos -> Sexp Source #

data Comment Source #

Constructors

Comment Text Pos Pos 

Instances

Instances details
Show Comment Source # 
Instance details

Defined in HsInspect.Types

Eq Comment Source # 
Instance details

Defined in HsInspect.Types

Methods

(==) :: Comment -> Comment -> Bool #

(/=) :: Comment -> Comment -> Bool #

ToSexp Comment Source # 
Instance details

Defined in HsInspect.Types

Methods

toSexp :: Comment -> Sexp Source #

types :: GhcMonad m => FilePath -> m ([Type], [Comment]) Source #