A Flex széles körben ismert gyors lexikai elemző, és egy nyílt forráskódú, teljesen ingyenes és többplatformos parancssori alkalmazás, amelyet C / C + + -on implementálnak, és offszetből tervezték, hogy beolvassa a szkennereket.
A Flex eszköz által létrehozott szkennerek, amelyeket nem szabad összetéveszteni a Lex nem-GNU szabad megvalósításával, valójában olyan programok, amelyek képesek felismerni a szövegben található lexikai mintákat, más néven olyan alkalmazásoknak is, amelyek a szöveges minta-egyezést alkalmazzák.
A Flex-et oly módon tervezték, hogy egy "lex.yy.c" nevű forrásfájlt generáljon, amely meghatározhatja az yylex () függvényt. A szoftver parancssori eszköz, így bármilyen terminál emulátoron keresztül is használható.
Parancssori opciók
A program parancssori opciói olyan kategóriákban szerveződnek, mint pl. Asztali tömörítés, hibakeresés, fájlok, szkenner viselkedés, generált kód és egyéb. Ha látni szeretné őket egy pillantással, futtassa az & lsquo; flex --help & rsquo; Parancsot, miután telepítette a szoftvert a rendszerére.
A táblázat tömörítési parancssori opciói közül megemlíthetjük az egyenértékűségi és / vagy meta-egyenértékűségi osztályok konstrukcióját, alternatív táblázatok ábrázolását, az alapértelmezett tömörítés használatát, egy nagy és gyors szkenner létrehozását is Hogy ne tömörítsen táblákat.
A parancssori opciók hibaelhárítása támogatást nyújt a hibakeresési mód engedélyezéséhez szkennerként, támogatja a szkennelési statisztikák összegzését a stdouthoz, támogatja a Flex nyomkövetési módban való futtatását, valamint támogatja a biztonsági mentéshez szükséges adatokat egy adott fájlhoz és Egy teljesítményjelentés a stderr számára.
A szkenner viselkedését testreszabható parancssori opciók segítségével is, amelyek támogatják a 7 bites vagy 8 bites szkennerek létrehozását, a kötegelt szkenner létrehozását támogató támogatás, az interaktív szkenner létrehozásának támogatása, valamint a nyomon követés támogatása Line count in yylineno.
Támogatja a 32 bites / 64 bites Linux és BSD platformokat
A szoftvert teljes egészében a C és a C ++ programnyelvben írta, és jól ismert, hogy jól működik mind a Linux, mind a FreeBSD operációs rendszereken. Jelenleg a 64 bites vagy 32 bites parancssori architektúrákat támogató számítógépekre telepíthető.
Az újdonság ebben a kiadásban:
- építmények:
- A keresési cél most ismeri a flex új (2.6.0-os) elrendezését. Az alkalmazandó behurlási szabályok nem helyesek, ezért rögzíteni kell.
- A flex-elosztásban szereplő fájlokat a disztribúcióban szereplő flex verziója építette.
- A configure parancsfájlnak jobb ötlete van arról, hogy mely fejlécek szükségesek a flex létrehozásához. Ha hibás függvényeket észlel, hiba is fog megjelenni.
- Leállította az automake és a gettext változatait, amelyeket a configure.ac felsorol a szükséges követelményeknek megfelelően. Az autogen.sh-ben most ellenőrizzük, hogyan hívhatjuk le a libtoolize-ot, és használhatjuk, amit a szkript többi részében találunk.
- Mivel a lib / fájlokat szükség szerint az src / / felveszi, ezért nem hozunk létre egy makefile-t ehhez a könyvtárhoz.
- A rugalmasságot át lehet fordítani.
- dokumentáció:
- Néhány beírást eltávolítottunk a kézikönyvből.
- lapolvasó:
- Néhány kisebb teljesítménynövelés.
- Megtisztítjuk a felhasználó által definiált yy_ * makrókat. Továbbá óvatosak vagyunk arra, hogy ne szivárogjunk makró definíciókat fejlécfájlokba.
- Számos hordozhatósági javítást vezetett be, így az épület flex több platformon megbízhatóbb. Ezenkívül az elavult funkcióhívásokat eltávolítottuk.
- A flex-futtatható állomány létrehozásakor a% flexer.skl megjegyzései eltávolításra kerülnek a C forráskód tömb létrehozásakor. Ez csökkenti a flex méretét.
- tesztcsomag:
- A tesztcsomag összes szkriptjét most $ (SHELL) futtatja, és a szükséges hordozhatósági javítások szerepelnek.
- A tesztcsomag függőségeinek tesztelése sokkal jobb. Ez csak akkor fontos, ha aktívan fejleszti a flexet vagy a tesztcsomagot.
- A platformfüggő funkcióktól függő tesztek megfelelően kihagyják azokat a platformokat, amelyek nincsenek jelen.
- Amikor a & quot; make check & quot; fut, mostantól a V = 0 után többet hallgathatsz. Ez akkor hasznos, ha kevésbé érdekli a
Hozzászólás nem található