Nemusi weMuvhuro, Chikunguru 20, re2c, jenareta inokurumidza lexical analyzer, yakaburitswa.
Shanduko huru:
Yakawedzerwa rutsigiro rweGo mutauro
(inogoneswa pamwe ne --lang go sarudzo ye re2c, kana seyakasiyana re2go chirongwa).
Zvinyorwa zveC uye Go zvinogadzirwa kubva muzvinyorwa zvakafanana, asi zvakasiyana
kodhi mienzaniso. Iyo kodhi yechizvarwa subsystem mu re2c yakagadziridzwa zvachose, iyo
zvinofanira kuita kuti zvive nyore kutsigira mitauro mitsva mune ramangwana.-
Kuedza kushandura re2c kuenda kuCMake kwakaitwa kwenguva yakareba, asi hapana akazviita pamberi pe ligfx.
akapa mhinduro yakakwana.
Iyo yekare kuvaka sisitimu paAutotools inoramba ichitsigirwa uye kushandiswa,
uye hapana hurongwa hwekuisiya mune ramangwana rinoonekwa (chikamu kuitira kuti usagadzire
matambudziko evagadziri vekugovera, pamwe nekuda kweiyo yekare kuvaka system
yakasimba uye yakapfupika kupfuura itsva).
Masisitimu ese ari maviri akaenzana uye anoramba achiyedzwa uchishandisa Travis CI. Yakawedzera kugona kutsanangura interface kodhi mune zvigadziriso kana uchishandisa
generic API. Pakutanga, maAPI mazhinji aifanira kutsanangurwa mufomu
mabasa kana macros anoshanda. Iye zvino vanogona kutsanangurwa nenzira yekupokana
mitsetse ine maparamendi ane mazita akaita se @@{name} kana kungoti @@ (kana
parameter imwe chete uye hapana kusajeka). Iyo API style inoiswa nekugadzirisa
re2c: api: dhizaini (iyo basa kukosha inotsanangura iyo inoshanda maitiro, uye yemahara-fomu inotsanangudza chimiro chekupokana).Yakavandudza iyo -c, --start-conditions sarudzo, ichikutendera kuti ubatanidze akawanda
akabatana lexers mune imwe re2c block. Iye zvino unogona kushandisa
mabhuroko enguva dzose pamwe chete nemabhuraki anemimiriro uye tsanangura akati wandei asina hukama mabhuroko
inovhara mune imwe faira.
Kuvandudzwa kwekushanda kwe -r, --reuse sarudzo (kushandiswazve kwekodhi kubva kubhuroka rimwe)
mune mamwe mabhuroki) musanganiswa neiyo -c, --start-conditions uye -f, --stable-state sarudzo.
(lexer ine chimiro chinopfuurira chinogona kukanganiswa chero nguva
uye enderera mberi nekuuraya gare gare).Yakagadzirisa bug mune ichangobva kuwedzerwa kupera-kwe-input processing algorithm
(EOF mutemo), iyo muzviitiko zvisingawanzoiti yakatungamirira kune zvisiri izvo kugadzirisa
mitemo inopindirana.Iyo bootstrap maitiro akarerutswa. Pakutanga, sisitimu yekuvaka yakaedza kuwana zvine simba kare
yakaunganidzwa re2c iyo inogona kushandiswa kuzvibatanidza pachayo.
Izvi zvakakonzera kutsamira kusina kunaka (sezvo girafu rekutsamira raive
dynamic, iyo yakawanda inovaka masisitimu isingadi).
Zvino, kuvaka patsva malexers, unofanirwa kujekesa
gadzirisa iyo kuvaka sisitimu uye isa iyo RE2C_FOR_BUILD shanduko.
Ndatenda kune wese akaita mukuburitswa uku!
Source: linux.org.ru
