BNFC3-3.0: A compiler front-end generator.
Safe HaskellNone
LanguageHaskell2010

BNFC.Abs

Description

The abstract syntax of language BNFC.

Synopsis

Documentation

data Grammar' a Source #

Constructors

Grammar a [Def' a] 

Instances

Instances details
Functor Grammar' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Grammar' a -> Grammar' b Source #

(<$) :: a -> Grammar' b -> Grammar' a Source #

Foldable Grammar' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Grammar' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Grammar' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Grammar' a -> m Source #

foldr :: (a -> b -> b) -> b -> Grammar' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Grammar' a -> b Source #

foldl :: (b -> a -> b) -> b -> Grammar' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Grammar' a -> b Source #

foldr1 :: (a -> a -> a) -> Grammar' a -> a Source #

foldl1 :: (a -> a -> a) -> Grammar' a -> a Source #

toList :: Grammar' a -> [a] Source #

null :: Grammar' a -> Bool Source #

length :: Grammar' a -> Int Source #

elem :: Eq a => a -> Grammar' a -> Bool Source #

maximum :: Ord a => Grammar' a -> a Source #

minimum :: Ord a => Grammar' a -> a Source #

sum :: Num a => Grammar' a -> a Source #

product :: Num a => Grammar' a -> a Source #

Traversable Grammar' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Grammar' a -> f (Grammar' b) Source #

sequenceA :: Applicative f => Grammar' (f a) -> f (Grammar' a) Source #

mapM :: Monad m => (a -> m b) -> Grammar' a -> m (Grammar' b) Source #

sequence :: Monad m => Grammar' (m a) -> m (Grammar' a) Source #

HasPosition Grammar Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Grammar' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Grammar' a -> Grammar' a -> Bool Source #

(/=) :: Grammar' a -> Grammar' a -> Bool Source #

Ord a => Ord (Grammar' a) Source # 
Instance details

Defined in BNFC.Abs

Read a => Read (Grammar' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Grammar' a) Source # 
Instance details

Defined in BNFC.Abs

Print (Grammar' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Grammar' a -> Doc Source #

data Def' a Source #

Instances

Instances details
Functor Def' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Def' a -> Def' b Source #

(<$) :: a -> Def' b -> Def' a Source #

Foldable Def' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Def' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Def' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Def' a -> m Source #

foldr :: (a -> b -> b) -> b -> Def' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Def' a -> b Source #

foldl :: (b -> a -> b) -> b -> Def' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Def' a -> b Source #

foldr1 :: (a -> a -> a) -> Def' a -> a Source #

foldl1 :: (a -> a -> a) -> Def' a -> a Source #

toList :: Def' a -> [a] Source #

null :: Def' a -> Bool Source #

length :: Def' a -> Int Source #

elem :: Eq a => a -> Def' a -> Bool Source #

maximum :: Ord a => Def' a -> a Source #

minimum :: Ord a => Def' a -> a Source #

sum :: Num a => Def' a -> a Source #

product :: Num a => Def' a -> a Source #

Traversable Def' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Def' a -> f (Def' b) Source #

sequenceA :: Applicative f => Def' (f a) -> f (Def' a) Source #

mapM :: Monad m => (a -> m b) -> Def' a -> m (Def' b) Source #

sequence :: Monad m => Def' (m a) -> m (Def' a) Source #

HasPosition Def Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Def' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Def' a -> Def' a -> Bool Source #

(/=) :: Def' a -> Def' a -> Bool Source #

Ord a => Ord (Def' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Def' a -> Def' a -> Ordering Source #

(<) :: Def' a -> Def' a -> Bool Source #

(<=) :: Def' a -> Def' a -> Bool Source #

(>) :: Def' a -> Def' a -> Bool Source #

(>=) :: Def' a -> Def' a -> Bool Source #

max :: Def' a -> Def' a -> Def' a Source #

min :: Def' a -> Def' a -> Def' a Source #

Read a => Read (Def' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Def' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

showsPrec :: Int -> Def' a -> ShowS Source #

show :: Def' a -> String Source #

showList :: [Def' a] -> ShowS Source #

Print [Def' a] Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> [Def' a] -> Doc Source #

Print (Def' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Def' a -> Doc Source #

data Item' a Source #

Constructors

Terminal a String 
NTerminal a (Cat' a) 

Instances

Instances details
Functor Item' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Item' a -> Item' b Source #

(<$) :: a -> Item' b -> Item' a Source #

Foldable Item' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Item' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Item' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Item' a -> m Source #

foldr :: (a -> b -> b) -> b -> Item' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Item' a -> b Source #

foldl :: (b -> a -> b) -> b -> Item' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Item' a -> b Source #

foldr1 :: (a -> a -> a) -> Item' a -> a Source #

foldl1 :: (a -> a -> a) -> Item' a -> a Source #

toList :: Item' a -> [a] Source #

null :: Item' a -> Bool Source #

length :: Item' a -> Int Source #

elem :: Eq a => a -> Item' a -> Bool Source #

maximum :: Ord a => Item' a -> a Source #

minimum :: Ord a => Item' a -> a Source #

sum :: Num a => Item' a -> a Source #

product :: Num a => Item' a -> a Source #

Traversable Item' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Item' a -> f (Item' b) Source #

sequenceA :: Applicative f => Item' (f a) -> f (Item' a) Source #

mapM :: Monad m => (a -> m b) -> Item' a -> m (Item' b) Source #

sequence :: Monad m => Item' (m a) -> m (Item' a) Source #

HasPosition Item Source # 
Instance details

Defined in BNFC.Abs

AddKeywords Item Source # 
Instance details

Defined in BNFC.Check.Pass1

Methods

addKeywords :: Item -> M () Source #

AddCategories Item Source # 
Instance details

Defined in BNFC.Check.Pass1

Eq a => Eq (Item' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Item' a -> Item' a -> Bool Source #

(/=) :: Item' a -> Item' a -> Bool Source #

Ord a => Ord (Item' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Item' a -> Item' a -> Ordering Source #

(<) :: Item' a -> Item' a -> Bool Source #

(<=) :: Item' a -> Item' a -> Bool Source #

(>) :: Item' a -> Item' a -> Bool Source #

(>=) :: Item' a -> Item' a -> Bool Source #

max :: Item' a -> Item' a -> Item' a Source #

min :: Item' a -> Item' a -> Item' a Source #

Read a => Read (Item' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Item' a) Source # 
Instance details

Defined in BNFC.Abs

Print [Item' a] Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> [Item' a] -> Doc Source #

Print (Item' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Item' a -> Doc Source #

data Cat' a Source #

Constructors

ListCat a (Cat' a) 
IdCat a Identifier 

Instances

Instances details
Functor Cat' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Cat' a -> Cat' b Source #

(<$) :: a -> Cat' b -> Cat' a Source #

Foldable Cat' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Cat' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Cat' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Cat' a -> m Source #

foldr :: (a -> b -> b) -> b -> Cat' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Cat' a -> b Source #

foldl :: (b -> a -> b) -> b -> Cat' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Cat' a -> b Source #

foldr1 :: (a -> a -> a) -> Cat' a -> a Source #

foldl1 :: (a -> a -> a) -> Cat' a -> a Source #

toList :: Cat' a -> [a] Source #

null :: Cat' a -> Bool Source #

length :: Cat' a -> Int Source #

elem :: Eq a => a -> Cat' a -> Bool Source #

maximum :: Ord a => Cat' a -> a Source #

minimum :: Ord a => Cat' a -> a Source #

sum :: Num a => Cat' a -> a Source #

product :: Num a => Cat' a -> a Source #

Traversable Cat' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Cat' a -> f (Cat' b) Source #

sequenceA :: Applicative f => Cat' (f a) -> f (Cat' a) Source #

mapM :: Monad m => (a -> m b) -> Cat' a -> m (Cat' b) Source #

sequence :: Monad m => Cat' (m a) -> m (Cat' a) Source #

HasPosition Cat Source # 
Instance details

Defined in BNFC.Abs

AddCategories Cat Source #

Also adds for each list category its element category, transitively.

Instance details

Defined in BNFC.Check.Pass1

Eq a => Eq (Cat' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Cat' a -> Cat' a -> Bool Source #

(/=) :: Cat' a -> Cat' a -> Bool Source #

Ord a => Ord (Cat' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Cat' a -> Cat' a -> Ordering Source #

(<) :: Cat' a -> Cat' a -> Bool Source #

(<=) :: Cat' a -> Cat' a -> Bool Source #

(>) :: Cat' a -> Cat' a -> Bool Source #

(>=) :: Cat' a -> Cat' a -> Bool Source #

max :: Cat' a -> Cat' a -> Cat' a Source #

min :: Cat' a -> Cat' a -> Cat' a Source #

Read a => Read (Cat' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Cat' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

showsPrec :: Int -> Cat' a -> ShowS Source #

show :: Cat' a -> String Source #

showList :: [Cat' a] -> ShowS Source #

Print [Cat' a] Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> [Cat' a] -> Doc Source #

Print (Cat' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Cat' a -> Doc Source #

data Label' a Source #

Constructors

Id a Identifier 
Wild a 
ListEmpty a 
ListCons a 
ListOne a 

Instances

Instances details
Functor Label' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Label' a -> Label' b Source #

(<$) :: a -> Label' b -> Label' a Source #

Foldable Label' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Label' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Label' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Label' a -> m Source #

foldr :: (a -> b -> b) -> b -> Label' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Label' a -> b Source #

foldl :: (b -> a -> b) -> b -> Label' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Label' a -> b Source #

foldr1 :: (a -> a -> a) -> Label' a -> a Source #

foldl1 :: (a -> a -> a) -> Label' a -> a Source #

toList :: Label' a -> [a] Source #

null :: Label' a -> Bool Source #

length :: Label' a -> Int Source #

elem :: Eq a => a -> Label' a -> Bool Source #

maximum :: Ord a => Label' a -> a Source #

minimum :: Ord a => Label' a -> a Source #

sum :: Num a => Label' a -> a Source #

product :: Num a => Label' a -> a Source #

Traversable Label' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Label' a -> f (Label' b) Source #

sequenceA :: Applicative f => Label' (f a) -> f (Label' a) Source #

mapM :: Monad m => (a -> m b) -> Label' a -> m (Label' b) Source #

sequence :: Monad m => Label' (m a) -> m (Label' a) Source #

HasPosition Label Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Label' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Label' a -> Label' a -> Bool Source #

(/=) :: Label' a -> Label' a -> Bool Source #

Ord a => Ord (Label' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Label' a -> Label' a -> Ordering Source #

(<) :: Label' a -> Label' a -> Bool Source #

(<=) :: Label' a -> Label' a -> Bool Source #

(>) :: Label' a -> Label' a -> Bool Source #

(>=) :: Label' a -> Label' a -> Bool Source #

max :: Label' a -> Label' a -> Label' a Source #

min :: Label' a -> Label' a -> Label' a Source #

Read a => Read (Label' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Label' a) Source # 
Instance details

Defined in BNFC.Abs

Print (Label' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Label' a -> Doc Source #

data Arg' a Source #

Constructors

Arg a Identifier 

Instances

Instances details
Functor Arg' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Arg' a -> Arg' b Source #

(<$) :: a -> Arg' b -> Arg' a Source #

Foldable Arg' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Arg' m -> m Source #

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

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

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

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

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

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

foldr1 :: (a -> a -> a) -> Arg' a -> a Source #

foldl1 :: (a -> a -> a) -> Arg' a -> a Source #

toList :: Arg' a -> [a] Source #

null :: Arg' a -> Bool Source #

length :: Arg' a -> Int Source #

elem :: Eq a => a -> Arg' a -> Bool Source #

maximum :: Ord a => Arg' a -> a Source #

minimum :: Ord a => Arg' a -> a Source #

sum :: Num a => Arg' a -> a Source #

product :: Num a => Arg' a -> a Source #

Traversable Arg' Source # 
Instance details

Defined in BNFC.Abs

Methods

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

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

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

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

HasPosition Arg Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Arg' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Arg' a -> Arg' a -> Bool Source #

(/=) :: Arg' a -> Arg' a -> Bool Source #

Ord a => Ord (Arg' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Arg' a -> Arg' a -> Ordering Source #

(<) :: Arg' a -> Arg' a -> Bool Source #

(<=) :: Arg' a -> Arg' a -> Bool Source #

(>) :: Arg' a -> Arg' a -> Bool Source #

(>=) :: Arg' a -> Arg' a -> Bool Source #

max :: Arg' a -> Arg' a -> Arg' a Source #

min :: Arg' a -> Arg' a -> Arg' a Source #

Read a => Read (Arg' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Arg' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

showsPrec :: Int -> Arg' a -> ShowS Source #

show :: Arg' a -> String Source #

showList :: [Arg' a] -> ShowS Source #

Print [Arg' a] Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> [Arg' a] -> Doc Source #

Print (Arg' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Arg' a -> Doc Source #

data Separation' a Source #

Constructors

SepNone a 
SepTerm a String 
SepSepar a String 

Instances

Instances details
Functor Separation' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Separation' a -> Separation' b Source #

(<$) :: a -> Separation' b -> Separation' a Source #

Foldable Separation' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Separation' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Separation' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Separation' a -> m Source #

foldr :: (a -> b -> b) -> b -> Separation' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Separation' a -> b Source #

foldl :: (b -> a -> b) -> b -> Separation' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Separation' a -> b Source #

foldr1 :: (a -> a -> a) -> Separation' a -> a Source #

foldl1 :: (a -> a -> a) -> Separation' a -> a Source #

toList :: Separation' a -> [a] Source #

null :: Separation' a -> Bool Source #

length :: Separation' a -> Int Source #

elem :: Eq a => a -> Separation' a -> Bool Source #

maximum :: Ord a => Separation' a -> a Source #

minimum :: Ord a => Separation' a -> a Source #

sum :: Num a => Separation' a -> a Source #

product :: Num a => Separation' a -> a Source #

Traversable Separation' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Separation' a -> f (Separation' b) Source #

sequenceA :: Applicative f => Separation' (f a) -> f (Separation' a) Source #

mapM :: Monad m => (a -> m b) -> Separation' a -> m (Separation' b) Source #

sequence :: Monad m => Separation' (m a) -> m (Separation' a) Source #

HasPosition Separation Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Separation' a) Source # 
Instance details

Defined in BNFC.Abs

Ord a => Ord (Separation' a) Source # 
Instance details

Defined in BNFC.Abs

Read a => Read (Separation' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Separation' a) Source # 
Instance details

Defined in BNFC.Abs

Print (Separation' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Separation' a -> Doc Source #

data Exp' a Source #

Instances

Instances details
Functor Exp' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Exp' a -> Exp' b Source #

(<$) :: a -> Exp' b -> Exp' a Source #

Foldable Exp' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Exp' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Exp' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Exp' a -> m Source #

foldr :: (a -> b -> b) -> b -> Exp' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Exp' a -> b Source #

foldl :: (b -> a -> b) -> b -> Exp' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Exp' a -> b Source #

foldr1 :: (a -> a -> a) -> Exp' a -> a Source #

foldl1 :: (a -> a -> a) -> Exp' a -> a Source #

toList :: Exp' a -> [a] Source #

null :: Exp' a -> Bool Source #

length :: Exp' a -> Int Source #

elem :: Eq a => a -> Exp' a -> Bool Source #

maximum :: Ord a => Exp' a -> a Source #

minimum :: Ord a => Exp' a -> a Source #

sum :: Num a => Exp' a -> a Source #

product :: Num a => Exp' a -> a Source #

Traversable Exp' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Exp' a -> f (Exp' b) Source #

sequenceA :: Applicative f => Exp' (f a) -> f (Exp' a) Source #

mapM :: Monad m => (a -> m b) -> Exp' a -> m (Exp' b) Source #

sequence :: Monad m => Exp' (m a) -> m (Exp' a) Source #

HasPosition Exp Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Exp' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Exp' a -> Exp' a -> Bool Source #

(/=) :: Exp' a -> Exp' a -> Bool Source #

Ord a => Ord (Exp' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Exp' a -> Exp' a -> Ordering Source #

(<) :: Exp' a -> Exp' a -> Bool Source #

(<=) :: Exp' a -> Exp' a -> Bool Source #

(>) :: Exp' a -> Exp' a -> Bool Source #

(>=) :: Exp' a -> Exp' a -> Bool Source #

max :: Exp' a -> Exp' a -> Exp' a Source #

min :: Exp' a -> Exp' a -> Exp' a Source #

Read a => Read (Exp' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Exp' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

showsPrec :: Int -> Exp' a -> ShowS Source #

show :: Exp' a -> String Source #

showList :: [Exp' a] -> ShowS Source #

Print [Exp' a] Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> [Exp' a] -> Doc Source #

Print (Exp' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Exp' a -> Doc Source #

data RHS' a Source #

Constructors

RHS a [Item' a] 

Instances

Instances details
Functor RHS' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> RHS' a -> RHS' b Source #

(<$) :: a -> RHS' b -> RHS' a Source #

Foldable RHS' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => RHS' m -> m Source #

foldMap :: Monoid m => (a -> m) -> RHS' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> RHS' a -> m Source #

foldr :: (a -> b -> b) -> b -> RHS' a -> b Source #

foldr' :: (a -> b -> b) -> b -> RHS' a -> b Source #

foldl :: (b -> a -> b) -> b -> RHS' a -> b Source #

foldl' :: (b -> a -> b) -> b -> RHS' a -> b Source #

foldr1 :: (a -> a -> a) -> RHS' a -> a Source #

foldl1 :: (a -> a -> a) -> RHS' a -> a Source #

toList :: RHS' a -> [a] Source #

null :: RHS' a -> Bool Source #

length :: RHS' a -> Int Source #

elem :: Eq a => a -> RHS' a -> Bool Source #

maximum :: Ord a => RHS' a -> a Source #

minimum :: Ord a => RHS' a -> a Source #

sum :: Num a => RHS' a -> a Source #

product :: Num a => RHS' a -> a Source #

Traversable RHS' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> RHS' a -> f (RHS' b) Source #

sequenceA :: Applicative f => RHS' (f a) -> f (RHS' a) Source #

mapM :: Monad m => (a -> m b) -> RHS' a -> m (RHS' b) Source #

sequence :: Monad m => RHS' (m a) -> m (RHS' a) Source #

HasPosition RHS Source # 
Instance details

Defined in BNFC.Abs

AddKeywords RHS Source # 
Instance details

Defined in BNFC.Check.Pass1

Methods

addKeywords :: RHS -> M () Source #

AddCategories RHS Source # 
Instance details

Defined in BNFC.Check.Pass1

Eq a => Eq (RHS' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: RHS' a -> RHS' a -> Bool Source #

(/=) :: RHS' a -> RHS' a -> Bool Source #

Ord a => Ord (RHS' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: RHS' a -> RHS' a -> Ordering Source #

(<) :: RHS' a -> RHS' a -> Bool Source #

(<=) :: RHS' a -> RHS' a -> Bool Source #

(>) :: RHS' a -> RHS' a -> Bool Source #

(>=) :: RHS' a -> RHS' a -> Bool Source #

max :: RHS' a -> RHS' a -> RHS' a Source #

min :: RHS' a -> RHS' a -> RHS' a Source #

Read a => Read (RHS' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (RHS' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

showsPrec :: Int -> RHS' a -> ShowS Source #

show :: RHS' a -> String Source #

showList :: [RHS' a] -> ShowS Source #

Print [RHS' a] Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> [RHS' a] -> Doc Source #

Print (RHS' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> RHS' a -> Doc Source #

data MinimumSize' a Source #

Constructors

MNonEmpty a 
MEmpty a 

Instances

Instances details
Functor MinimumSize' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> MinimumSize' a -> MinimumSize' b Source #

(<$) :: a -> MinimumSize' b -> MinimumSize' a Source #

Foldable MinimumSize' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => MinimumSize' m -> m Source #

foldMap :: Monoid m => (a -> m) -> MinimumSize' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> MinimumSize' a -> m Source #

foldr :: (a -> b -> b) -> b -> MinimumSize' a -> b Source #

foldr' :: (a -> b -> b) -> b -> MinimumSize' a -> b Source #

foldl :: (b -> a -> b) -> b -> MinimumSize' a -> b Source #

foldl' :: (b -> a -> b) -> b -> MinimumSize' a -> b Source #

foldr1 :: (a -> a -> a) -> MinimumSize' a -> a Source #

foldl1 :: (a -> a -> a) -> MinimumSize' a -> a Source #

toList :: MinimumSize' a -> [a] Source #

null :: MinimumSize' a -> Bool Source #

length :: MinimumSize' a -> Int Source #

elem :: Eq a => a -> MinimumSize' a -> Bool Source #

maximum :: Ord a => MinimumSize' a -> a Source #

minimum :: Ord a => MinimumSize' a -> a Source #

sum :: Num a => MinimumSize' a -> a Source #

product :: Num a => MinimumSize' a -> a Source #

Traversable MinimumSize' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> MinimumSize' a -> f (MinimumSize' b) Source #

sequenceA :: Applicative f => MinimumSize' (f a) -> f (MinimumSize' a) Source #

mapM :: Monad m => (a -> m b) -> MinimumSize' a -> m (MinimumSize' b) Source #

sequence :: Monad m => MinimumSize' (m a) -> m (MinimumSize' a) Source #

HasPosition MinimumSize Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (MinimumSize' a) Source # 
Instance details

Defined in BNFC.Abs

Ord a => Ord (MinimumSize' a) Source # 
Instance details

Defined in BNFC.Abs

Read a => Read (MinimumSize' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (MinimumSize' a) Source # 
Instance details

Defined in BNFC.Abs

Print (MinimumSize' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> MinimumSize' a -> Doc Source #

data Reg' a Source #

Constructors

RAlt a (Reg' a) (Reg' a) 
RMinus a (Reg' a) (Reg' a) 
RSeq a (Reg' a) (Reg' a) 
RStar a (Reg' a) 
RPlus a (Reg' a) 
ROpt a (Reg' a) 
REps a 
RChar a Char 
RAlts a String 
RSeqs a String 
RDigit a 
RLetter a 
RUpper a 
RLower a 
RAny a 

Instances

Instances details
Functor Reg' Source # 
Instance details

Defined in BNFC.Abs

Methods

fmap :: (a -> b) -> Reg' a -> Reg' b Source #

(<$) :: a -> Reg' b -> Reg' a Source #

Foldable Reg' Source # 
Instance details

Defined in BNFC.Abs

Methods

fold :: Monoid m => Reg' m -> m Source #

foldMap :: Monoid m => (a -> m) -> Reg' a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Reg' a -> m Source #

foldr :: (a -> b -> b) -> b -> Reg' a -> b Source #

foldr' :: (a -> b -> b) -> b -> Reg' a -> b Source #

foldl :: (b -> a -> b) -> b -> Reg' a -> b Source #

foldl' :: (b -> a -> b) -> b -> Reg' a -> b Source #

foldr1 :: (a -> a -> a) -> Reg' a -> a Source #

foldl1 :: (a -> a -> a) -> Reg' a -> a Source #

toList :: Reg' a -> [a] Source #

null :: Reg' a -> Bool Source #

length :: Reg' a -> Int Source #

elem :: Eq a => a -> Reg' a -> Bool Source #

maximum :: Ord a => Reg' a -> a Source #

minimum :: Ord a => Reg' a -> a Source #

sum :: Num a => Reg' a -> a Source #

product :: Num a => Reg' a -> a Source #

Traversable Reg' Source # 
Instance details

Defined in BNFC.Abs

Methods

traverse :: Applicative f => (a -> f b) -> Reg' a -> f (Reg' b) Source #

sequenceA :: Applicative f => Reg' (f a) -> f (Reg' a) Source #

mapM :: Monad m => (a -> m b) -> Reg' a -> m (Reg' b) Source #

sequence :: Monad m => Reg' (m a) -> m (Reg' a) Source #

HasPosition Reg Source # 
Instance details

Defined in BNFC.Abs

Eq a => Eq (Reg' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

(==) :: Reg' a -> Reg' a -> Bool Source #

(/=) :: Reg' a -> Reg' a -> Bool Source #

Ord a => Ord (Reg' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

compare :: Reg' a -> Reg' a -> Ordering Source #

(<) :: Reg' a -> Reg' a -> Bool Source #

(<=) :: Reg' a -> Reg' a -> Bool Source #

(>) :: Reg' a -> Reg' a -> Bool Source #

(>=) :: Reg' a -> Reg' a -> Bool Source #

max :: Reg' a -> Reg' a -> Reg' a Source #

min :: Reg' a -> Reg' a -> Reg' a Source #

Read a => Read (Reg' a) Source # 
Instance details

Defined in BNFC.Abs

Show a => Show (Reg' a) Source # 
Instance details

Defined in BNFC.Abs

Methods

showsPrec :: Int -> Reg' a -> ShowS Source #

show :: Reg' a -> String Source #

showList :: [Reg' a] -> ShowS Source #

Print (Reg' a) Source # 
Instance details

Defined in BNFC.Print

Methods

prt :: Int -> Reg' a -> Doc Source #

type BNFC'Position = Maybe (Int, Int) Source #

Start position (line, column) of something.

class HasPosition a where Source #

Get the start position of something.

Instances

Instances details
HasPosition Identifier Source # 
Instance details

Defined in BNFC.Abs

HasPosition Reg Source # 
Instance details

Defined in BNFC.Abs

HasPosition MinimumSize Source # 
Instance details

Defined in BNFC.Abs

HasPosition RHS Source # 
Instance details

Defined in BNFC.Abs

HasPosition Exp Source # 
Instance details

Defined in BNFC.Abs

HasPosition Separation Source # 
Instance details

Defined in BNFC.Abs

HasPosition Arg Source # 
Instance details

Defined in BNFC.Abs

HasPosition Label Source # 
Instance details

Defined in BNFC.Abs

HasPosition Cat Source # 
Instance details

Defined in BNFC.Abs

HasPosition Item Source # 
Instance details

Defined in BNFC.Abs

HasPosition Def Source # 
Instance details

Defined in BNFC.Abs

HasPosition Grammar Source # 
Instance details

Defined in BNFC.Abs