Flex is algemeen bekend as die vinnige leksikale ontleder. Dit is 'n oop bron, heeltemal gratis en multi-platform command line toepassing geïmplementeer in C / C ++ en ontwerp van die offset wat gebruik word vir die opwekking van skandeerders.
Die skandeerders wat gegenereer word deur die Flex-gereedskap, wat nie verwar word met 'n nie-GNU-vrye implementering van Lex, is eintlik programme wat leksikale patrone in teks kan herken, ook bekend as toepassings wat patroon-ooreenstem met teks verrig.
Flex is so ontwerp dat dit 'n C-bron lêer genaamd "lex.yy.c" kan genereer wat die yylex () funksie kan definieer. Die sagteware is 'n instruksieskakel, sodat jy dit kan gebruik via enige terminale emulator.
Opdrag lyn opsies
Die opsies vir die opsies van die program word georganiseer in kategorieë soos tabelkompressie, ontfouting, lêers, skandeerdergedrag, gegenereerde kode en diverse. Om dit in 'n oogopslag te sien, hardloop die 'flex' -help & rsquo; Opdrag na die installering van die sagteware op u stelsel.
Onder die opsies vir die opsomming van die tabel kompressie kan ons die vermoë om equivalence- en / of meta-ekwivalensieklasse op te stel, gebruik maak van 'n alternatiewe tabelvoorstelling, om standaardkompressie te gebruik, om 'n groot en vinnige skandeerder te genereer. Om nie tabelle saam te druk nie.
Opties vir die opsporing van die opsies sluit in ondersteuning vir die aanstuur van debug-modus in skandeerder, ondersteuning vir die skryf van opsomming van skandeerderstatistiek om te stdout, ondersteuning vir die uitvoer van Flex in spoormodus, asook ondersteuning vir die skryf van back-up-inligting na 'n spesifieke lêer en 'N prestasieverslag aan Stderr.
Die skandeerdergedrag kan ook aangepas word deur middel van opdraglyn opsies, wat ondersteuning insluit vir die opwekking van 7-bits of 8-bits skandeerders, ondersteuning vir die opwekking van 'n joernaal skandeerder, ondersteuning vir die opwekking van 'n interaktiewe skandeerder, asook ondersteuning vir die dop Lyn telling in yylineno.
Ondersteunt 32-bis / 64-bis Linux- en BSD-platforms
Die sagteware is heeltemal geskryf in die C en C ++ programmeringstaal en dit is bekend dat dit goed werk op beide Linux- en FreeBSD-bedryfstelsels. Tans kan dit geïnstalleer word op rekenaars wat van die 64-bis of 32-bis instruksies-argitekture ondersteun.
Wat is nuut in hierdie weergawe:
- bou:
- Die inentingsdoel weet nou oor flex se nuwe uitleg (soos van 2.6.0). Die inskrywingsreëls wat dit sal toepas, is nie korrek nie en moet opgelos word.
- Die lêers wat in die verspreidingsverspreiding ingesluit word, word nou gebou deur die weergawe van die flex wat in die verspreiding ingesluit is.
- Die instellingsskrif het 'n beter idee van watter opskrifte nodig is om buig te bou. Dit sal ook foute wanneer ontbrekende funksies bespeur word.
- Ons het die weergawes van automake en gettext verlaag wat konfigureer.ac lyste soos benodig vir die bou van fleksie. In autogen.sh, kyk ons nou hoe om libtoolize te skakel en gebruik wat ons in die res van die script vind.
- Aangesien lêers in lib / opgetel word soos benodig deur src /, skep ons nie meer 'n Makefile vir daardie gids nie.
- Flex kan kruis saamgestel word.
- dokumentasie:
- Sommige tipes is uit die handleiding verwyder.
- skandeerder:
- Enkele geringe prestasieverbeterings.
- Ons eer die gebruiker jou yy_ * makros weer omskryf. Ons is ook meer versigtig om nie makro-definisies in hoofletters te lek nie.
- 'n Aantal oordraagbaarheidsmaatreëls is ingestel, sodat die bou van flex meer betroubaar is op meer platforms. Daarbenewens is verouderde funksieoproepe verwyder.
- By die bou van die flex-uitvoerbare self word% # kommentaar van flex.skl verwyder wanneer die C-bronkode skikking genereer word. Dit verminder die grootte van die flex.
- toets suite:
- Alle skrifte in die toets suite word nou deur $ (SHELL) bestuur en die nodige oordraagbaarheidskriteria is ingesluit.
- Toets suite afhanklikhede word baie beter hanteer. Dit is net belangrik as jy 'n fleksiewe of 'n proefpakket ontwikkel.
- Toetse wat afhanklik is van platformafhanklike funksies, slaan nou behoorlik oor wanneer daardie platforms nie teenwoordig is nie.
- As jy 'check' maak, kan jy nou V = 0 stoor om meer van die bouwerk te stil. Dit is handig as u minder van die belangstel
Kommentaar nie gevind