re2c 2.0

E Méindeg, 20. Juli, gouf re2c, e schnelle lexikaleschen Analyser Generator, verëffentlecht.
Main Ännerungen:

  • Go Sprooch Ënnerstëtzung dobäigesat
    (aktivéiert entweder vun der --lang go Optioun fir re2c, oder als separat re2go Programm).
    Dokumentatioun fir C a Go gëtt aus dem selwechten Text generéiert, awer mat verschiddene
    Code Beispiller. De Code Generatioun Subsystem an re2c gouf komplett nei designt, wat
    soll et méi einfach maachen nei Sproochen an Zukunft z'ënnerstëtzen.

  • En alternativen Bausystem fir CMake bäigefüügt (Merci ligfx!).
    Versuche fir re2c op CMake ze iwwersetzen si scho laang gemaach, awer virun ligfx keen
    eng komplett Léisung ugebueden.
    Den alen Bausystem op Autotools gëtt weider ënnerstëtzt a benotzt,
    an an absehbarer Zukunft sinn et keng Pläng et opzeginn (deelweis fir net ze kreéieren
    Problemer fir Verdeelung Entwéckler, deelweis well déi al Bau System
    méi stabil a méi präzis wéi déi nei).
    Béid Systemer gi kontinuéierlech getest mat Travis CI.

  • D'Fäegkeet bäigefüügt fir Interfacecode a Konfiguratiounen ze setzen wann Dir benotzt
    generesch API. Virdrun, déi meescht APIen hu missen an der Form spezifizéiert ginn
    Funktiounen oder Fonktioun macros. Elo kënnen se an der Form vun arbiträr uginn ginn
    Linnen mat genannte Schablounparameter wéi @@{name} oder just @@ (wann
    et gëtt nëmmen ee Parameter an et gëtt keng Ambiguititéit). Den API Stil gëtt vun der Konfiguratioun spezifizéiert
    re2c: api: style (d'Funktiounswäert spezifizéiert e funktionnelle Stil, a fräi Form spezifizéiert en arbiträr Stil).

  • D'Operatioun vun der Optioun -c, --start-Konditioune gouf verbessert, wat Iech erlaabt e puer ze kombinéieren
    interconnected lexers an engem re2c Block. Elo kënnt Dir benotzen
    reegelméissege Blocken zesumme mat bedingungsfähegen a spezifizéieren e puer onrelatéiert bedingt
    blockéiert an enger Datei.
    Verbesserte Operatioun vun der -r, --reuse Optioun (Wiederverwendung vum Code aus engem Block
    an anere Blocken) a Kombinatioun mat den -c, -startbedingungen an -f, -storable-state Optiounen
    (e stateful Lexer deen zu all Moment ënnerbrach ka ginn
    a spéider d'Ausféierung weiderféieren).

  • Fixéiert e Feeler am kierzlech addéierten Enn-vun-Input Algorithmus
    (EOF-Regel), wat a rare Fäll zu enger falscher Veraarbechtung gefouert huet
    iwwerlappend Regelen.

  • De Bootstrap Prozess gouf vereinfacht. Virdrun huet de Build System probéiert dynamesch schonn ze fannen
    e re2c Build dee benotzt ka ginn fir sech selwer opzebauen.
    Dëst huet zu falschen Ofhängegkeeten gefouert (zënter der Ofhängegkeetsgrafik war
    dynamesch, wat déi meescht Bausystemer net gär hunn).
    Elo, fir lexers opzebauen, musst Dir explizit
    konfiguréieren de Build System a setzt d'RE2C_FOR_BUILD Variabel.

Merci un jiddereen deen un der Virbereedung vun dëser Verëffentlechung deelgeholl huet!

Source: linux.org.ru

Setzt e Commentaire