Dinten Senén, 20 Juli, re2c, generator analisa leksikal gancang, dileupaskeun.
Parobahan utama:
-
Ditambahkeun dukungan basa Go
(diaktipkeun ku pilihan --lang go pikeun re2c, atanapi salaku program re2go anu misah).
Dokuméntasi pikeun C sareng Go dihasilkeun tina téks anu sami, tapi kalayan béda
conto kode. Subsistem generasi kode di re2c parantos dirarancang deui, anu mana
kedah ngagampangkeun ngadukung basa énggal di hareup. -
Ditambahkeun sistem ngawangun alternatif pikeun CMake (hatur nuhun ligfx!).
Usaha narjamahkeun re2c ka CMake parantos lami dilakukeun, tapi sateuacan ligfx teu aya anu
ditawarkeun solusi lengkep.
Sistem ngawangun Autotools anu lami terus dirojong sareng dianggo,
sareng di masa depan anu tiasa diramalkeun teu aya rencana pikeun ngantunkeunana (sabagéan supados henteu nyiptakeun
masalah pikeun pamekar distribution, sabagean kusabab sistem ngawangun heubeul
langkung stabil sareng langkung ringkes tibatan anu énggal).
Kadua sistem terus diuji nganggo Travis CI. -
Ditambahkeun kamampuan pikeun nyetél kode antarmuka dina konfigurasi nalika nganggo
API umum. Saméméhna, paling API kedah dieusian dina formulir
fungsi atawa fungsi makro. Ayeuna aranjeunna tiasa dieusian dina bentuk wenang
garis kalawan parameter citakan ngaranna kawas @@{ngaran} atawa ngan @@ (lamun
ngan ukur aya hiji parameter sareng teu aya ambiguitas). Gaya API dieusian ku konfigurasi
re2c:api:style (nilai fungsi nangtukeun gaya fungsional, sarta formulir bébas nangtukeun gaya arbitrer). -
Operasi pilihan -c, --start-conditions parantos ningkat, ngamungkinkeun anjeun ngagabungkeun sababaraha
lexers interconnected dina hiji blok re2c. Ayeuna anjeun tiasa nganggo
blok biasa sareng anu kondisional sareng tangtukeun sababaraha anu teu aya hubunganana
blok dina hiji file.
Ningkatkeun operasi pilihan -r, --reuse (ngagunakeun deui kode tina hiji blok
dina blok séjén) dina kombinasi sareng -c, --start-conditions sareng -f, --storable-state options
(a lexer stateful nu bisa interrupted iraha wae titik
teras teraskeun palaksanaan engké). -
Ngalereskeun bug dina algoritma input-input anu nembé ditambah
(aturan EOF), anu dina kasus anu jarang nyababkeun pamrosésan anu salah
aturan tumpang tindih. -
Prosés bootstrap parantos disederhanakeun. Saméméhna, sistem ngawangun diusahakeun dinamis manggihan geus
a re2c ngawangun nu bisa dipaké pikeun ngawangun deui sorangan.
Ieu nyababkeun kagumantungan anu salah (saprak grafik kagumantungan éta
dinamis, anu paling sistem ngawangun henteu resep).
Ayeuna, pikeun ngawangun deui lexers, anjeun kedah sacara eksplisit
ngonpigurasikeun sistem ngawangun tur nyetel variabel RE2C_FOR_BUILD.
Hatur nuhun ka dulur anu ilubiung dina persiapan release ieu!
sumber: linux.org.ru