re2c 2.0

Ni ọjọ Mọndee, Oṣu Keje ọjọ 20, itusilẹ ti re2c, olupilẹṣẹ olutupalẹ lexical ti o yara, ti tu silẹ.
Awọn iyipada akọkọ:

  • Ṣe afikun atilẹyin fun ede Go
    (ṣiṣẹ boya pẹlu aṣayan --lang go fun re2c, tabi gẹgẹbi eto re2go ti o duro ṣinṣin).
    Awọn iwe fun C ati Go jẹ ipilẹṣẹ lati ọrọ kanna, ṣugbọn pẹlu oriṣiriṣi
    awọn apẹẹrẹ koodu. Awọn koodu iran subsystem ni re2c ti a ti tunṣe patapata, eyi ti
    yẹ ki o jẹ ki o rọrun lati ṣe atilẹyin awọn ede titun ni ojo iwaju.

  • Fikun eto kikọ yiyan lori CMake (o ṣeun ligfx!).
    Awọn igbiyanju lati tumọ re2c si CMake ti ṣe fun igba pipẹ, ṣugbọn ṣaaju ligfx ko si ẹnikan
    funni ni pipe ojutu.
    Eto kikọ atijọ lori Autotools tẹsiwaju lati ni atilẹyin ati lilo,
    ati ni ọjọ iwaju ti a le rii, ko si awọn ero lati kọ silẹ (ni apakan ki o má ba ṣẹda
    isoro fun pinpin Difelopa, gba nitori awọn atijọ Kọ eto
    diẹ sii iduroṣinṣin ati ṣoki ju tuntun lọ).
    Mejeeji awọn ọna šiše ti wa ni deede ni idanwo ni lilo Travis CI.

  • Ṣe afikun agbara lati ṣeto koodu wiwo ni awọn atunto nigba lilo
    jeneriki API (gbogboogbo API). Ni iṣaaju, ọpọlọpọ awọn API ni lati wa ni pato ni fọọmu naa
    awọn iṣẹ tabi awọn macros iṣẹ. Bayi wọn le ṣeto ni irisi lainidii
    awọn gbolohun ọrọ pẹlu awọn paramita awoṣe oniwa ti fọọmu @@{name} tabi @@ nikan (ti o ba jẹ
    paramita kan ṣoṣo ni o wa ati pe ko si ambiguity). API ara jẹ atunto
    re2c: api: ara (iye awọn iṣẹ n ṣalaye ara iṣẹ, lakoko ti iye fọọmu ọfẹ jẹ lainidii).

  • Imudara iṣẹ ti aṣayan -c, --start-conditions, eyiti o fun ọ laaye lati ṣajọpọ pupọ
    interconnected lexers ninu ọkan re2c Àkọsílẹ. Bayi o le lo
    awọn bulọọki lasan lori iwọn kan pẹlu awọn ti o wa ni ipo ati ṣeto ọpọlọpọ awọn ipo ti ko ni ibatan
    ohun amorindun ninu ọkan faili.
    Imudara -r, --awọn aṣayan atunlo (atunlo koodu lati bulọki kan
    ni awọn bulọọki miiran) ni apapo pẹlu -c, --awọn ipo ibẹrẹ ati -f, --storable-state awọn aṣayan
    (Lexer ti ipinlẹ ti o le ṣe idiwọ ni ipo lainidii
    ati ki o tẹsiwaju ipaniyan nigbamii).

  • Ti o wa titi kokoro kan ninu algorithm tuntun ti a ṣafikun fun mimu opin data titẹ sii
    (EOF ofin), eyi ti o ni toje igba yori si ti ko tọ si processing
    agbekọja ofin.

  • Irọrun ilana bootstrap. Ni iṣaaju, eto kikọ gbiyanju lati wa ni agbara tẹlẹ
    re2c ti a ṣe ti o le ṣee lo lati tun ara rẹ kọ.
    Eyi yori si awọn igbẹkẹle ti ko tọ (nitori ayaworan igbẹkẹle naa ti jade
    ìmúdàgba, eyi ti julọ Kọ awọn ọna šiše ko ba fẹ).
    Bayi, lati le tun awọn lexers kọ, o nilo ni gbangba
    tunto awọn Kọ eto ati ki o ṣeto RE2C_FOR_BUILD oniyipada.

Ṣeun si gbogbo eniyan ti o ṣe alabapin si itusilẹ yii!

orisun: linux.org.ru

Fi ọrọìwòye kun