symantic-grammar-0.3.1.20180831: Library for symantic grammars.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Grammar.Terminal

Contents

Description

Symantics for terminal grammars.

Synopsis

Type Terminal

newtype Terminal g a Source #

Terminal grammar.

Constructors

Terminal 

Fields

Instances
ContextFreeOf Terminal Source # 
Instance details

Defined in Language.Symantic.Grammar.ContextFree

Methods

cfOf :: Terminal g a -> CF g a Source #

Functor g => Functor (Terminal g) Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Methods

fmap :: (a -> b) -> Terminal g a -> Terminal g b #

(<$) :: a -> Terminal g b -> Terminal g a #

Gram_Rule g => Gram_Rule (Terminal g) Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Methods

rule :: Text -> Rule (Terminal g a) Source #

rule1 :: Text -> Rule (Terminal g a -> Terminal g b) Source #

rule2 :: Text -> Rule (Terminal g a -> Terminal g b -> Terminal g c) Source #

rule3 :: Text -> Rule (Terminal g a -> Terminal g b -> Terminal g c -> Terminal g d) Source #

rule4 :: Text -> Rule (Terminal g a -> Terminal g b -> Terminal g c -> Terminal g d -> Terminal g e) Source #

Gram_String g => Gram_String (Terminal g) Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Gram_Char g => Gram_Char (Terminal g) Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Gram_Alt p => Gram_Alt (Terminal p) Source # 
Instance details

Defined in Language.Symantic.Grammar.Regular

Methods

empty :: Terminal p a Source #

(<+>) :: Terminal p a -> Terminal p a -> Terminal p a Source #

choice :: [Terminal p a] -> Terminal p a Source #

Class Gram_Char

class Gram_Rule g => Gram_Char g where Source #

Symantics for terminal grammars.

Minimal complete definition

any, but, eoi, char, unicat, range

Instances
Gram_Char RuleEBNF Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Gram_Char EBNF Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Gram_Char g => Gram_Char (Terminal g) Source # 
Instance details

Defined in Language.Symantic.Grammar.Terminal

Gram_Char g => Gram_Char (CF g) Source # 
Instance details

Defined in Language.Symantic.Grammar.ContextFree

Gram_Char g => Gram_Char (Reg lr g) Source # 
Instance details

Defined in Language.Symantic.Grammar.Regular

Methods

any :: Reg lr g Char Source #

but :: Terminal (Reg lr g) Char -> Terminal (Reg lr g) Char -> Terminal (Reg lr g) Char Source #

eoi :: Reg lr g () Source #

eol :: Reg lr g Char Source #

space :: Reg lr g Char Source #

char :: Char -> Reg lr g Char Source #

unicat :: Unicat -> Reg lr g Char Source #

range :: (Char, Char) -> Reg lr g Char Source #

Type Unicat

Class Gram_String

Orphan instances

IsString (EBNF String) Source # 
Instance details