pire-0.2.5

Copyright(c) Andreas Reuleaux 2015-2018
LicenseBSD2
MaintainerAndreas Reuleaux <rx@a-rx.info>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

OldSyntax

Contents

Description

Pire's old syntax

Synopsis

Documentation

data Ws t Source #

Constructors

Ws t 
NoWs 
Instances
Functor Ws Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Ws a -> Ws b #

(<$) :: a -> Ws b -> Ws a #

Foldable Ws Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Ws m -> m #

foldMap :: Monoid m => (a -> m) -> Ws a -> m #

foldr :: (a -> b -> b) -> b -> Ws a -> b #

foldr' :: (a -> b -> b) -> b -> Ws a -> b #

foldl :: (b -> a -> b) -> b -> Ws a -> b #

foldl' :: (b -> a -> b) -> b -> Ws a -> b #

foldr1 :: (a -> a -> a) -> Ws a -> a #

foldl1 :: (a -> a -> a) -> Ws a -> a #

toList :: Ws a -> [a] #

null :: Ws a -> Bool #

length :: Ws a -> Int #

elem :: Eq a => a -> Ws a -> Bool #

maximum :: Ord a => Ws a -> a #

minimum :: Ord a => Ws a -> a #

sum :: Num a => Ws a -> a #

product :: Num a => Ws a -> a #

Traversable Ws Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Ws a -> f (Ws b) #

sequenceA :: Applicative f => Ws (f a) -> f (Ws a) #

mapM :: Monad m => (a -> m b) -> Ws a -> m (Ws b) #

sequence :: Monad m => Ws (m a) -> m (Ws a) #

Eq1 Ws Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Ws a -> Ws b -> Bool #

Eq t => Eq (Ws t) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Ws t -> Ws t -> Bool #

(/=) :: Ws t -> Ws t -> Bool #

Ord t => Ord (Ws t) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Ws t -> Ws t -> Ordering #

(<) :: Ws t -> Ws t -> Bool #

(<=) :: Ws t -> Ws t -> Bool #

(>) :: Ws t -> Ws t -> Bool #

(>=) :: Ws t -> Ws t -> Bool #

max :: Ws t -> Ws t -> Ws t #

min :: Ws t -> Ws t -> Ws t #

Read t => Read (Ws t) Source # 
Instance details

Defined in OldSyntax

Show t => Show (Ws t) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Ws t -> ShowS #

show :: Ws t -> String #

showList :: [Ws t] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Ws t) Source #

Ws

>>> range $ Ws ("   ",Lines 6 6 0 0)
Range (Pos 6 6) (Pos 6 8)
>>> drange $ Ws ("   ",Lines 6 6 0 0)
DetailedRange [Pos 6 6,Pos 6 7,Pos 6 8]
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Ws t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Ws t) Source # 
Instance details

Defined in OldRange

Methods

drange :: Ws t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Ws t) Source # 
Instance details

Defined in OldRange

Methods

range :: Ws t -> Range Source #

data Token ty t where Source #

Constructors

LamTok :: t -> Ws t -> Token LamTokTy t 
Dot :: t -> Ws t -> Token DotTy t 
LetTok :: t -> Ws t -> Token LetTokTy t 
BracketOpen :: t -> Ws t -> Token BracketOpenTy t 
BracketClose :: t -> Ws t -> Token BracketCloseTy t 
ParenOpen :: t -> Ws t -> Token ParenOpenTy t 
ParenClose :: t -> Ws t -> Token ParenCloseTy t 
BraceOpen :: t -> Ws t -> Token BraceOpenTy t 
BraceClose :: t -> Ws t -> Token BraceCloseTy t 
VBar :: t -> Ws t -> Token VBarTy t 
IfTok :: t -> Ws t -> Token IfTokTy t 
ThenTok :: t -> Ws t -> Token ThenTokTy t 
ElseTok :: t -> Ws t -> Token ElseTokTy t 
Equal :: t -> Ws t -> Token EqualTy t 
In :: t -> Ws t -> Token InTy t 
Arrow :: t -> Ws t -> Token ArrowTy t 
Colon :: t -> Ws t -> Token ColonTy t 
SemiColon :: t -> Ws t -> Token SemiColonTy t 
Comma :: t -> Ws t -> Token CommaTy t 
Of :: t -> Ws t -> Token OfTy t 
CaseTok :: t -> Ws t -> Token CaseTokTy t 
PcaseTok :: t -> Ws t -> Token PcaseTokTy t 
SubstTok :: t -> Ws t -> Token SubstTokTy t 
ContraTok :: t -> Ws t -> Token ContraTokTy t 
By :: t -> Ws t -> Token ByTy t 
Where :: t -> Ws t -> Token WhereTy t 
ModuleTok :: t -> Ws t -> Token ModuleTokTy t 
ImportTok :: t -> Ws t -> Token ImportTokTy t 
DataTok :: t -> Ws t -> Token DataTokTy t 
Instances
Functor (Token ty) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Token ty a -> Token ty b #

(<$) :: a -> Token ty b -> Token ty a #

Foldable (Token ty) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Token ty m -> m #

foldMap :: Monoid m => (a -> m) -> Token ty a -> m #

foldr :: (a -> b -> b) -> b -> Token ty a -> b #

foldr' :: (a -> b -> b) -> b -> Token ty a -> b #

foldl :: (b -> a -> b) -> b -> Token ty a -> b #

foldl' :: (b -> a -> b) -> b -> Token ty a -> b #

foldr1 :: (a -> a -> a) -> Token ty a -> a #

foldl1 :: (a -> a -> a) -> Token ty a -> a #

toList :: Token ty a -> [a] #

null :: Token ty a -> Bool #

length :: Token ty a -> Int #

elem :: Eq a => a -> Token ty a -> Bool #

maximum :: Ord a => Token ty a -> a #

minimum :: Ord a => Token ty a -> a #

sum :: Num a => Token ty a -> a #

product :: Num a => Token ty a -> a #

Traversable (Token ty) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Token ty a -> f (Token ty b) #

sequenceA :: Applicative f => Token ty (f a) -> f (Token ty a) #

mapM :: Monad m => (a -> m b) -> Token ty a -> m (Token ty b) #

sequence :: Monad m => Token ty (m a) -> m (Token ty a) #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Maybe (Token SemiColonTy t), Match t t)] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Maybe (Token SemiColonTy t), Match t t)] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(ConstructorDef t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Match t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Match t t, Maybe (Token SemiColonTy t))] -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Maybe (Token SemiColonTy t), Match t t)] Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange [(ConstructorDef t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Match t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange [(Maybe (Token SemiColonTy t), Match t t)] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Maybe (Token SemiColonTy t), Match t t)] -> Range Source #

(Decorated t, HasRange t) => HasRange [(ConstructorDef t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange [(Match t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Match t t, Maybe (Token SemiColonTy t))] -> Range Source #

Eq t => Eq (Token ty t) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Token ty t -> Token ty t -> Bool #

(/=) :: Token ty t -> Token ty t -> Bool #

(Eq t, Ord t) => Ord (Token ty t) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Token ty t -> Token ty t -> Ordering #

(<) :: Token ty t -> Token ty t -> Bool #

(<=) :: Token ty t -> Token ty t -> Bool #

(>) :: Token ty t -> Token ty t -> Bool #

(>=) :: Token ty t -> Token ty t -> Bool #

max :: Token ty t -> Token ty t -> Token ty t #

min :: Token ty t -> Token ty t -> Token ty t #

Show t => Show (Token ty t) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Token ty t -> ShowS #

show :: Token ty t -> String #

showList :: [Token ty t] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Maybe (Token SemiColonTy t), Match t t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Maybe (Token SemiColonTy t), Match t t) -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (ConstructorDef t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Match t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Match t t, Maybe (Token SemiColonTy t)) -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Token ty t) Source #

ImportTok

>>> range $ ImportTok ("import",Lines 6 0 0 0) (Ws ("   ",Lines 6 6 0 0))
Range (Pos 6 0) (Pos 6 8)
>>> drange $ ImportTok ("import",Lines 6 0 0 0) (Ws ("   ",Lines 6 6 0 0))
DetailedRange [Pos 6 0,Pos 6 1,Pos 6 2,Pos 6 3,Pos 6 4,Pos 6 5,Pos 6 6,Pos 6 7,Pos 6 8]

Equal

>>> range $ Equal ("=",Lines 11 2 0 0) (Ws (" ",Lines 11 3 0 0))
Range (Pos 11 2) (Pos 11 3)
>>> drange $ Equal ("=",Lines 11 2 0 0) (Ws (" ",Lines 11 3 0 0))
DetailedRange [Pos 11 2,Pos 11 3]

LamTok

>>> range $ LamTok ("\\",Lines 9 4 0 0) (Ws ("  ",Lines 9 5 0 0))
Range (Pos 9 4) (Pos 9 6)
>>> drange $ LamTok ("\\",Lines 9 4 0 0) (Ws ("  ",Lines 9 5 0 0))
DetailedRange [Pos 9 4,Pos 9 5,Pos 9 6]

Dot

>>> range $ (Dot (".",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
Range (Pos 9 7) (Pos 9 8)
>>> drange $ (Dot (".",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
DetailedRange [Pos 9 7,Pos 9 8]

ParenOpen

>>> range $ (ParenOpen ("(",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
Range (Pos 9 7) (Pos 9 8)
>>> drange $ (ParenOpen ("(",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
DetailedRange [Pos 9 7,Pos 9 8]

ParenClose

>>> range $ (ParenClose (")",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
Range (Pos 9 7) (Pos 9 8)
>>> drange $ (ParenClose (")",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
DetailedRange [Pos 9 7,Pos 9 8]

BracketOpen

>>> range $ (BracketOpen ("[",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
Range (Pos 9 7) (Pos 9 8)
>>> drange $ (BracketOpen ("[",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
DetailedRange [Pos 9 7,Pos 9 8]

BracketClose

>>> range $ (BracketClose ("[",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
Range (Pos 9 7) (Pos 9 8)
>>> drange $ (BracketClose ("[",Lines 9 7 0 0) (Ws (" ",Lines 9 8 0 0)))
DetailedRange [Pos 9 7,Pos 9 8]

missing still: doctests/examples for VBar, Comma, Of, PcaseTok, CaseTok, SubsTok, By

Instance details

Defined in OldRange

Methods

inRange :: Pos -> Token ty t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Maybe (Token SemiColonTy t), Match t t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (ConstructorDef t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (Match t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (Token ty t) Source # 
Instance details

Defined in OldRange

Methods

drange :: Token ty t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Maybe (Token SemiColonTy t), Match t t) Source # 
Instance details

Defined in OldRange

Methods

range :: (Maybe (Token SemiColonTy t), Match t t) -> Range Source #

(Decorated t, HasRange t) => HasRange (ConstructorDef t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange (Match t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

Methods

range :: (Match t t, Maybe (Token SemiColonTy t)) -> Range Source #

(Decorated t, HasRange t) => HasRange (Token ty t) Source # 
Instance details

Defined in OldRange

Methods

range :: Token ty t -> Range Source #

NoPos (ConstructorDef t a, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldNoPos

Forget (Maybe (Token SemiColonTy t), Match t a) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Maybe (Token SemiColonTy t), Match t a) -> Match t a Source #

Forget (Token SemiColonTy t, Match t a) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Token SemiColonTy t, Match t a) -> Match t a Source #

Forget (ConstructorDef t a, Maybe (Token SemiColonTy t)) (ConstructorDef t a) Source # 
Instance details

Defined in OldForget

Forget (Match t a, Token SemiColonTy t) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Match t a, Token SemiColonTy t) -> Match t a Source #

Forget (Match t a, Maybe (Token SemiColonTy t)) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Match t a, Maybe (Token SemiColonTy t)) -> Match t a Source #

toLiteral :: Token ty t -> t Source #

toWs :: Token ty t -> Ws t Source #

cmp :: Ord t => Token ty t -> Token ty t -> Ordering Source #

ordering :: Ord t => Token ty t -> Token ty t -> Ordering Source #

data Eps Source #

Constructors

ErasedP 
RuntimeP 
Instances
Eq Eps Source # 
Instance details

Defined in OldSyntax

Methods

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

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

Ord Eps Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Eps -> Eps -> Ordering #

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

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

(>) :: Eps -> Eps -> Bool #

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

max :: Eps -> Eps -> Eps #

min :: Eps -> Eps -> Eps #

Read Eps Source # 
Instance details

Defined in OldSyntax

Show Eps Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Eps -> ShowS #

show :: Eps -> String #

showList :: [Eps] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Eps, Pattern t)] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Eps, Pattern t)] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Pattern t, Eps)] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Pattern t, Eps)] -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Eps, Pattern t)] Source # 
Instance details

Defined in OldRange

Methods

drange :: [(Eps, Pattern t)] -> DetailedRange Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Pattern t, Eps)] Source # 
Instance details

Defined in OldRange

Methods

drange :: [(Pattern t, Eps)] -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange [(Eps, Pattern t)] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Eps, Pattern t)] -> Range Source #

(Decorated t, HasRange t) => HasRange [(Pattern t, Eps)] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Pattern t, Eps)] -> Range Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Eps, Pattern t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Eps, Pattern t) -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Pattern t, Eps) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Pattern t, Eps) -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Eps, Pattern t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (Pattern t, Eps) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange (Eps, Pattern t) Source # 
Instance details

Defined in OldRange

Methods

range :: (Eps, Pattern t) -> Range Source #

(Decorated t, HasRange t) => HasRange (Pattern t, Eps) Source # 
Instance details

Defined in OldRange

Methods

range :: (Pattern t, Eps) -> Range Source #

Forget (Expr t a, Eps) (Expr t a, Eps) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Expr t a, Eps) -> (Expr t a, Eps) Source #

data Nm t Source #

Constructors

Nm t 
Nm_ t (Ws t) 
Instances
Functor Nm Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Nm a -> Nm b #

(<$) :: a -> Nm b -> Nm a #

Foldable Nm Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Nm m -> m #

foldMap :: Monoid m => (a -> m) -> Nm a -> m #

foldr :: (a -> b -> b) -> b -> Nm a -> b #

foldr' :: (a -> b -> b) -> b -> Nm a -> b #

foldl :: (b -> a -> b) -> b -> Nm a -> b #

foldl' :: (b -> a -> b) -> b -> Nm a -> b #

foldr1 :: (a -> a -> a) -> Nm a -> a #

foldl1 :: (a -> a -> a) -> Nm a -> a #

toList :: Nm a -> [a] #

null :: Nm a -> Bool #

length :: Nm a -> Int #

elem :: Eq a => a -> Nm a -> Bool #

maximum :: Ord a => Nm a -> a #

minimum :: Ord a => Nm a -> a #

sum :: Num a => Nm a -> a #

product :: Num a => Nm a -> a #

Traversable Nm Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Nm a -> f (Nm b) #

sequenceA :: Applicative f => Nm (f a) -> f (Nm a) #

mapM :: Monad m => (a -> m b) -> Nm a -> m (Nm b) #

sequence :: Monad m => Nm (m a) -> m (Nm a) #

Eq t => Eq (Nm t) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Nm t -> Nm t -> Bool #

(/=) :: Nm t -> Nm t -> Bool #

Ord t => Ord (Nm t) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Nm t -> Nm t -> Ordering #

(<) :: Nm t -> Nm t -> Bool #

(<=) :: Nm t -> Nm t -> Bool #

(>) :: Nm t -> Nm t -> Bool #

(>=) :: Nm t -> Nm t -> Bool #

max :: Nm t -> Nm t -> Nm t #

min :: Nm t -> Nm t -> Nm t #

Read t => Read (Nm t) Source # 
Instance details

Defined in OldSyntax

Show t => Show (Nm t) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Nm t -> ShowS #

show :: Nm t -> String #

showList :: [Nm t] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Nm t) Source #
>>> range $ Nm_ ("g",Lines 15 0 0 0) (Ws (" ",Lines 15 1 0 0))
Range (Pos 15 0) (Pos 15 1)
>>> drange $ Nm_ ("g",Lines 15 0 0 0) (Ws (" ",Lines 15 1 0 0))
DetailedRange [Pos 15 0,Pos 15 1]
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Nm t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Nm t) Source # 
Instance details

Defined in OldRange

Methods

drange :: Nm t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Nm t) Source # 
Instance details

Defined in OldRange

Methods

range :: Nm t -> Range Source #

getnm :: Nm p -> p Source #

data Pattern t Source #

Instances
Functor Pattern Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Pattern a -> Pattern b #

(<$) :: a -> Pattern b -> Pattern a #

Foldable Pattern Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Pattern m -> m #

foldMap :: Monoid m => (a -> m) -> Pattern a -> m #

foldr :: (a -> b -> b) -> b -> Pattern a -> b #

foldr' :: (a -> b -> b) -> b -> Pattern a -> b #

foldl :: (b -> a -> b) -> b -> Pattern a -> b #

foldl' :: (b -> a -> b) -> b -> Pattern a -> b #

foldr1 :: (a -> a -> a) -> Pattern a -> a #

foldl1 :: (a -> a -> a) -> Pattern a -> a #

toList :: Pattern a -> [a] #

null :: Pattern a -> Bool #

length :: Pattern a -> Int #

elem :: Eq a => a -> Pattern a -> Bool #

maximum :: Ord a => Pattern a -> a #

minimum :: Ord a => Pattern a -> a #

sum :: Num a => Pattern a -> a #

product :: Num a => Pattern a -> a #

Traversable Pattern Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Pattern a -> f (Pattern b) #

sequenceA :: Applicative f => Pattern (f a) -> f (Pattern a) #

mapM :: Monad m => (a -> m b) -> Pattern a -> m (Pattern b) #

sequence :: Monad m => Pattern (m a) -> m (Pattern a) #

Eq t => Eq (Pattern t) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Pattern t -> Pattern t -> Bool #

(/=) :: Pattern t -> Pattern t -> Bool #

Ord t => Ord (Pattern t) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Pattern t -> Pattern t -> Ordering #

(<) :: Pattern t -> Pattern t -> Bool #

(<=) :: Pattern t -> Pattern t -> Bool #

(>) :: Pattern t -> Pattern t -> Bool #

(>=) :: Pattern t -> Pattern t -> Bool #

max :: Pattern t -> Pattern t -> Pattern t #

min :: Pattern t -> Pattern t -> Pattern t #

Show t => Show (Pattern t) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Pattern t -> ShowS #

show :: Pattern t -> String #

showList :: [Pattern t] -> ShowS #

Pretty (Pattern String) # 
Instance details

Defined in OldPretty

Methods

pretty :: Pattern String -> Doc ann #

prettyList :: [Pattern String] -> Doc ann #

Pretty (Pattern Text) # 
Instance details

Defined in OldPretty

Methods

pretty :: Pattern Text -> Doc ann #

prettyList :: [Pattern Text] -> Doc ann #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Eps, Pattern t)] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Eps, Pattern t)] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Pattern t, Eps)] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Pattern t, Eps)] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Pattern t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Pattern t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Eps, Pattern t)] Source # 
Instance details

Defined in OldRange

Methods

drange :: [(Eps, Pattern t)] -> DetailedRange Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Pattern t, Eps)] Source # 
Instance details

Defined in OldRange

Methods

drange :: [(Pattern t, Eps)] -> DetailedRange Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Pattern t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange [(Eps, Pattern t)] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Eps, Pattern t)] -> Range Source #

(Decorated t, HasRange t) => HasRange [(Pattern t, Eps)] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Pattern t, Eps)] -> Range Source #

(Decorated t, HasRange t) => HasRange (Pattern t) Source # 
Instance details

Defined in OldRange

Methods

range :: Pattern t -> Range Source #

NoPos (Pattern t) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Pattern t -> Pattern t Source #

Eq t => UnWrap (Pattern t) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: Pattern t -> Pattern t Source #

Eq t => Wrap (Pattern t) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: Pattern t -> Pattern t Source #

PrettyAnn (Pattern String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Pattern Text) Source # 
Instance details

Defined in OldPretty

Forget (Pattern t) (Pattern t) Source # 
Instance details

Defined in OldForget

Methods

forget :: Pattern t -> Pattern t Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Eps, Pattern t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Eps, Pattern t) -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Pattern t, Eps) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Pattern t, Eps) -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Eps, Pattern t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (Pattern t, Eps) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange (Eps, Pattern t) Source # 
Instance details

Defined in OldRange

Methods

range :: (Eps, Pattern t) -> Range Source #

(Decorated t, HasRange t) => HasRange (Pattern t, Eps) Source # 
Instance details

Defined in OldRange

Methods

range :: (Pattern t, Eps) -> Range Source #

data Expr t a Source #

Constructors

V a 
Ws_ (Expr t a) (Ws t) 
BndV t (Expr t a) 
Brackets_ (Token BracketOpenTy t) (Expr t a) (Token BracketCloseTy t) 
Paren (Expr t a) 
Paren_ (Token ParenOpenTy t) (Expr t a) (Token ParenCloseTy t) 
Type 
Type_ t (Ws t) 
(Expr t a) :@ (Expr t a) infixl 9 
ErasedApp (Expr t a) (Expr t a) 
Lam t (Annot t a) (Scope () (Expr t) a) 
Lam_ (Token LamTokTy t) (Pattern t) (Token DotTy t) (Scope () (Expr t) a) 
Lam' t (Scope (Name String ()) (Expr t) a) 
Lams' [t] (Scope (Name String Int) (Expr t) a) 
ErasedLam t (Scope () (Expr t) a) 
ErasedLam_ (Token LamTokTy t) (Pattern t) (Token DotTy t) (Scope () (Expr t) a) 
Lams [t] (Scope Int (Expr t) a) 
Lams_ (Token LamTokTy t) [Pattern t] (Token DotTy t) (Scope Int (Expr t) a) 
LamPA (Eps, t, Annot t a) (Scope () (Expr t) a) 
LamPAs [(Eps, t, Annot t a)] (Scope Int (Expr t) a) 
LamPAs_ (Token LamTokTy t) [(Eps, Pattern t, Annot t a)] (Token DotTy t) (Scope Int (Expr t) a) 
Pi t (Expr t a) (Scope () (Expr t) a) 
Pi_ (Expr t a) (Token ArrowTy t) (Scope () (Expr t) a) 
PiP Eps (Pattern t) (Expr t a) (Scope () (Expr t) a) 
PiP_ Eps (Expr t a) (Token ArrowTy t) (Scope () (Expr t) a) 
Position Delta (Expr t a) 
TrustMe (Annot t a) 
TrustMe_ t (Ws t) (Annot t a) 
TyUnit 
TyUnit_ t (Ws t) 
LitUnit 
LitUnit_ t (Ws t) 
TyBool 
TyBool_ t (Ws t) 
LitBool Bool 
LitBool_ Bool t (Ws t) 
If (Expr t a) (Expr t a) (Expr t a) (Annot t a) 
If_ (Token IfTokTy t) (Expr t a) (Token ThenTokTy t) (Expr t a) (Token ElseTokTy t) (Expr t a) (Annot t a) 
Sigma t (Expr t a) (Scope () (Expr t) a)

sigma types `{ x : A | B }`

Sigma_ (Token BraceOpenTy t) (Pattern t) (Token ColonTy t) (Expr t a) (Token VBarTy t) (Scope () (Expr t) a) (Token BraceCloseTy t) 
Prod (Expr t a) (Expr t a) (Annot t a)

introduction for sigmas `( a , b )`

Prod_ (Token ParenOpenTy t) (Expr t a) (Token CommaTy t) (Expr t a) (Token ParenCloseTy t) (Annot t a) 
Pcase (Expr t a) (t, t) (Scope Int (Expr t) a) (Annot t a)

elimination form `pcase p of (x,y) -> p`

Pcase_ (Token PcaseTokTy t) (Expr t a) (Token OfTy t) (Token ParenOpenTy t) (Pattern t) (Token CommaTy t) (Pattern t) (Token ParenCloseTy t) (Token ArrowTy t) (Scope Int (Expr t) a) (Annot t a) 
Let t (Expr t a) (Scope () (Expr t) a) 
Let_ (Token LetTokTy t) (Pattern t) (Token EqualTy t) (Expr t a) (Token InTy t) (Scope () (Expr t) a) 
TyEq (Expr t a) (Expr t a)

Equality type `a = b`

TyEq_ (Expr t a) (Token EqualTy t) (Expr t a) 
Refl (Annot t a)

Proof of equality

Refl_ t (Ws t) (Annot t a) 
Subst (Expr t a) (Expr t a) (Annot t a)

equality elimination

Subst_ (Token SubstTokTy t) (Expr t a) (Token ByTy t) (Expr t a) (Annot t a) 
Contra (Expr t a) (Annot t a)

witness to an equality contradiction

Contra_ (Token ContraTokTy t) (Expr t a) (Annot t a) 
TCon a [Expr t a]

datatypes: type constructors (fully applied)

TCon_ (Expr t a) [Expr t a] 
DCon t [Arg t a] (Annot t a)

datatypes: term constructors

DCon_ (Nm t) [Arg t a] (Annot t a) 
Nat Integer 
Nat_ Integer t (Ws t) 
Case (Expr t a) [Match t a] (Annot t a)

case analysis (fully applied, erased arguments first)

Case_ (Token CaseTokTy t) (Expr t a) (Token OfTy t) (Block Match t a) (Annot t a) 
Ann (Expr t a) (Expr t a)

Annotated terms `( x : A )`

WitnessedAnn_ (Expr t a) (Token ColonTy t) (Expr t a) 
InferredAnn_ (Expr t a) (Expr t a) 
Instances
Bitraversable Expr Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Expr a b -> f (Expr c d) #

Bifoldable Expr Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => Expr m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Expr a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Expr a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Expr a b -> c #

Bifunctor Expr Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> Expr a c -> Expr b d #

first :: (a -> b) -> Expr a c -> Expr b c #

second :: (b -> c) -> Expr a b -> Expr a c #

Monad (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

(>>=) :: Expr t a -> (a -> Expr t b) -> Expr t b #

(>>) :: Expr t a -> Expr t b -> Expr t b #

return :: a -> Expr t a #

fail :: String -> Expr t a #

Functor (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Expr t a -> Expr t b #

(<$) :: a -> Expr t b -> Expr t a #

Applicative (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

pure :: a -> Expr t a #

(<*>) :: Expr t (a -> b) -> Expr t a -> Expr t b #

liftA2 :: (a -> b -> c) -> Expr t a -> Expr t b -> Expr t c #

(*>) :: Expr t a -> Expr t b -> Expr t b #

(<*) :: Expr t a -> Expr t b -> Expr t a #

Foldable (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Expr t m -> m #

foldMap :: Monoid m => (a -> m) -> Expr t a -> m #

foldr :: (a -> b -> b) -> b -> Expr t a -> b #

foldr' :: (a -> b -> b) -> b -> Expr t a -> b #

foldl :: (b -> a -> b) -> b -> Expr t a -> b #

foldl' :: (b -> a -> b) -> b -> Expr t a -> b #

foldr1 :: (a -> a -> a) -> Expr t a -> a #

foldl1 :: (a -> a -> a) -> Expr t a -> a #

toList :: Expr t a -> [a] #

null :: Expr t a -> Bool #

length :: Expr t a -> Int #

elem :: Eq a => a -> Expr t a -> Bool #

maximum :: Ord a => Expr t a -> a #

minimum :: Ord a => Expr t a -> a #

sum :: Num a => Expr t a -> a #

product :: Num a => Expr t a -> a #

Traversable (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Expr t a -> f (Expr t b) #

sequenceA :: Applicative f => Expr t (f a) -> f (Expr t a) #

mapM :: Monad m => (a -> m b) -> Expr t a -> m (Expr t b) #

sequence :: Monad m => Expr t (m a) -> m (Expr t a) #

Eq t => Eq1 (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Expr t a -> Expr t b -> Bool #

Ord t => Ord1 (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> Expr t a -> Expr t b -> Ordering #

Show t => Show1 (Expr t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Expr t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Expr t a] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [Expr t t] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [Expr t t] -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [Expr t t] Source # 
Instance details

Defined in OldRange

Methods

drange :: [Expr t t] -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange [Expr t t] Source # 
Instance details

Defined in OldRange

Methods

range :: [Expr t t] -> Range Source #

(Eq t, Eq a) => Eq (Expr t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Expr t a -> Expr t a -> Bool #

(/=) :: Expr t a -> Expr t a -> Bool #

(Ord t, Ord a) => Ord (Expr t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Expr t a -> Expr t a -> Ordering #

(<) :: Expr t a -> Expr t a -> Bool #

(<=) :: Expr t a -> Expr t a -> Bool #

(>) :: Expr t a -> Expr t a -> Bool #

(>=) :: Expr t a -> Expr t a -> Bool #

max :: Expr t a -> Expr t a -> Expr t a #

min :: Expr t a -> Expr t a -> Expr t a #

(Show t, Show a) => Show (Expr t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Expr t a -> ShowS #

show :: Expr t a -> String #

showList :: [Expr t a] -> ShowS #

Pretty (Expr String String) # 
Instance details

Defined in OldPretty

Methods

pretty :: Expr String String -> Doc ann #

prettyList :: [Expr String String] -> Doc ann #

Pretty (Expr Text Text) # 
Instance details

Defined in OldPretty

Methods

pretty :: Expr Text Text -> Doc ann #

prettyList :: [Expr Text Text] -> Doc ann #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Expr t t) Source #

ranges of exprs

>>> range $ decorate (wrap $ parse expr_ "f   ") beginning
Range (Pos 0 0) (Pos 0 3)
>>> range $ decorate (wrap $ parse expr_ "f a b  ") beginning
Range (Pos 0 0) (Pos 0 6)
>>> range $ decorate (wrap $ parse expr_ "\\ x . f a b{-ws-}") beginning
Range (Pos 0 0) (Pos 0 16)
>>> drange $ (decorate (wrap $ parse expr_ "f a b{-ws-}") beginning)
DetailedRange [Pos 0 0,Pos 0 1,Pos 0 2,Pos 0 3,Pos 0 4,Pos 0 5,Pos 0 6,Pos 0 7,Pos 0 8,Pos 0 9,Pos 0 10]
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Expr t t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Expr t t) Source #

cf inRange below

Instance details

Defined in OldRange

Methods

drange :: Expr t t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Expr t t) Source #

cf inRange below

Instance details

Defined in OldRange

Methods

range :: Expr t t -> Range Source #

NoPos (Expr t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Expr t a -> Expr t a Source #

Eq a => UnWrap (Expr t a) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: Expr t a -> Expr t a Source #

Eq a => Wrap (Expr a a) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: Expr a a -> Expr a a Source #

PrettyCode (Expr String String) Source # 
Instance details

Defined in OldPretty

PrettyCode (Expr Text Text) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Expr String String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Expr Text Text) Source # 
Instance details

Defined in OldPretty

Forget (Expr t a, Eps) (Expr t a, Eps) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Expr t a, Eps) -> (Expr t a, Eps) Source #

Forget (Expr t a) (Expr t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: Expr t a -> Expr t a Source #

T2S (Expr Text Text) (Expr String String) Source # 
Instance details

Defined in OldText2String

bitraverseExpr :: Applicative f => (a -> f c) -> (b -> f d) -> Expr a b -> f (Expr c d) Source #

data Annot t a Source #

Constructors

Annot (Maybe (Expr t a)) 
Instances
Bitraversable Annot Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Annot a b -> f (Annot c d) #

Bifoldable Annot Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => Annot m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Annot a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Annot a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Annot a b -> c #

Bifunctor Annot Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> Annot a c -> Annot b d #

first :: (a -> b) -> Annot a c -> Annot b c #

second :: (b -> c) -> Annot a b -> Annot a c #

Functor (Annot t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Annot t a -> Annot t b #

(<$) :: a -> Annot t b -> Annot t a #

Foldable (Annot t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Annot t m -> m #

foldMap :: Monoid m => (a -> m) -> Annot t a -> m #

foldr :: (a -> b -> b) -> b -> Annot t a -> b #

foldr' :: (a -> b -> b) -> b -> Annot t a -> b #

foldl :: (b -> a -> b) -> b -> Annot t a -> b #

foldl' :: (b -> a -> b) -> b -> Annot t a -> b #

foldr1 :: (a -> a -> a) -> Annot t a -> a #

foldl1 :: (a -> a -> a) -> Annot t a -> a #

toList :: Annot t a -> [a] #

null :: Annot t a -> Bool #

length :: Annot t a -> Int #

elem :: Eq a => a -> Annot t a -> Bool #

maximum :: Ord a => Annot t a -> a #

minimum :: Ord a => Annot t a -> a #

sum :: Num a => Annot t a -> a #

product :: Num a => Annot t a -> a #

Traversable (Annot t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Annot t a -> f (Annot t b) #

sequenceA :: Applicative f => Annot t (f a) -> f (Annot t a) #

mapM :: Monad m => (a -> m b) -> Annot t a -> m (Annot t b) #

sequence :: Monad m => Annot t (m a) -> m (Annot t a) #

Eq t => Eq1 (Annot t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Annot t a -> Annot t b -> Bool #

Ord t => Ord1 (Annot t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> Annot t a -> Annot t b -> Ordering #

Show t => Show1 (Annot t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Annot t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Annot t a] -> ShowS #

(Eq t, Eq a) => Eq (Annot t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Annot t a -> Annot t a -> Bool #

(/=) :: Annot t a -> Annot t a -> Bool #

(Ord t, Ord a) => Ord (Annot t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Annot t a -> Annot t a -> Ordering #

(<) :: Annot t a -> Annot t a -> Bool #

(<=) :: Annot t a -> Annot t a -> Bool #

(>) :: Annot t a -> Annot t a -> Bool #

(>=) :: Annot t a -> Annot t a -> Bool #

max :: Annot t a -> Annot t a -> Annot t a #

min :: Annot t a -> Annot t a -> Annot t a #

(Show t, Show a) => Show (Annot t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Annot t a -> ShowS #

show :: Annot t a -> String #

showList :: [Annot t a] -> ShowS #

PrettyAnn (Annot Text Text) Source # 
Instance details

Defined in OldPretty

Forget (Annot t a) (Annot t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: Annot t a -> Annot t a Source #

bitraverseAnnot :: Applicative f => (a -> f c) -> (b -> f d) -> Annot a b -> f (Annot c d) Source #

data Match t a Source #

Constructors

Match (Pattern t) (Scope Int (Expr t) a) 
Match_ (Pattern t) (Token ArrowTy t) (Scope Int (Expr t) a) 
Instances
Bitraversable Match Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Match a b -> f (Match c d) #

Bifoldable Match Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => Match m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Match a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Match a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Match a b -> c #

Bifunctor Match Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> Match a c -> Match b d #

first :: (a -> b) -> Match a c -> Match b c #

second :: (b -> c) -> Match a b -> Match a c #

Functor (Match t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Match t a -> Match t b #

(<$) :: a -> Match t b -> Match t a #

Foldable (Match t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Match t m -> m #

foldMap :: Monoid m => (a -> m) -> Match t a -> m #

foldr :: (a -> b -> b) -> b -> Match t a -> b #

foldr' :: (a -> b -> b) -> b -> Match t a -> b #

foldl :: (b -> a -> b) -> b -> Match t a -> b #

foldl' :: (b -> a -> b) -> b -> Match t a -> b #

foldr1 :: (a -> a -> a) -> Match t a -> a #

foldl1 :: (a -> a -> a) -> Match t a -> a #

toList :: Match t a -> [a] #

null :: Match t a -> Bool #

length :: Match t a -> Int #

elem :: Eq a => a -> Match t a -> Bool #

maximum :: Ord a => Match t a -> a #

minimum :: Ord a => Match t a -> a #

sum :: Num a => Match t a -> a #

product :: Num a => Match t a -> a #

Traversable (Match t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Match t a -> f (Match t b) #

sequenceA :: Applicative f => Match t (f a) -> f (Match t a) #

mapM :: Monad m => (a -> m b) -> Match t a -> m (Match t b) #

sequence :: Monad m => Match t (m a) -> m (Match t a) #

Eq t => Eq1 (Match t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Match t a -> Match t b -> Bool #

Ord t => Ord1 (Match t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> Match t a -> Match t b -> Ordering #

Show t => Show1 (Match t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Match t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Match t a] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Maybe (Token SemiColonTy t), Match t t)] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Maybe (Token SemiColonTy t), Match t t)] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(Match t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [(Match t t, Maybe (Token SemiColonTy t))] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [Match t t] Source #
  • - -- >>> nat (silence $ runExceptT $ getModules_ ["samples"] "Nat")>= return . last . fromRight'
  • - -- >>> let Case_ casetok exp of' mayopen matches mayclose annot = fromExp $ fromRight' $ (ezipper $ Mod $ decorateM $ wrap nat) >>= toDecl 2 >>= right >>= body >>= focus
  • - -- >>> range (snd $ matches !! 0)
  • - -- Range (Pos 17 2) (Pos 18 1)
  • - -- >>> range (matches !! 0)
  • - -- Range (Pos 17 2) (Pos 18 1)
  • - -- >>> (Pos 17 10) inRange (snd $ matches !! 0)
  • - -- True
  • - -- >>> (Pos 17 10) inRange (matches !! 0)
  • - -- True
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [Match t t] -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Maybe (Token SemiColonTy t), Match t t)] Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange [(Match t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange [Match t t] Source # 
Instance details

Defined in OldRange

Methods

drange :: [Match t t] -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange [(Maybe (Token SemiColonTy t), Match t t)] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Maybe (Token SemiColonTy t), Match t t)] -> Range Source #

(Decorated t, HasRange t) => HasRange [(Match t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

Methods

range :: [(Match t t, Maybe (Token SemiColonTy t))] -> Range Source #

(Decorated t, HasRange t) => HasRange [Match t t] Source # 
Instance details

Defined in OldRange

Methods

range :: [Match t t] -> Range Source #

(Eq t, Eq a) => Eq (Match t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Match t a -> Match t a -> Bool #

(/=) :: Match t a -> Match t a -> Bool #

(Ord t, Ord a) => Ord (Match t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Match t a -> Match t a -> Ordering #

(<) :: Match t a -> Match t a -> Bool #

(<=) :: Match t a -> Match t a -> Bool #

(>) :: Match t a -> Match t a -> Bool #

(>=) :: Match t a -> Match t a -> Bool #

max :: Match t a -> Match t a -> Match t a #

min :: Match t a -> Match t a -> Match t a #

(Show t, Show a) => Show (Match t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Match t a -> ShowS #

show :: Match t a -> String #

showList :: [Match t a] -> ShowS #

Pretty (Match String String) # 
Instance details

Defined in OldPretty

Methods

pretty :: Match String String -> Doc ann #

prettyList :: [Match String String] -> Doc ann #

Pretty (Match Text Text) # 
Instance details

Defined in OldPretty

Methods

pretty :: Match Text Text -> Doc ann #

prettyList :: [Match Text Text] -> Doc ann #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Maybe (Token SemiColonTy t), Match t t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Maybe (Token SemiColonTy t), Match t t) -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Match t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> (Match t t, Maybe (Token SemiColonTy t)) -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Match t t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Match t t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Maybe (Token SemiColonTy t), Match t t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (Match t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (Match t t) Source # 
Instance details

Defined in OldRange

Methods

drange :: Match t t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Maybe (Token SemiColonTy t), Match t t) Source # 
Instance details

Defined in OldRange

Methods

range :: (Maybe (Token SemiColonTy t), Match t t) -> Range Source #

(Decorated t, HasRange t) => HasRange (Match t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

Methods

range :: (Match t t, Maybe (Token SemiColonTy t)) -> Range Source #

(Decorated t, HasRange t) => HasRange (Match t t) Source # 
Instance details

Defined in OldRange

Methods

range :: Match t t -> Range Source #

NoPos (Match t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Match t a -> Match t a Source #

Eq a => UnWrap (Match a a) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: Match a a -> Match a a Source #

Eq a => Wrap (Match a a) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: Match a a -> Match a a Source #

PrettyAnn (Match String String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Match Text Text) Source # 
Instance details

Defined in OldPretty

Forget (Maybe (Token SemiColonTy t), Match t a) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Maybe (Token SemiColonTy t), Match t a) -> Match t a Source #

Forget (Token SemiColonTy t, Match t a) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Token SemiColonTy t, Match t a) -> Match t a Source #

Forget (Match t a, Token SemiColonTy t) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Match t a, Token SemiColonTy t) -> Match t a Source #

Forget (Match t a, Maybe (Token SemiColonTy t)) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: (Match t a, Maybe (Token SemiColonTy t)) -> Match t a Source #

Forget (Match t a) (Match t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: Match t a -> Match t a Source #

Forget (Block Match t a) [Match t a] Source # 
Instance details

Defined in OldForget

Methods

forget :: Block Match t a -> [Match t a] Source #

bitraverseMatch :: Applicative f => (a -> f c) -> (b -> f d) -> Match a b -> f (Match c d) Source #

data Elem sep constr t a Source #

Constructors

Elem (constr t a) 
Separator sep 
Instances
Functor (constr t) => Functor (Elem sep constr t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Elem sep constr t a -> Elem sep constr t b #

(<$) :: a -> Elem sep constr t b -> Elem sep constr t a #

Foldable (constr t) => Foldable (Elem sep constr t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Elem sep constr t m -> m #

foldMap :: Monoid m => (a -> m) -> Elem sep constr t a -> m #

foldr :: (a -> b -> b) -> b -> Elem sep constr t a -> b #

foldr' :: (a -> b -> b) -> b -> Elem sep constr t a -> b #

foldl :: (b -> a -> b) -> b -> Elem sep constr t a -> b #

foldl' :: (b -> a -> b) -> b -> Elem sep constr t a -> b #

foldr1 :: (a -> a -> a) -> Elem sep constr t a -> a #

foldl1 :: (a -> a -> a) -> Elem sep constr t a -> a #

toList :: Elem sep constr t a -> [a] #

null :: Elem sep constr t a -> Bool #

length :: Elem sep constr t a -> Int #

elem :: Eq a => a -> Elem sep constr t a -> Bool #

maximum :: Ord a => Elem sep constr t a -> a #

minimum :: Ord a => Elem sep constr t a -> a #

sum :: Num a => Elem sep constr t a -> a #

product :: Num a => Elem sep constr t a -> a #

Traversable (constr t) => Traversable (Elem sep constr t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Elem sep constr t a -> f (Elem sep constr t b) #

sequenceA :: Applicative f => Elem sep constr t (f a) -> f (Elem sep constr t a) #

mapM :: Monad m => (a -> m b) -> Elem sep constr t a -> m (Elem sep constr t b) #

sequence :: Monad m => Elem sep constr t (m a) -> m (Elem sep constr t a) #

(Eq sep, Eq (constr t a)) => Eq (Elem sep constr t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Elem sep constr t a -> Elem sep constr t a -> Bool #

(/=) :: Elem sep constr t a -> Elem sep constr t a -> Bool #

(Ord sep, Ord (constr t a)) => Ord (Elem sep constr t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Elem sep constr t a -> Elem sep constr t a -> Ordering #

(<) :: Elem sep constr t a -> Elem sep constr t a -> Bool #

(<=) :: Elem sep constr t a -> Elem sep constr t a -> Bool #

(>) :: Elem sep constr t a -> Elem sep constr t a -> Bool #

(>=) :: Elem sep constr t a -> Elem sep constr t a -> Bool #

max :: Elem sep constr t a -> Elem sep constr t a -> Elem sep constr t a #

min :: Elem sep constr t a -> Elem sep constr t a -> Elem sep constr t a #

(Show sep, Show (constr t a)) => Show (Elem sep constr t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Elem sep constr t a -> ShowS #

show :: Elem sep constr t a -> String #

showList :: [Elem sep constr t a] -> ShowS #

data Block constr t a Source #

Constructors

IndentedList [constr t a] 
Block (Token BraceOpenTy t) [Elem (Token SemiColonTy t) constr t a] (Token BraceCloseTy t) 
Instances
Functor (constr t) => Functor (Block constr t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Block constr t a -> Block constr t b #

(<$) :: a -> Block constr t b -> Block constr t a #

Foldable (constr t) => Foldable (Block constr t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Block constr t m -> m #

foldMap :: Monoid m => (a -> m) -> Block constr t a -> m #

foldr :: (a -> b -> b) -> b -> Block constr t a -> b #

foldr' :: (a -> b -> b) -> b -> Block constr t a -> b #

foldl :: (b -> a -> b) -> b -> Block constr t a -> b #

foldl' :: (b -> a -> b) -> b -> Block constr t a -> b #

foldr1 :: (a -> a -> a) -> Block constr t a -> a #

foldl1 :: (a -> a -> a) -> Block constr t a -> a #

toList :: Block constr t a -> [a] #

null :: Block constr t a -> Bool #

length :: Block constr t a -> Int #

elem :: Eq a => a -> Block constr t a -> Bool #

maximum :: Ord a => Block constr t a -> a #

minimum :: Ord a => Block constr t a -> a #

sum :: Num a => Block constr t a -> a #

product :: Num a => Block constr t a -> a #

Traversable (constr t) => Traversable (Block constr t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Block constr t a -> f (Block constr t b) #

sequenceA :: Applicative f => Block constr t (f a) -> f (Block constr t a) #

mapM :: Monad m => (a -> m b) -> Block constr t a -> m (Block constr t b) #

sequence :: Monad m => Block constr t (m a) -> m (Block constr t a) #

(Eq t, Eq1 (c t)) => Eq1 (Block c t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Block c t a -> Block c t b -> Bool #

(Eq t, Ord1 (c t)) => Ord1 (Block c t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> Block c t a -> Block c t b -> Ordering #

Show1 (c t) => Show1 (Block c t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Block c t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Block c t a] -> ShowS #

(Eq t, Eq (constr t a)) => Eq (Block constr t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Block constr t a -> Block constr t a -> Bool #

(/=) :: Block constr t a -> Block constr t a -> Bool #

(Ord t, Ord (constr t a)) => Ord (Block constr t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Block constr t a -> Block constr t a -> Ordering #

(<) :: Block constr t a -> Block constr t a -> Bool #

(<=) :: Block constr t a -> Block constr t a -> Bool #

(>) :: Block constr t a -> Block constr t a -> Bool #

(>=) :: Block constr t a -> Block constr t a -> Bool #

max :: Block constr t a -> Block constr t a -> Block constr t a #

min :: Block constr t a -> Block constr t a -> Block constr t a #

(Show t, Show (constr t a)) => Show (Block constr t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Block constr t a -> ShowS #

show :: Block constr t a -> String #

showList :: [Block constr t a] -> ShowS #

NoPos (c t a) => NoPos (Block c t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Block c t a -> Block c t a Source #

Forget (Block ConstructorDef t a) [ConstructorDef t a] Source # 
Instance details

Defined in OldForget

Forget (Block Match t a) [Match t a] Source # 
Instance details

Defined in OldForget

Methods

forget :: Block Match t a -> [Match t a] Source #

data Arg t a Source #

Constructors

Arg Eps (Expr t a) 
Instances
Bitraversable Arg Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Arg a b -> f (Arg c d) #

Bifoldable Arg Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => Arg m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Arg a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Arg a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Arg a b -> c #

Bifunctor Arg Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> Arg a c -> Arg b d #

first :: (a -> b) -> Arg a c -> Arg b c #

second :: (b -> c) -> Arg a b -> Arg a c #

Functor (Arg t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Arg t a -> Arg t b #

(<$) :: a -> Arg t b -> Arg t a #

Foldable (Arg t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Arg t m -> m #

foldMap :: Monoid m => (a -> m) -> Arg t a -> m #

foldr :: (a -> b -> b) -> b -> Arg t a -> b #

foldr' :: (a -> b -> b) -> b -> Arg t a -> b #

foldl :: (b -> a -> b) -> b -> Arg t a -> b #

foldl' :: (b -> a -> b) -> b -> Arg t a -> b #

foldr1 :: (a -> a -> a) -> Arg t a -> a #

foldl1 :: (a -> a -> a) -> Arg t a -> a #

toList :: Arg t a -> [a] #

null :: Arg t a -> Bool #

length :: Arg t a -> Int #

elem :: Eq a => a -> Arg t a -> Bool #

maximum :: Ord a => Arg t a -> a #

minimum :: Ord a => Arg t a -> a #

sum :: Num a => Arg t a -> a #

product :: Num a => Arg t a -> a #

Traversable (Arg t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Arg t a -> f (Arg t b) #

sequenceA :: Applicative f => Arg t (f a) -> f (Arg t a) #

mapM :: Monad m => (a -> m b) -> Arg t a -> m (Arg t b) #

sequence :: Monad m => Arg t (m a) -> m (Arg t a) #

Eq t => Eq1 (Arg t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Arg t a -> Arg t b -> Bool #

Ord t => Ord1 (Arg t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> Arg t a -> Arg t b -> Ordering #

Show t => Show1 (Arg t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Arg t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Arg t a] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [Arg t t] Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [Arg t t] -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [Arg t t] Source # 
Instance details

Defined in OldRange

Methods

drange :: [Arg t t] -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange [Arg t t] Source # 
Instance details

Defined in OldRange

Methods

range :: [Arg t t] -> Range Source #

(Eq t, Eq a) => Eq (Arg t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Arg t a -> Arg t a -> Bool #

(/=) :: Arg t a -> Arg t a -> Bool #

(Ord t, Ord a) => Ord (Arg t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Arg t a -> Arg t a -> Ordering #

(<) :: Arg t a -> Arg t a -> Bool #

(<=) :: Arg t a -> Arg t a -> Bool #

(>) :: Arg t a -> Arg t a -> Bool #

(>=) :: Arg t a -> Arg t a -> Bool #

max :: Arg t a -> Arg t a -> Arg t a #

min :: Arg t a -> Arg t a -> Arg t a #

(Show t, Show a) => Show (Arg t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Arg t a -> ShowS #

show :: Arg t a -> String #

showList :: [Arg t a] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Arg t t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Arg t t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Arg t t) Source # 
Instance details

Defined in OldRange

Methods

drange :: Arg t t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Arg t t) Source # 
Instance details

Defined in OldRange

Methods

range :: Arg t t -> Range Source #

NoPos (Arg t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Arg t a -> Arg t a Source #

Forget (Arg t a) (Arg t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: Arg t a -> Arg t a Source #

bitraverseArg :: Applicative f => (a -> f c) -> (b -> f d) -> Arg a b -> f (Arg c d) Source #

data Telescope t a Source #

Instances
Bitraversable Telescope Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Telescope a b -> f (Telescope c d) #

Bifoldable Telescope Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => Telescope m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Telescope a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Telescope a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Telescope a b -> c #

Bifunctor Telescope Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> Telescope a c -> Telescope b d #

first :: (a -> b) -> Telescope a c -> Telescope b c #

second :: (b -> c) -> Telescope a b -> Telescope a c #

Functor (Telescope t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Telescope t a -> Telescope t b #

(<$) :: a -> Telescope t b -> Telescope t a #

Foldable (Telescope t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Telescope t m -> m #

foldMap :: Monoid m => (a -> m) -> Telescope t a -> m #

foldr :: (a -> b -> b) -> b -> Telescope t a -> b #

foldr' :: (a -> b -> b) -> b -> Telescope t a -> b #

foldl :: (b -> a -> b) -> b -> Telescope t a -> b #

foldl' :: (b -> a -> b) -> b -> Telescope t a -> b #

foldr1 :: (a -> a -> a) -> Telescope t a -> a #

foldl1 :: (a -> a -> a) -> Telescope t a -> a #

toList :: Telescope t a -> [a] #

null :: Telescope t a -> Bool #

length :: Telescope t a -> Int #

elem :: Eq a => a -> Telescope t a -> Bool #

maximum :: Ord a => Telescope t a -> a #

minimum :: Ord a => Telescope t a -> a #

sum :: Num a => Telescope t a -> a #

product :: Num a => Telescope t a -> a #

Traversable (Telescope t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Telescope t a -> f (Telescope t b) #

sequenceA :: Applicative f => Telescope t (f a) -> f (Telescope t a) #

mapM :: Monad m => (a -> m b) -> Telescope t a -> m (Telescope t b) #

sequence :: Monad m => Telescope t (m a) -> m (Telescope t a) #

Eq t => Eq1 (Telescope t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> Telescope t a -> Telescope t b -> Bool #

Ord t => Ord1 (Telescope t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> Telescope t a -> Telescope t b -> Ordering #

Show t => Show1 (Telescope t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Telescope t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Telescope t a] -> ShowS #

(Eq t, Eq a) => Eq (Telescope t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Telescope t a -> Telescope t a -> Bool #

(/=) :: Telescope t a -> Telescope t a -> Bool #

(Ord t, Ord a) => Ord (Telescope t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Telescope t a -> Telescope t a -> Ordering #

(<) :: Telescope t a -> Telescope t a -> Bool #

(<=) :: Telescope t a -> Telescope t a -> Bool #

(>) :: Telescope t a -> Telescope t a -> Bool #

(>=) :: Telescope t a -> Telescope t a -> Bool #

max :: Telescope t a -> Telescope t a -> Telescope t a #

min :: Telescope t a -> Telescope t a -> Telescope t a #

(Show t, Show a) => Show (Telescope t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Telescope t a -> ShowS #

show :: Telescope t a -> String #

showList :: [Telescope t a] -> ShowS #

Pretty (Telescope String String) # 
Instance details

Defined in OldPretty

Pretty (Telescope Text Text) # 
Instance details

Defined in OldPretty

Methods

pretty :: Telescope Text Text -> Doc ann #

prettyList :: [Telescope Text Text] -> Doc ann #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Telescope t t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> Telescope t t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Telescope t t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange (Telescope t t) Source # 
Instance details

Defined in OldRange

Methods

range :: Telescope t t -> Range Source #

NoPos (Telescope t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Telescope t a -> Telescope t a Source #

Eq a => UnWrap (Telescope a a) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: Telescope a a -> Telescope a a Source #

Eq a => Wrap (Telescope a a) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: Telescope a a -> Telescope a a Source #

PrettyAnn (Telescope String String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Telescope Text Text) Source # 
Instance details

Defined in OldPretty

Forget (Telescope t a) (Telescope t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: Telescope t a -> Telescope t a Source #

bitraverseTele :: Applicative f => (a -> f c) -> (b -> f d) -> Telescope a b -> f (Telescope c d) Source #

data ConstructorDef t a Source #

A Data constructor has a name and a telescope of arguments

Instances
Bitraversable ConstructorDef Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> ConstructorDef a b -> f (ConstructorDef c d) #

Bifoldable ConstructorDef Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => ConstructorDef m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> ConstructorDef a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> ConstructorDef a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> ConstructorDef a b -> c #

Bifunctor ConstructorDef Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> ConstructorDef a c -> ConstructorDef b d #

first :: (a -> b) -> ConstructorDef a c -> ConstructorDef b c #

second :: (b -> c) -> ConstructorDef a b -> ConstructorDef a c #

Functor (ConstructorDef t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> ConstructorDef t a -> ConstructorDef t b #

(<$) :: a -> ConstructorDef t b -> ConstructorDef t a #

Foldable (ConstructorDef t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => ConstructorDef t m -> m #

foldMap :: Monoid m => (a -> m) -> ConstructorDef t a -> m #

foldr :: (a -> b -> b) -> b -> ConstructorDef t a -> b #

foldr' :: (a -> b -> b) -> b -> ConstructorDef t a -> b #

foldl :: (b -> a -> b) -> b -> ConstructorDef t a -> b #

foldl' :: (b -> a -> b) -> b -> ConstructorDef t a -> b #

foldr1 :: (a -> a -> a) -> ConstructorDef t a -> a #

foldl1 :: (a -> a -> a) -> ConstructorDef t a -> a #

toList :: ConstructorDef t a -> [a] #

null :: ConstructorDef t a -> Bool #

length :: ConstructorDef t a -> Int #

elem :: Eq a => a -> ConstructorDef t a -> Bool #

maximum :: Ord a => ConstructorDef t a -> a #

minimum :: Ord a => ConstructorDef t a -> a #

sum :: Num a => ConstructorDef t a -> a #

product :: Num a => ConstructorDef t a -> a #

Traversable (ConstructorDef t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> ConstructorDef t a -> f (ConstructorDef t b) #

sequenceA :: Applicative f => ConstructorDef t (f a) -> f (ConstructorDef t a) #

mapM :: Monad m => (a -> m b) -> ConstructorDef t a -> m (ConstructorDef t b) #

sequence :: Monad m => ConstructorDef t (m a) -> m (ConstructorDef t a) #

Eq t => Eq1 (ConstructorDef t) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq :: (a -> b -> Bool) -> ConstructorDef t a -> ConstructorDef t b -> Bool #

Ord t => Ord1 (ConstructorDef t) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare :: (a -> b -> Ordering) -> ConstructorDef t a -> ConstructorDef t b -> Ordering #

Show t => Show1 (ConstructorDef t) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> ConstructorDef t a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [ConstructorDef t a] -> ShowS #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [(ConstructorDef t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange [(ConstructorDef t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange [(ConstructorDef t t, Maybe (Token SemiColonTy t))] Source # 
Instance details

Defined in OldRange

(Eq t, Eq a) => Eq (ConstructorDef t a) Source # 
Instance details

Defined in OldSyntax

(Ord t, Ord a) => Ord (ConstructorDef t a) Source # 
Instance details

Defined in OldSyntax

(Show t, Show a) => Show (ConstructorDef t a) Source # 
Instance details

Defined in OldSyntax

Pretty (ConstructorDef String String) # 
Instance details

Defined in OldPretty

Pretty (ConstructorDef Text Text) # 
Instance details

Defined in OldPretty

(Decorated t, HasRange t, HasDetailedRange t) => InRange (ConstructorDef t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t, HasDetailedRange t) => InRange (ConstructorDef t t) Source # 
Instance details

Defined in OldRange

Methods

inRange :: Pos -> ConstructorDef t t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (ConstructorDef t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (ConstructorDef t t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange (ConstructorDef t t, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange (ConstructorDef t t) Source # 
Instance details

Defined in OldRange

Methods

range :: ConstructorDef t t -> Range Source #

NoPos (ConstructorDef t a, Maybe (Token SemiColonTy t)) Source # 
Instance details

Defined in OldNoPos

NoPos (ConstructorDef t a) Source # 
Instance details

Defined in OldNoPos

Eq a => UnWrap (ConstructorDef a a, b) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: (ConstructorDef a a, b) -> (ConstructorDef a a, b) Source #

Eq a => UnWrap (ConstructorDef a a) Source # 
Instance details

Defined in OldWrap

Eq a => Wrap (ConstructorDef a a, b) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: (ConstructorDef a a, b) -> (ConstructorDef a a, b) Source #

Eq a => Wrap (ConstructorDef a a) Source # 
Instance details

Defined in OldWrap

PrettyAnn (ConstructorDef String String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (ConstructorDef Text Text) Source # 
Instance details

Defined in OldPretty

Forget (ConstructorDef t a, Maybe (Token SemiColonTy t)) (ConstructorDef t a) Source # 
Instance details

Defined in OldForget

Forget (ConstructorDef t a) (ConstructorDef t a) Source # 
Instance details

Defined in OldForget

Forget (Block ConstructorDef t a) [ConstructorDef t a] Source # 
Instance details

Defined in OldForget

data Decl t a Source #

Constructors

Sig t (Expr t a) 
Sig_ (Nm t) (Token ColonTy t) (Expr t a) 
Def t (Expr t a) 
Def_ (Nm t) (Token EqualTy t) (Expr t a) 
RecDef t (Expr t a) 
RecDef_ (Nm t) (Token EqualTy t) (Expr t a) 
Data t (Telescope t a) [ConstructorDef t a] 
Data_ (Token DataTokTy t) (Nm t) (Telescope t a) (Token ColonTy t) (Expr t a) (Token WhereTy t) (Block ConstructorDef t a) 
Instances
Bitraversable Decl Source # 
Instance details

Defined in OldSyntax

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Decl a b -> f (Decl c d) #

Bifoldable Decl Source # 
Instance details

Defined in OldSyntax

Methods

bifold :: Monoid m => Decl m m -> m #

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Decl a b -> m #

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Decl a b -> c #

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Decl a b -> c #

Bifunctor Decl Source # 
Instance details

Defined in OldSyntax

Methods

bimap :: (a -> b) -> (c -> d) -> Decl a c -> Decl b d #

first :: (a -> b) -> Decl a c -> Decl b c #

second :: (b -> c) -> Decl a b -> Decl a c #

Functor (Decl t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Decl t a -> Decl t b #

(<$) :: a -> Decl t b -> Decl t a #

Foldable (Decl t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Decl t m -> m #

foldMap :: Monoid m => (a -> m) -> Decl t a -> m #

foldr :: (a -> b -> b) -> b -> Decl t a -> b #

foldr' :: (a -> b -> b) -> b -> Decl t a -> b #

foldl :: (b -> a -> b) -> b -> Decl t a -> b #

foldl' :: (b -> a -> b) -> b -> Decl t a -> b #

foldr1 :: (a -> a -> a) -> Decl t a -> a #

foldl1 :: (a -> a -> a) -> Decl t a -> a #

toList :: Decl t a -> [a] #

null :: Decl t a -> Bool #

length :: Decl t a -> Int #

elem :: Eq a => a -> Decl t a -> Bool #

maximum :: Ord a => Decl t a -> a #

minimum :: Ord a => Decl t a -> a #

sum :: Num a => Decl t a -> a #

product :: Num a => Decl t a -> a #

Traversable (Decl t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Decl t a -> f (Decl t b) #

sequenceA :: Applicative f => Decl t (f a) -> f (Decl t a) #

mapM :: Monad m => (a -> m b) -> Decl t a -> m (Decl t b) #

sequence :: Monad m => Decl t (m a) -> m (Decl t a) #

(Decorated t, HasRange t, HasDetailedRange t) => InRange [Decl t t] Source #

ranges of lists of decls, examples/tests!

Instance details

Defined in OldRange

Methods

inRange :: Pos -> [Decl t t] -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [Decl t t] Source # 
Instance details

Defined in OldRange

Methods

drange :: [Decl t t] -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange [Decl t t] Source # 
Instance details

Defined in OldRange

Methods

range :: [Decl t t] -> Range Source #

Eq a => UnWrap [Decl a a] Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: [Decl a a] -> [Decl a a] Source #

Eq a => Wrap [Decl a a] Source # 
Instance details

Defined in OldWrap

Methods

wrap :: [Decl a a] -> [Decl a a] Source #

Forget [Decl t a] [Decl t a] Source # 
Instance details

Defined in OldForget

Methods

forget :: [Decl t a] -> [Decl t a] Source #

T2S [Decl Text Text] [Decl String String] Source # 
Instance details

Defined in OldText2String

(Eq t, Eq a) => Eq (Decl t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Decl t a -> Decl t a -> Bool #

(/=) :: Decl t a -> Decl t a -> Bool #

(Ord t, Ord a) => Ord (Decl t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Decl t a -> Decl t a -> Ordering #

(<) :: Decl t a -> Decl t a -> Bool #

(<=) :: Decl t a -> Decl t a -> Bool #

(>) :: Decl t a -> Decl t a -> Bool #

(>=) :: Decl t a -> Decl t a -> Bool #

max :: Decl t a -> Decl t a -> Decl t a #

min :: Decl t a -> Decl t a -> Decl t a #

(Show t, Show a) => Show (Decl t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Decl t a -> ShowS #

show :: Decl t a -> String #

showList :: [Decl t a] -> ShowS #

Pretty (Decl String String) # 
Instance details

Defined in OldPretty

Methods

pretty :: Decl String String -> Doc ann #

prettyList :: [Decl String String] -> Doc ann #

Pretty (Decl Text Text) # 
Instance details

Defined in OldPretty

Methods

pretty :: Decl Text Text -> Doc ann #

prettyList :: [Decl Text Text] -> Doc ann #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (Decl t t) Source #

ranges of decls, examples/tests!

Instance details

Defined in OldRange

Methods

inRange :: Pos -> Decl t t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange (Decl t t) Source # 
Instance details

Defined in OldRange

Methods

drange :: Decl t t -> DetailedRange Source #

(Decorated t, HasRange t) => HasRange (Decl t t) Source # 
Instance details

Defined in OldRange

Methods

range :: Decl t t -> Range Source #

NoPos (Decl t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Decl t a -> Decl t a Source #

Eq a => UnWrap (Decl a a) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: Decl a a -> Decl a a Source #

Eq a => Wrap (Decl a a) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: Decl a a -> Decl a a Source #

PrettyCode (Decl String String) Source # 
Instance details

Defined in OldPretty

PrettyCode (Decl Text Text) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Decl String String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Decl Text Text) Source # 
Instance details

Defined in OldPretty

Forget (Decl t a) (Decl t a) Source # 
Instance details

Defined in OldForget

Methods

forget :: Decl t a -> Decl t a Source #

T2S (Decl Text Text) (Decl String String) Source # 
Instance details

Defined in OldText2String

setTraversal :: Ord b => Traversal (Set a) (Set b) a b Source #

data ConstructorNames a Source #

Constructors

ConstructorNames 

Fields

Instances
Foldable ConstructorNames Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => ConstructorNames m -> m #

foldMap :: Monoid m => (a -> m) -> ConstructorNames a -> m #

foldr :: (a -> b -> b) -> b -> ConstructorNames a -> b #

foldr' :: (a -> b -> b) -> b -> ConstructorNames a -> b #

foldl :: (b -> a -> b) -> b -> ConstructorNames a -> b #

foldl' :: (b -> a -> b) -> b -> ConstructorNames a -> b #

foldr1 :: (a -> a -> a) -> ConstructorNames a -> a #

foldl1 :: (a -> a -> a) -> ConstructorNames a -> a #

toList :: ConstructorNames a -> [a] #

null :: ConstructorNames a -> Bool #

length :: ConstructorNames a -> Int #

elem :: Eq a => a -> ConstructorNames a -> Bool #

maximum :: Ord a => ConstructorNames a -> a #

minimum :: Ord a => ConstructorNames a -> a #

sum :: Num a => ConstructorNames a -> a #

product :: Num a => ConstructorNames a -> a #

Eq a => Eq (ConstructorNames a) Source # 
Instance details

Defined in OldSyntax

Ord a => Ord (ConstructorNames a) Source # 
Instance details

Defined in OldSyntax

(Read a, Ord a) => Read (ConstructorNames a) Source # 
Instance details

Defined in OldSyntax

Show a => Show (ConstructorNames a) Source # 
Instance details

Defined in OldSyntax

emptyConstructorNames :: ConstructorNames Text Source #

empty set of constructor names

data ModuleImport t Source #

Instances
Functor ModuleImport Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> ModuleImport a -> ModuleImport b #

(<$) :: a -> ModuleImport b -> ModuleImport a #

Foldable ModuleImport Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => ModuleImport m -> m #

foldMap :: Monoid m => (a -> m) -> ModuleImport a -> m #

foldr :: (a -> b -> b) -> b -> ModuleImport a -> b #

foldr' :: (a -> b -> b) -> b -> ModuleImport a -> b #

foldl :: (b -> a -> b) -> b -> ModuleImport a -> b #

foldl' :: (b -> a -> b) -> b -> ModuleImport a -> b #

foldr1 :: (a -> a -> a) -> ModuleImport a -> a #

foldl1 :: (a -> a -> a) -> ModuleImport a -> a #

toList :: ModuleImport a -> [a] #

null :: ModuleImport a -> Bool #

length :: ModuleImport a -> Int #

elem :: Eq a => a -> ModuleImport a -> Bool #

maximum :: Ord a => ModuleImport a -> a #

minimum :: Ord a => ModuleImport a -> a #

sum :: Num a => ModuleImport a -> a #

product :: Num a => ModuleImport a -> a #

Traversable ModuleImport Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> ModuleImport a -> f (ModuleImport b) #

sequenceA :: Applicative f => ModuleImport (f a) -> f (ModuleImport a) #

mapM :: Monad m => (a -> m b) -> ModuleImport a -> m (ModuleImport b) #

sequence :: Monad m => ModuleImport (m a) -> m (ModuleImport a) #

Eq t => Eq (ModuleImport t) Source # 
Instance details

Defined in OldSyntax

Ord t => Ord (ModuleImport t) Source # 
Instance details

Defined in OldSyntax

Show t => Show (ModuleImport t) Source # 
Instance details

Defined in OldSyntax

(Decorated t, HasRange t, HasDetailedRange t) => InRange [ModuleImport t] Source #

\[ModuleImport\]

>>> range $ [ModuleImport_ {_importtok = ImportTok ("import",Lines 6 0 0 0) (Ws ("   ",Lines 6 6 0 0)), _importnm = Nm_ ("Nat",Lines 6 9 0 0) (Ws ("\n",Lines 6 12 0 0))},ModuleImport_ {_importtok = ImportTok ("import",Lines 7 0 0 0) (Ws (" ",Lines 7 6 0 0)), _importnm = Nm_ ("Sample",Lines 7 7 0 0) (Ws ("\n\n",Lines 7 13 0 0))}]
Range (Pos 6 0) (Pos 8 0)
>>> drange $ [ModuleImport_ {_importtok = ImportTok ("import",Lines 6 0 0 0) (Ws ("   ",Lines 6 6 0 0)), _importnm = Nm_ ("Nat",Lines 6 9 0 0) (Ws ("\n",Lines 6 12 0 0))},ModuleImport_ {_importtok = ImportTok ("import",Lines 7 0 0 0) (Ws (" ",Lines 7 6 0 0)), _importnm = Nm_ ("Sample",Lines 7 7 0 0) (Ws ("\n\n",Lines 7 13 0 0))}]
DetailedRange [Pos 6 0,Pos 6 1,Pos 6 2,Pos 6 3,Pos 6 4,Pos 6 5,Pos 6 6,Pos 6 7,Pos 6 8,Pos 6 9,Pos 6 10,Pos 6 11,Pos 6 12,Pos 7 0,Pos 7 1,Pos 7 2,Pos 7 3,Pos 7 4,Pos 7 5,Pos 7 6,Pos 7 7,Pos 7 8,Pos 7 9,Pos 7 10,Pos 7 11,Pos 7 12,Pos 7 13,Pos 8 0]
Instance details

Defined in OldRange

Methods

inRange :: Pos -> [ModuleImport t] -> Bool Source #

(Decorated t, HasRange t, HasDetailedRange t) => InRange (ModuleImport t) Source #

ModuleImport

>>> range $ ModuleImport_ {_importtok = ImportTok ("import",Lines 6 0 0 0) (Ws ("   ",Lines 6 6 0 0)), _importnm = Nm_ ("Nat",Lines 6 9 0 0) (Ws ("\n",Lines 6 12 0 0))}
Range (Pos 6 0) (Pos 6 12)
>>> drange $ ModuleImport_ {_importtok = ImportTok ("import",Lines 6 0 0 0) (Ws ("   ",Lines 6 6 0 0)), _importnm = Nm_ ("Nat",Lines 6 9 0 0) (Ws ("\n",Lines 6 12 0 0))}
DetailedRange [Pos 6 0,Pos 6 1,Pos 6 2,Pos 6 3,Pos 6 4,Pos 6 5,Pos 6 6,Pos 6 7,Pos 6 8,Pos 6 9,Pos 6 10,Pos 6 11,Pos 6 12]
Instance details

Defined in OldRange

Methods

inRange :: Pos -> ModuleImport t -> Bool Source #

(Decorated t, HasDetailedRange t) => HasDetailedRange [ModuleImport t] Source #

cf inRange below

Instance details

Defined in OldRange

(Decorated t, HasDetailedRange t) => HasDetailedRange (ModuleImport t) Source # 
Instance details

Defined in OldRange

(Decorated t, HasRange t) => HasRange [ModuleImport t] Source #

cf inRange below

Instance details

Defined in OldRange

Methods

range :: [ModuleImport t] -> Range Source #

(Decorated t, HasRange t) => HasRange (ModuleImport t) Source # 
Instance details

Defined in OldRange

data Module t a Source #

Constructors

Module 

Fields

Module_ 
Instances
Functor (Module t) Source # 
Instance details

Defined in OldSyntax

Methods

fmap :: (a -> b) -> Module t a -> Module t b #

(<$) :: a -> Module t b -> Module t a #

Foldable (Module t) Source # 
Instance details

Defined in OldSyntax

Methods

fold :: Monoid m => Module t m -> m #

foldMap :: Monoid m => (a -> m) -> Module t a -> m #

foldr :: (a -> b -> b) -> b -> Module t a -> b #

foldr' :: (a -> b -> b) -> b -> Module t a -> b #

foldl :: (b -> a -> b) -> b -> Module t a -> b #

foldl' :: (b -> a -> b) -> b -> Module t a -> b #

foldr1 :: (a -> a -> a) -> Module t a -> a #

foldl1 :: (a -> a -> a) -> Module t a -> a #

toList :: Module t a -> [a] #

null :: Module t a -> Bool #

length :: Module t a -> Int #

elem :: Eq a => a -> Module t a -> Bool #

maximum :: Ord a => Module t a -> a #

minimum :: Ord a => Module t a -> a #

sum :: Num a => Module t a -> a #

product :: Num a => Module t a -> a #

Traversable (Module t) Source # 
Instance details

Defined in OldSyntax

Methods

traverse :: Applicative f => (a -> f b) -> Module t a -> f (Module t b) #

sequenceA :: Applicative f => Module t (f a) -> f (Module t a) #

mapM :: Monad m => (a -> m b) -> Module t a -> m (Module t b) #

sequence :: Monad m => Module t (m a) -> m (Module t a) #

(Eq t, Eq a) => Eq (Module t a) Source # 
Instance details

Defined in OldSyntax

Methods

(==) :: Module t a -> Module t a -> Bool #

(/=) :: Module t a -> Module t a -> Bool #

(Ord t, Ord a) => Ord (Module t a) Source # 
Instance details

Defined in OldSyntax

Methods

compare :: Module t a -> Module t a -> Ordering #

(<) :: Module t a -> Module t a -> Bool #

(<=) :: Module t a -> Module t a -> Bool #

(>) :: Module t a -> Module t a -> Bool #

(>=) :: Module t a -> Module t a -> Bool #

max :: Module t a -> Module t a -> Module t a #

min :: Module t a -> Module t a -> Module t a #

(Show t, Show a) => Show (Module t a) Source # 
Instance details

Defined in OldSyntax

Methods

showsPrec :: Int -> Module t a -> ShowS #

show :: Module t a -> String #

showList :: [Module t a] -> ShowS #

Pretty (Module String String) # 
Instance details

Defined in OldPretty

Pretty (Module Text Text) # 
Instance details

Defined in OldPretty

Methods

pretty :: Module Text Text -> Doc ann #

prettyList :: [Module Text Text] -> Doc ann #

NoPos (Module t a) Source # 
Instance details

Defined in OldNoPos

Methods

nopos :: Module t a -> Module t a Source #

Eq a => UnWrap (Module a a) Source # 
Instance details

Defined in OldWrap

Methods

unwrap :: Module a a -> Module a a Source #

Eq a => Wrap (Module a a) Source # 
Instance details

Defined in OldWrap

Methods

wrap :: Module a a -> Module a a Source #

PrettyCode (Module String String) Source # 
Instance details

Defined in OldPretty

PrettyCode (Module Text Text) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Module String String) Source # 
Instance details

Defined in OldPretty

PrettyAnn (Module Text Text) Source # 
Instance details

Defined in OldPretty

wheretok :: forall t a. Traversal' (Module t a) (Token WhereTy t) Source #

mtok :: forall t a. Traversal' (Module t a) (Token ModuleTokTy t) Source #

modnm :: forall t a. Traversal' (Module t a) (Nm t) Source #

mnm :: forall t a. Traversal' (Module t a) t Source #

leadingws :: forall t a. Traversal' (Module t a) (Ws t) Source #

imports :: forall t a. Lens' (Module t a) [ModuleImport t] Source #

decls :: forall t a a. Lens (Module t a) (Module t a) [Decl t a] [Decl t a] Source #

constrs :: forall t a. Lens' (Module t a) (ConstructorNames t) Source #

importnm :: forall t. Traversal' (ModuleImport t) (Nm t) Source #

class Eq3 g where Source #

Minimal complete definition

liftEq3

Methods

liftEq3 :: (a -> b -> Bool) -> (c -> d -> Bool) -> (e -> f -> Bool) -> g a c e -> g b d f -> Bool Source #

Instances
Eq3 (,,) Source # 
Instance details

Defined in OldSyntax

Methods

liftEq3 :: (a -> b -> Bool) -> (c -> d -> Bool) -> (e -> f -> Bool) -> (a, c, e) -> (b, d, f) -> Bool Source #

class Eq3 g => Ord3 g where Source #

Minimal complete definition

liftCompare3

Methods

liftCompare3 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> (e -> f -> Ordering) -> g a c e -> g b d f -> Ordering Source #

Instances
Ord3 (,,) Source # 
Instance details

Defined in OldSyntax

Methods

liftCompare3 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> (e -> f -> Ordering) -> (a, c, e) -> (b, d, f) -> Ordering Source #

class Show3 f where Source #

Minimal complete definition

liftShowsPrec3

Methods

liftShowsPrec3 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> (Int -> c -> ShowS) -> ([c] -> ShowS) -> Int -> f a b c -> ShowS Source #

liftShowList3 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> (Int -> c -> ShowS) -> ([c] -> ShowS) -> [f a b c] -> ShowS Source #

Instances
Show3 (,,) Source # 
Instance details

Defined in OldSyntax

Methods

liftShowsPrec3 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> (Int -> c -> ShowS) -> ([c] -> ShowS) -> Int -> (a, b, c) -> ShowS Source #

liftShowList3 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> (Int -> c -> ShowS) -> ([c] -> ShowS) -> [(a, b, c)] -> ShowS Source #

_InferredAnn_ :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a) Source #

_WitnessedAnn_ :: forall t a. Prism' (Expr t a) (Expr t a, Token ColonTy t, Expr t a) Source #

_Ann :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a) Source #

_Case_ :: forall t a. Prism' (Expr t a) (Token CaseTokTy t, Expr t a, Token OfTy t, Block Match t a, Annot t a) Source #

_Case :: forall t a. Prism' (Expr t a) (Expr t a, [Match t a], Annot t a) Source #

_Nat_ :: forall t a. Prism' (Expr t a) (Integer, t, Ws t) Source #

_Nat :: forall t a. Prism' (Expr t a) Integer Source #

_DCon_ :: forall t a. Prism' (Expr t a) (Nm t, [Arg t a], Annot t a) Source #

_DCon :: forall t a. Prism' (Expr t a) (t, [Arg t a], Annot t a) Source #

_TCon_ :: forall t a. Prism' (Expr t a) (Expr t a, [Expr t a]) Source #

_TCon :: forall t a. Prism' (Expr t a) (a, [Expr t a]) Source #

_Contra_ :: forall t a. Prism' (Expr t a) (Token ContraTokTy t, Expr t a, Annot t a) Source #

_Contra :: forall t a. Prism' (Expr t a) (Expr t a, Annot t a) Source #

_Subst_ :: forall t a. Prism' (Expr t a) (Token SubstTokTy t, Expr t a, Token ByTy t, Expr t a, Annot t a) Source #

_Subst :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a, Annot t a) Source #

_Refl_ :: forall t a. Prism' (Expr t a) (t, Ws t, Annot t a) Source #

_Refl :: forall t a. Prism' (Expr t a) (Annot t a) Source #

_TyEq_ :: forall t a. Prism' (Expr t a) (Expr t a, Token EqualTy t, Expr t a) Source #

_TyEq :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a) Source #

_Let_ :: forall t a. Prism' (Expr t a) (Token LetTokTy t, Pattern t, Token EqualTy t, Expr t a, Token InTy t, Scope () (Expr t) a) Source #

_Let :: forall t a. Prism' (Expr t a) (t, Expr t a, Scope () (Expr t) a) Source #

_Pcase :: forall t a. Prism' (Expr t a) (Expr t a, (t, t), Scope Int (Expr t) a, Annot t a) Source #

_Prod_ :: forall t a. Prism' (Expr t a) (Token ParenOpenTy t, Expr t a, Token CommaTy t, Expr t a, Token ParenCloseTy t, Annot t a) Source #

_Prod :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a, Annot t a) Source #

_Sigma_ :: forall t a. Prism' (Expr t a) (Token BraceOpenTy t, Pattern t, Token ColonTy t, Expr t a, Token VBarTy t, Scope () (Expr t) a, Token BraceCloseTy t) Source #

_Sigma :: forall t a. Prism' (Expr t a) (t, Expr t a, Scope () (Expr t) a) Source #

_If_ :: forall t a. Prism' (Expr t a) (Token IfTokTy t, Expr t a, Token ThenTokTy t, Expr t a, Token ElseTokTy t, Expr t a, Annot t a) Source #

_If :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a, Expr t a, Annot t a) Source #

_LitBool_ :: forall t a. Prism' (Expr t a) (Bool, t, Ws t) Source #

_LitBool :: forall t a. Prism' (Expr t a) Bool Source #

_TyBool_ :: forall t a. Prism' (Expr t a) (t, Ws t) Source #

_TyBool :: forall t a. Prism' (Expr t a) () Source #

_LitUnit_ :: forall t a. Prism' (Expr t a) (t, Ws t) Source #

_LitUnit :: forall t a. Prism' (Expr t a) () Source #

_TyUnit_ :: forall t a. Prism' (Expr t a) (t, Ws t) Source #

_TyUnit :: forall t a. Prism' (Expr t a) () Source #

_TrustMe_ :: forall t a. Prism' (Expr t a) (t, Ws t, Annot t a) Source #

_TrustMe :: forall t a. Prism' (Expr t a) (Annot t a) Source #

_Position :: forall t a. Prism' (Expr t a) (Delta, Expr t a) Source #

_PiP_ :: forall t a. Prism' (Expr t a) (Eps, Expr t a, Token ArrowTy t, Scope () (Expr t) a) Source #

_PiP :: forall t a. Prism' (Expr t a) (Eps, Pattern t, Expr t a, Scope () (Expr t) a) Source #

_Pi_ :: forall t a. Prism' (Expr t a) (Expr t a, Token ArrowTy t, Scope () (Expr t) a) Source #

_Pi :: forall t a. Prism' (Expr t a) (t, Expr t a, Scope () (Expr t) a) Source #

_LamPAs_ :: forall t a. Prism' (Expr t a) (Token LamTokTy t, [(Eps, Pattern t, Annot t a)], Token DotTy t, Scope Int (Expr t) a) Source #

_LamPAs :: forall t a. Prism' (Expr t a) ([(Eps, t, Annot t a)], Scope Int (Expr t) a) Source #

_LamPA :: forall t a. Prism' (Expr t a) ((Eps, t, Annot t a), Scope () (Expr t) a) Source #

_Lams_ :: forall t a. Prism' (Expr t a) (Token LamTokTy t, [Pattern t], Token DotTy t, Scope Int (Expr t) a) Source #

_Lams :: forall t a. Prism' (Expr t a) ([t], Scope Int (Expr t) a) Source #

_ErasedLam_ :: forall t a. Prism' (Expr t a) (Token LamTokTy t, Pattern t, Token DotTy t, Scope () (Expr t) a) Source #

_ErasedLam :: forall t a. Prism' (Expr t a) (t, Scope () (Expr t) a) Source #

_Lams' :: forall t a. Prism' (Expr t a) ([t], Scope (Name String Int) (Expr t) a) Source #

_Lam' :: forall t a. Prism' (Expr t a) (t, Scope (Name String ()) (Expr t) a) Source #

_Lam_ :: forall t a. Prism' (Expr t a) (Token LamTokTy t, Pattern t, Token DotTy t, Scope () (Expr t) a) Source #

_Lam :: forall t a. Prism' (Expr t a) (t, Annot t a, Scope () (Expr t) a) Source #

_ErasedApp :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a) Source #

(.:@) :: forall t a. Prism' (Expr t a) (Expr t a, Expr t a) Source #

_Type_ :: forall t a. Prism' (Expr t a) (t, Ws t) Source #

_Type :: forall t a. Prism' (Expr t a) () Source #

_Paren_ :: forall t a. Prism' (Expr t a) (Token ParenOpenTy t, Expr t a, Token ParenCloseTy t) Source #

_Paren :: forall t a. Prism' (Expr t a) (Expr t a) Source #

_BndV :: forall t a. Prism' (Expr t a) (t, Expr t a) Source #

_Ws_ :: forall t a. Prism' (Expr t a) (Expr t a, Ws t) Source #

_V :: forall t a. Prism' (Expr t a) a Source #

_Annot :: forall t a t a. Iso (Annot t a) (Annot t a) (Maybe (Expr t a)) (Maybe (Expr t a)) Source #

_Binder_ :: forall t. Prism' (Pattern t) (t, Ws t) Source #

_Binder :: forall t. Prism' (Pattern t) t Source #

_Witnessed :: forall t. Prism' (Pattern t) (Pattern t) Source #

_WildP :: forall t. Prism' (Pattern t) () Source #

_WildcardP :: forall t. Prism' (Pattern t) t Source #

_PatVar_ :: forall t. Prism' (Pattern t) (Nm t) Source #

_PatVar :: forall t. Prism' (Pattern t) t Source #

_PatCon_ :: forall t. Prism' (Pattern t) (Nm t, [(Eps, Pattern t)]) Source #

_PatCon :: forall t. Prism' (Pattern t) (t, [(Eps, Pattern t)]) Source #

_Data_ :: forall t a. Prism' (Decl t a) (Token DataTokTy t, Nm t, Telescope t a, Token ColonTy t, Expr t a, Token WhereTy t, Block ConstructorDef t a) Source #

_Data :: forall t a. Prism' (Decl t a) (t, Telescope t a, [ConstructorDef t a]) Source #

_RecDef_ :: forall t a. Prism' (Decl t a) (Nm t, Token EqualTy t, Expr t a) Source #

_RecDef :: forall t a. Prism' (Decl t a) (t, Expr t a) Source #

_Def_ :: forall t a. Prism' (Decl t a) (Nm t, Token EqualTy t, Expr t a) Source #

_Def :: forall t a. Prism' (Decl t a) (t, Expr t a) Source #

_Sig_ :: forall t a. Prism' (Decl t a) (Nm t, Token ColonTy t, Expr t a) Source #

_Sig :: forall t a. Prism' (Decl t a) (t, Expr t a) Source #

Orphan instances

(Eq a, Eq b) => Eq1 ((,,) a b) Source # 
Instance details

Methods

liftEq :: (a0 -> b0 -> Bool) -> (a, b, a0) -> (a, b, b0) -> Bool #

(Ord a, Ord b) => Ord1 ((,,) a b) Source # 
Instance details

Methods

liftCompare :: (a0 -> b0 -> Ordering) -> (a, b, a0) -> (a, b, b0) -> Ordering #

(Show a, Show b) => Show1 ((,,) a b) Source # 
Instance details

Methods

liftShowsPrec :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> Int -> (a, b, a0) -> ShowS #

liftShowList :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> [(a, b, a0)] -> ShowS #