Siideynta dhaliye falanqeeye qaamuuska re2c 1.2

dhacay sii daayo re2c, dhaliye falanqeeye qaamuus bilaash ah oo loogu talagalay luqadaha C iyo C++. Xusuusnow in re2c uu qoray 1993 Peter Bambulis oo ah koronto-dhaliye tijaabo ah oo falanqeeyayaal qaamuus ah oo aad u dhakhso badan, oo ka duwan koronto-dhaliyeyaasha kale ee xawaaraha koodhka la sameeyay iyo is-dhexgal isticmaale oo aan caadi ahayn oo dabacsan kaasoo u oggolaanaya falanqeeyayaasha inay si fudud oo hufan ugu dhexgalaan koodka jira. saldhig. Tan iyo markaas, mashruuca waxaa soo saaray bulshada oo wuxuu sii wadaa inuu noqdo madal lagu tijaabiyo iyo cilmi baarista berrinka naxwaha rasmiga ah iyo mishiinnada gobolka.

Diyaarinta sii deynta ayaa qaadatay ku dhawaad ​​hal sano. Inta badan, sida had iyo jeer, waxaa lagu kharash gareeyay horumarinta qaab-dhismeedka iyo qorista
maqaallo"Soo saarida POSIX-hoosaadka waxtarka leh ee NFAΒ«.
Algorithms-yada lagu sifeeyay maqaalka waxaa lagu hirgeliyay maktabadda tijaabada libre2c
(dhisidda maktabadda iyo imtixaannada hawl qabadku si caadi ah ayaa loo curyaamiyay waxaana karti u siinaya ikhtiyaarka habaynta β€œβ€”enable-libs”). Maktabadda looguma talagalin inay noqoto mid ku tartanta mashaariicda jira sida RE2, laakiin waa goob cilmi baadhiseed oo lagu horumarinayo kuwa cusub
Algorithms (kaasoo markaa loo isticmaali karo re2c ama mashruucyo kale). Waxa kale oo ay ku habboon tahay marka laga eego dhinaca tijaabada, cabbirka waxqabadka iyo abuurista xidhitaannada luqadaha kale.

Hal-abuurka ugu muhiimsan ee nooca re2c 1.2:

  • Waxaa lagu daray hab cusub oo la fududeeyay ee lagu hubinayo dhamaadka xogta galinta ("xeer EOF"). Tani, qaabeynta "re2c: eof" ayaa lagu daray,
    wuxuu kuu ogolaanayaa inaad doorato dabeecadda terminal,
    iyo xeer gaar ah "$", kaas oo kicinaya haddii lexeruhu
    si guul leh u gaadhay dhamaadka xogta galinta
    Taariikh ahaan, re2c waxay ku siinaysaa doorasho dhowr habab oo xaqiijin ah
    dhammaadka wax-soo-gelinta oo ku kala duwan xaddidnaanta, hufnaanta iyo fududaanta
    codsiyada. Habka cusub waxaa loogu talagalay in lagu fududeeyo koodka qoraalka, halka
    iyadoo ay sii ahaanayso mid waxtar leh oo si ballaaran loo dabaqi karo. Hababka hore
    weli shaqeeya waxaana laga yaabaa in la door bidayo xaaladaha qaarkood.

  • Lagu daray awoodda lagu daro faylalka dibadda iyadoo la adeegsanayo dardaaran
    "/*!include:re2c "file.re" */", meesha "file.re" uu yahay magaca faylka lagu darayo. Re2c waxay ka raadisaa faylasha ku jira hagaha faylka,
    iyo sidoo kale liiska waddooyinka la cayimay iyadoo la isticmaalayo ikhtiyaarka "-I".
    Faylasha lagu daray waxaa ku jiri kara faylal kale.
    Re2c waxay ku siinaysaa faylasha "standard" ee ku jira "ku dar/" tusaha
    mashruuc - waxaa la filayaa in qeexitaanno waxtar leh ay halkaas ku urursan doonaan
    tibaaxaha caadiga ah, wax la mid ah maktabadda caadiga ah.
    Ilaa hadda, codsiga shaqaalaha, hal fayl oo leh qeexitaannada qaybaha Unicode ayaa lagu daray.

  • Waxaa lagu daray awoodda lagu soo saari karo faylalka madaxa oo aan sabab lahayn
    nuxurka isticmaalaya "-t --type-header" doorashooyinka (ama ku habboon
    qaabeynta) iyo dardaaranno cusub "/*! madax: re2c: on */" iyo
    "/*! madax:re2c:off*/". Tani waxay faa'iido u yeelan kartaa kiisaska
    marka re2c u baahan yahay inuu abuuro qeexitaanno doorsoomayaal, qaab-dhismeedka iyo macros,
    loo isticmaalo qaybaha kale ee turjumaada.

  • Re2c waxay hadda fahantay suugaanta UTF8 iyo fasallada jilayaasha ee tibaaxaha caadiga ah.
    Sida caadiga ah, re2c waxa ay kala saartaa tibaaxaha sida "βˆ€xβˆƒy" sida
    taxanaha 1-bit ASCII jilayaasha "e2 88 80 78 20 e2 88 83 79"
    ( codes hex), isticmaalayaashuna waa inay ka baxsadaan jilayaasha Unicode iyagoo gacanta ku haya:
    "\ u2200x \\ u2203y." Tani waa mid aan ku habboonayn oo lama filaan ah qaar badan
    isticmaalayaasha (sida lagu caddeeyey warbixinnada cayayaanka joogtada ah). Haddaba hadda
    re2c waxay ku siinaysaa ikhtiyaarka "--input-encoding {ascii | utf8}",
    Kaas oo kuu ogolaanaya inaad beddesho hab-dhaqanka oo aad u kala saartid "βˆ€x βˆƒy" sida
    "2200 78 20 2203 79."

  • Re2c hadda waxay ogolaataa re2c blocks in loo isticmaalo qaabka "-r --reuse".
    Tani way ku habboon tahay haddii feylka gelinta uu ka kooban yahay baloogyo badan oo kaliya qaar ka mid ah
    u baahan in dib loo isticmaalo.

  • Hadda waxaad dejin kartaa qaabka digniinaha iyo fariimaha khaladka ah
    addoo isticmaalaya ikhtiyaarka cusub "--location-format {gnu | msvc}". Qaabka GNU waa la soo bandhigay
    sida "filename: line:column:", iyo qaabka MSVC oo ah "filename(line, column)".
    Habkani waxa uu faa'iido u yeelan karaa dadka IDE-ga jecel.
    Xulashada "--verbose" ayaa sidoo kale lagu daray, taas oo muujinaysa fariin gaaban oo guul ah haddii lagu guuleysto.

  • Habka "waafaqsanaanta" ee leh dabacsanaan waa la hagaajiyay - khaladaadka falanqaynta qaarkood ayaa la hagaajiyay iyo
    ka horayntii hawlwadeenka khaladka ah marar dhif ah.
    Taariikh ahaan, doorashada "-F --flex-support" ayaa kuu ogolaatay inaad qorto koodka
    isku dhafan qaab flex ah iyo qaabka re2c, taas oo ka dhigaysa falanqaynta wax yar adag.
    Habka ku habboonaanta Flex si dhif ah ayaa loogu isticmaalaa kood cusub,
    laakiin re2c waxay sii wadaysaa inay ku taageerto iswaafajinta gadaal.

  • Hawlwadeenka kala goynta fasalka "/" hadda waa la dabaqaa
    ka hor inta aan la ballaarin codeynta, taas oo u oggolaanaysa in loo isticmaalo tiro badan oo kiisas ah,
    haddii codaynta dhererka xarfaha doorsoomay la isticmaalo (tusaale UTF8).

  • Faylka wax soo saarka hadda waxaa loo abuuray atomically: re2c wuxuu marka hore abuuraa fayl ku meel gaar ah
    oo u qoraa natiijada, ka dibna u beddelo faylka ku meel gaadhka ah ee soo saarista
    hal qalliin.

  • Dukumeentigii waa la dhammaystiray oo dib loo qoray; gaar ahaan kuwa cusub ayaa lagu soo kordhiyey
    cutubyo ku saabsan http://re2c.org/manual/manual.html#buffer-refilling Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±ΡƒΡ„Π΅Ρ€Π°
    ΠΈ ku saabsan siyaabaha loo hubiyo dhammaadka xogta gelinta.
    Dukumeentiga cusub waxaa lagu soo ururiyay foomka
    hage dhamaystiran oo hal bog ah
    oo wata tusaalooyin (ilaa isku mid ah ayaa lagu sameeyay manpage-ka iyo dukumeenti online-ka ah).
    Isku dayo liidata ayaa la sameeyay si loo hagaajiyo akhrinta goobta ee taleefannada.

  • Marka laga eego aragtida horumariyeyaasha, re2c waxay heshay nidaam hoose oo dhammaystiran
    qaladka Koodhka qaladka hadda waa naafo marka la dhisayo iyo
    waxa lagu hawlgelin karaa iyada oo la isticmaalayo ikhtiyaarka habaynta "-enable-debug".

Source: opennet.ru

Add a comment