Flexc ++ er en leksikalsk skanner generator for C ++ og er svært lik flex og bøy ++ skrevet av Vern Paxson. Målet var å skape et lignende program, men å fullstendig implementere det i C ++. Mest flex / flex ++ grammatikker bør være brukbart med flexc ++, med mindre justeringer.
Forskjeller med flex / flex ++
Selv flexc ++ prøver å være så mye kompatibel med flex som mulig, er det noen forskjeller.
-Obsolete Symboler
Alle erklæringer og definere symboler som ikke er nevnt ovenfor, men definert i flex ++ er foreldet med flexc ++. Spesielt er det ingen% header {...%} avsnitt lenger. Også alle DEFINE symboler knyttet til medlemsfunksjoner er nå foreldet. Det er ikke behov for disse symbolene lenger som de kan rett og slett bli erklært i klassen header fil og definert et annet sted.
Koden punkt blokker
Flexc ++ støtter ikke kodeblokker, med unntak av flere linjer handlinger. Kode tidligere plassert i kodeblokker kan nå plasseres i fremgangsmåter.
-Bruker Kode
Relatert til forrige avsnitt 2.2, betyr flexc ++ støtter ikke en siste delen av input filen for brukerkode.
-Comments
Flexc ++ er litt mer fleksibel i å ta kommentarer, for mer informasjon se punkt 4.3
Hva er nytt i denne utgaven:
- opprydding av debug beskjeder i lex.cc
- Sjekk om å akseptere staten tilsvarer Lookahead. Fikser bug rapportert av Selwin van Dijk.
- Bruk icmake å bygge flexc ++ og kjøre testsuite. Ccbuild er nå bare brukes til å oppdatere KLASSER fil.
- støtte lagt for operatører {+} og {-}. I mønstre
- Major overhaling av strøm veksling: det nå bruker en StreamInfo klasse med (ekstra) stream informasjon, konfigureres av% alternativet streaminfoclassname = & quot; ... & quot ;. Se dokumentasjonen for mer informasjon.
Krav :
- icmake
Kommentarer ikke funnet