BNFC-2.9.6.2: A compiler front-end generator.
Safe HaskellSafe-Inferred
LanguageHaskell2010

BNFC.Options

Synopsis

Documentation

data Mode Source #

To decouple the option parsing from the execution of the program, we introduce a data structure that holds the result of the parsing of the arguments.

Constructors

UsageError String 
Help 
License 
Version 
Target SharedOptions FilePath 

Instances

Instances details
Show Mode Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> Mode -> ShowS

show :: Mode -> String

showList :: [Mode] -> ShowS

Eq Mode Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: Mode -> Mode -> Bool

(/=) :: Mode -> Mode -> Bool

Ord Mode Source # 
Instance details

Defined in BNFC.Options

Methods

compare :: Mode -> Mode -> Ordering

(<) :: Mode -> Mode -> Bool

(<=) :: Mode -> Mode -> Bool

(>) :: Mode -> Mode -> Bool

(>=) :: Mode -> Mode -> Bool

max :: Mode -> Mode -> Mode

min :: Mode -> Mode -> Mode

data Target Source #

Target languages

Instances

Instances details
Bounded Target Source # 
Instance details

Defined in BNFC.Options

Enum Target Source # 
Instance details

Defined in BNFC.Options

Show Target Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> Target -> ShowS

show :: Target -> String

showList :: [Target] -> ShowS

Eq Target Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: Target -> Target -> Bool

(/=) :: Target -> Target -> Bool

Ord Target Source # 
Instance details

Defined in BNFC.Options

Methods

compare :: Target -> Target -> Ordering

(<) :: Target -> Target -> Bool

(<=) :: Target -> Target -> Bool

(>) :: Target -> Target -> Bool

(>=) :: Target -> Target -> Bool

max :: Target -> Target -> Target

min :: Target -> Target -> Target

type Backend Source #

Arguments

 = SharedOptions

Options

-> CF

Grammar

-> IO () 

parseMode :: [String] -> (Mode, UsageWarnings) Source #

Main parsing function

usage :: String Source #

help :: String Source #

data SharedOptions Source #

This is the option record that is passed to the different backends.

Constructors

Options 

Fields

Instances

Instances details
OCamlParserName SharedOptions Source # 
Instance details

Defined in BNFC.Backend.OCaml.OCamlUtil

Show SharedOptions Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> SharedOptions -> ShowS

show :: SharedOptions -> String

showList :: [SharedOptions] -> ShowS

Eq SharedOptions Source # 
Instance details

Defined in BNFC.Options

Ord SharedOptions Source # 
Instance details

Defined in BNFC.Options

isDefault Source #

Arguments

:: Eq a 
=> (SharedOptions -> a)

Option field name.

-> SharedOptions

Options.

-> Bool 

Check whether an option is unchanged from the default.

printOptions :: SharedOptions -> String Source #

Print options as input to BNFC.

unwords [ "bnfc", printOptions opts ] should call bnfc with the same options as the current instance.

data AlexVersion Source #

Which version of Alex is targeted?

Constructors

Alex3 

Instances

Instances details
Bounded AlexVersion Source # 
Instance details

Defined in BNFC.Options

Enum AlexVersion Source # 
Instance details

Defined in BNFC.Options

Show AlexVersion Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> AlexVersion -> ShowS

show :: AlexVersion -> String

showList :: [AlexVersion] -> ShowS

Eq AlexVersion Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: AlexVersion -> AlexVersion -> Bool

(/=) :: AlexVersion -> AlexVersion -> Bool

Ord AlexVersion Source # 
Instance details

Defined in BNFC.Options

data HappyMode Source #

Happy modes

Constructors

Standard 
GLR 

Instances

Instances details
Bounded HappyMode Source # 
Instance details

Defined in BNFC.Options

Enum HappyMode Source # 
Instance details

Defined in BNFC.Options

Show HappyMode Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> HappyMode -> ShowS

show :: HappyMode -> String

showList :: [HappyMode] -> ShowS

Eq HappyMode Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: HappyMode -> HappyMode -> Bool

(/=) :: HappyMode -> HappyMode -> Bool

Ord HappyMode Source # 
Instance details

Defined in BNFC.Options

Methods

compare :: HappyMode -> HappyMode -> Ordering

(<) :: HappyMode -> HappyMode -> Bool

(<=) :: HappyMode -> HappyMode -> Bool

(>) :: HappyMode -> HappyMode -> Bool

(>=) :: HappyMode -> HappyMode -> Bool

max :: HappyMode -> HappyMode -> HappyMode

min :: HappyMode -> HappyMode -> HappyMode

data OCamlParser Source #

Which parser generator for ocaml?

Constructors

OCamlYacc 
Menhir 

Instances

Instances details
OCamlParserName OCamlParser Source # 
Instance details

Defined in BNFC.Backend.OCaml.OCamlUtil

Methods

ocamlParserName :: OCamlParser -> String Source #

Show OCamlParser Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> OCamlParser -> ShowS

show :: OCamlParser -> String

showList :: [OCamlParser] -> ShowS

Eq OCamlParser Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: OCamlParser -> OCamlParser -> Bool

(/=) :: OCamlParser -> OCamlParser -> Bool

Ord OCamlParser Source # 
Instance details

Defined in BNFC.Options

data JavaLexerParser Source #

Which Java backend?

Constructors

JLexCup 
JFlexCup 
Antlr4 

Instances

Instances details
Show JavaLexerParser Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> JavaLexerParser -> ShowS

show :: JavaLexerParser -> String

showList :: [JavaLexerParser] -> ShowS

Eq JavaLexerParser Source # 
Instance details

Defined in BNFC.Options

Ord JavaLexerParser Source # 
Instance details

Defined in BNFC.Options

data RecordPositions Source #

Line numbers or not?

Instances

Instances details
Show RecordPositions Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> RecordPositions -> ShowS

show :: RecordPositions -> String

showList :: [RecordPositions] -> ShowS

Eq RecordPositions Source # 
Instance details

Defined in BNFC.Options

Ord RecordPositions Source # 
Instance details

Defined in BNFC.Options

data TokenText Source #

How to represent token content in the Haskell backend?

Constructors

StringToken

Represent strings as String.

ByteStringToken

Represent strings as ByteString.

TextToken

Represent strings as Data.Text.

Instances

Instances details
Show TokenText Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> TokenText -> ShowS

show :: TokenText -> String

showList :: [TokenText] -> ShowS

Eq TokenText Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: TokenText -> TokenText -> Bool

(/=) :: TokenText -> TokenText -> Bool

Ord TokenText Source # 
Instance details

Defined in BNFC.Options

Methods

compare :: TokenText -> TokenText -> Ordering

(<) :: TokenText -> TokenText -> Bool

(<=) :: TokenText -> TokenText -> Bool

(>) :: TokenText -> TokenText -> Bool

(>=) :: TokenText -> TokenText -> Bool

max :: TokenText -> TokenText -> TokenText

min :: TokenText -> TokenText -> TokenText

data Ansi Source #

Restrict to ANSI standard (C/C++)?

Constructors

Ansi 
BeyondAnsi 

Instances

Instances details
Show Ansi Source # 
Instance details

Defined in BNFC.Options

Methods

showsPrec :: Int -> Ansi -> ShowS

show :: Ansi -> String

showList :: [Ansi] -> ShowS

Eq Ansi Source # 
Instance details

Defined in BNFC.Options

Methods

(==) :: Ansi -> Ansi -> Bool

(/=) :: Ansi -> Ansi -> Bool

Ord Ansi Source # 
Instance details

Defined in BNFC.Options

Methods

compare :: Ansi -> Ansi -> Ordering

(<) :: Ansi -> Ansi -> Bool

(<=) :: Ansi -> Ansi -> Bool

(>) :: Ansi -> Ansi -> Bool

(>=) :: Ansi -> Ansi -> Bool

max :: Ansi -> Ansi -> Ansi

min :: Ansi -> Ansi -> Ansi

type InPackage = Maybe String Source #

Package name (C++ and Java backends).

translateOldOptions :: [String] -> ParseOpt [String] Source #

A translation function to maintain backward compatibility with the old option syntax.