table of contents
BISON(1) | Användarkommandon | BISON(1) |
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 <bug-bison@gnu.org>. Skicka synpunkter
på översättningen till >tp-sv@listor.tp-sv.se<.
GNU Bison hemsida: <https://www.gnu.org/software/bison/>
Allmän hjälp med att använda GNU-program:
<https://www.gnu.org/gethelp/>.
För fullständig dokumentation, kör: info bison.
COPYRIGHT¶
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¶
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 <goeran@uddeborg.se>
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 Tp-sv@listor.tp-sv.se.
september 2021 | GNU Bison 3.8.2 |