Scroll to navigation

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:

visa denna hjälp och avsluta
visa versionsinformation och avsluta
Skriv katalogen som innehåller lokalberoende data och avsluta.
Skriv katalogen som innehåller skelett och XSLT och avsluta.
Applicera fixar på källgrammatikfilen och avsluta.
Aktivera diverse funktioner.

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

visa fel med cirkumflex
visa maskinläsbara fixar
generera inte någon fil
alla ovanstående
avaktivera alla ovanstående

Diagnostik:

Rapportera varningarna som faller inom KATEGORI.
Huruvida diagnostik skall färgläggas.
Ange CSS-FIL:en för färgläggning av diagnostik.

Varningskategorierna inkluderar:

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

NÄR kan vara en av följande:

färglägg utdata
färglägg inte utdata
färglägg utdata om enheten är en tty

Trimma parsern:

Ange programspråk för utmatning.
Ange skelettfilen som skall användas.
Instrumentera parsern för spårning samma som ”-Dparse.trace”.
Aktivera stöd för lägen.
Motsvarar ”%define NAMN VÄRDE”.
Åsidosätt ”%define NAMN VÄRDE”.
Lägg till PREFIX före externa symboler undanbedes till förmån för ”-Dapi.prefix={PREFIX}”.
Generera inte ”#line”-direktiv.
Inkludera en tabell över elementnamn.
Emulera POSIX yacc.

Utdatafiler:

Skapa också en huvudfil.
Likaledes, utan att kunna ange FIL (för POSIX-Yacc).
Skapa också detaljer om automaten.
Skriv en rapport till FIL.
Samma som --report=state.
Ange ett PREFIX för utdatafiler.
Lägg utdata i FIL.
Skapa också en graf av automaten.
Skapa också en XML-rapport om automaten.
i utmatningsfiler

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

beskriv tillstånden
komplettera kärnobjektmängderna med sina höljen
koppla uttryckligen framåtblickande element till objekt
beskriv lösning av skifta/reducerakonflikter
generera konfliktmotexempel
inkludera all ovanstående information
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/>

Rapportera anmärkningar på översättningen till <tp-sv@listor.tp-sv.se>.
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

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 <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.

januari 2021 GNU Bison 3.7.5