NAMN

bison — GNU-projektets parsergenerator (ersättare för yacc)

SYNOPSIS

bison [FLAGGA]... FIL

BESKRIVNING

Bison är en parsergenerator i samma stil so yacc(1). Den skall vara uppåtkompatibel med indatafiler gjorda för yacc.
Indatafiler skall följa konventionen hos yacc att sluta på .y. Till skillnad mot yacc har inte de genererade filerna fasta namn, utan använder istället prefixet från indatafilen. Dessutom, om man behöver skriva C++-kod i indatafilen kan man avsluta namnet med en C++-liknande utökning (.ypp eller .y++), då kommer bison följa utökningen och namnge utdatafilen (.cpp eller .c++). Till exempel, en grammatikbeskrivningsfil med namnet parsa.yxx skulle producera den genererade parsern i en fil med namnet parsa.tab.cxx, istället för yaccs y.tab.c eller äldre Bisonversioners parsa.tab.c.
Denna beskrivning av flaggorna som kan ges till bison är tagen från noden Invocation i manualen bison.texi, vilken skall ses som originalet.
Bison stödjer både traditionella enbokstavsflaggor och mnemotekniska långa flaggnamn. Långa flaggnamn anges med -- istället för -. Förkortningar för flaggnamn tillåts så länge de är unika. När ett långt flaggnamn tar ett argument, som --file-prefix, koppla då ihop flaggnamnet med argumentet med =.
Generera en deterministisk LR- eller generaliserad LR- (GLR-)parser som använder LALR(1), IELR(1) eller kanonisk LR(1) parsningstabeller.
Obligatoriska argument till långa flaggor är obligatoriska även för de korta. Motsvarande är sant för valfria argument.

Arbetslägen:

-h, --help
visa denna hjälp och avsluta
-V, --version
visa versionsinformation och avsluta
--print-localedir
Skriv katalogen som innehåller lokalberoende data och avsluta.
--print-datadir
Skriv katalogen som innehåller skelett och XSLT och avsluta.
-u, --update
Applicera fixar på källgrammatikfilen och avsluta.
-f, --feature[=FUNKTIONER]
Aktivera diverse funktioner.

FUNKTIONER är en lista av kommaseparerade ord som kan inkludera:

caret, diagnostics-show-caret
visa fel med cirkumflex
fixit, diagnostics-parseable-fixits
visa maskinläsbara fixar
syntax-only
generera inte någon fil
all
alla ovanstående
none
avaktivera alla ovanstående

Diagnostik:

-W, --warnings[=KATEGORI]
Rapportera varningarna som faller inom KATEGORI.
--color[=NÄR]
Huruvida diagnostik skall färgläggas.
--style=FIL
Ange CSS-FIL:en för färgläggning av diagnostik.

Varningskategorierna inkluderar:

conflicts-sr
S/R-konflikter (aktiverat som standard)
conflicts-rr
R/R-konflikter (aktiverat som standard)
counterexamples, cex
generera konfliktmotexempel
dangling-alias
strängalias som inte är fästa vid en symbol
deprecated
föråldrade konstruktioner
empty-rule
tomma regler utan %empty
midrule-values
ej satta eller oanvända mittregelvärden
precedence
oanvändbar precedens och associativitet
yacc
inkompatibiliteter med POSIX Yacc
övrigt
alla andra varningar (aktiverat som standard)
all
alla varningarna utom ”counterexamples”, ”dangling-alias” och ”yacc”
no-KATEGORI
slå av varningar i KATEGORI
none
slå av alla varningarna
error[=KATEGORI]
behandla varningar som fel

NÄR kan vara en av följande:

always, yes
färglägg utdata
never, no
färglägg inte utdata
auto, tty
färglägg utdata om enheten är en tty

Trimma parsern:

-L, --language=SPRÅK
Ange programspråk för utmatning.
-S, --skeleton=FIL
Ange skelettfilen som skall användas.
-t, --debug
Instrumentera parsern för spårning samma som ”-Dparse.trace”.
--locations
Aktivera stöd för lägen.
-D, --define=NAMN[=VÄRDE]
Motsvarar ”%define NAMN VÄRDE”.
-F, --force-define=NAMN[=VÄRDE]
Åsidosätt ”%define NAMN VÄRDE”.
-p, --name-prefix=PREFIX
Lägg till PREFIX före externa symboler undanbedes till förmån för ”-Dapi.prefix={PREFIX}”.
-l, --no-lines
Generera inte ”#line”-direktiv.
-k, --token-table
Inkludera en tabell över elementnamn.
-y, --yacc
Emulera POSIX yacc.

Utdatafiler:

-H, --header=[FIL]
Skapa också en huvudfil.
-d
Likaledes, utan att kunna ange FIL (för POSIX-Yacc).
-r, --report=SAKER
Skapa också detaljer om automaten.
--report-file=FIL
Skriv en rapport till FIL.
-v, --verbose
Samma som --report=state.
-b, --file-prefix=PREFIX
Ange ett PREFIX för utdatafiler.
-o, --output=FIL
Lägg utdata i FIL.
-g, --graph[=FIL]
Skapa också en graf av automaten.
--html[=FIL]
Skapa också en HTML-rapport om automaten.
-x, --xml[=FIL]
Skapa också en XML-rapport om automaten.
-M, --file-prefix-map=GAMMALT=NYTT Ersätt prefixet GAMMALT med NYTT när filsökvägar skrivs
i utmatningsfiler

SAKER är en lista med kommaseparerade ord som kan innehålla:

states
beskriv tillstånden
itemsets
komplettera kärnobjektmängderna med sina höljen
lookaheads
koppla uttryckligen framåtblickande element till objekt
solved
beskriv lösning av skifta/reducerakonflikter
counterexamples, cex
generera konfliktmotexempel
all
inkludera all ovanstående information
none
avaktivera rapporten

UPPHOVSMAN

Skriven av Robert Corbett och Richard Stallman.

RAPPORTERA FEL

Rapportera fel till <[email protected]>. Skicka synpunkter på översättningen till >[email protected]<.
 
GNU Bison hemsida: <https://www.gnu.org/software/bison/>
 
Allmän hjälp med att använda GNU-program: <https://www.gnu.org/gethelp/>.
Rapportera anmärkningar på översättningen till <[email protected]>.
 
För fullständig dokumentation, kör: info bison. Copyright © 2021 Free Software Foundation, Inc.
 
Detta är fri programvara; se källkoden för kopieringsvillkor. Det finns INGEN garanti; inte ens för SÄLJBARHET eller LÄMPLIGHET FÖR NÅGOT SPECIELLT ÄNDAMÅL.

SE ÄVEN

lex(1), flex(1), yacc(1).
Den fullständiga dokumentationen för bison underhålls som en Texinfo-manual. Om programmen info och bison är ordentligt installerade på ditt system, bör kommandot
info bison
ge dig tillgång till den kompletta manualen.

ÖVERSÄTTNING

Den svenska översättningen av denna manualsida skapades av Göran Uddeborg <[email protected]>
Denna översättning är fri dokumentation; läs GNU General Public License Version 3 eller senare för upphovsrättsvillkor. Vi tar INGET ANSVAR.
Om du hittar fel i översättningen av denna manualsida, skicka ett mail till [email protected]

Recommended readings

Pages related to bison you should read also: