Safe Haskell | None |
---|
- type family Pos err :: *
- class InitialPosition e where
- initialPos :: Maybe e -> Pos e
- class ErrorPosition err where
- getPosition :: err -> Maybe (Pos err)
- data MajorMinorPos = MajorMinorPos {}
- incMajor :: Integral i => i -> MajorMinorPos -> MajorMinorPos
- incMinor :: Integral i => i -> MajorMinorPos -> MajorMinorPos
Documentation
class InitialPosition e whereSource
the initial position for a position type
initialPos :: Maybe e -> Pos eSource
class ErrorPosition err whereSource
extract the position information from an error
getPosition :: err -> Maybe (Pos err)Source
data MajorMinorPos Source
A basic 2-axis position type (e.g. line, character)
Eq MajorMinorPos | |
Data MajorMinorPos | |
Ord MajorMinorPos | |
Show MajorMinorPos | |
Typeable MajorMinorPos | |
InitialPosition StringError | |
InitialPosition StringsError | |
InitialPosition TextsError | |
~ * a b => IsString (Boomerang StringError String a b) | |
~ * a b => IsString (Boomerang StringsError [String] a b) | |
~ * a b => IsString (Boomerang TextsError [Text] a b) |
incMajor :: Integral i => i -> MajorMinorPos -> MajorMinorPosSource
increment major position by i
, reset minor position to 0..
if you wanted something else.. too bad.
incMinor :: Integral i => i -> MajorMinorPos -> MajorMinorPosSource
increment minor position by i