{"id":36759,"date":"2019-10-31T22:13:39","date_gmt":"2019-10-31T19:13:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/re2c-1-2\/"},"modified":"2019-10-31T22:13:39","modified_gmt":"2019-10-31T19:13:39","slug":"re2c-1-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/news\/re2c-1-2","title":{"rendered":"re2c 1.2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>N\u00eb t\u00eb premten, m\u00eb 2 gusht, doli versione re2c \u2014 nj\u00eb gjenerues falas i analizator\u00ebve leksik\u00eb p\u00ebr gjuh\u00ebt C dhe C++. Kujtojm\u00eb se re2c u shkrua n\u00eb vitin 1993 nga Peter Bambulis si nj\u00eb gjenerues eksperimental i analizator\u00ebve leksik\u00eb shum\u00eb t\u00eb shpejt\u00eb, i cili dallohet nga gjenerues t\u00eb tjer\u00eb p\u00ebr shpejt\u00ebsin\u00eb e kodit t\u00eb gjeneruar dhe nj\u00eb nd\u00ebrfaqe t\u00eb zakonshme p\u00ebrdoruesi, e cila lejon integrimin e leht\u00eb dhe efektiv t\u00eb analizator\u00ebve n\u00eb nj\u00eb baz\u00eb t\u00eb ekzistuese t\u00eb kodit. Q\u00eb at\u00ebher\u00eb, projekti \u00ebsht\u00eb zhvilluar nga komuniteti dhe vazhdon t\u00eb mbetet nj\u00eb platform\u00eb p\u00ebr eksperimente dhe hulumtime n\u00eb fush\u00ebn e gramatikave formale dhe automatik\u00ebve t\u00eb fundit.<\/p>\n<p>Risi n\u00eb versionin 1.2:<\/p>\n<ul>\n<li>\n<p>Shtuar nj\u00eb m\u00ebnyr\u00eb t\u00eb re (t\u00eb thjeshtuar) p\u00ebr t\u00eb kontrolluar fundin e t\u00eb dh\u00ebnave t\u00eb hyrjes<br \/>\n(angl. \u00abEOF rule\u00bb).<br \/>\nP\u00ebr k\u00ebt\u00eb \u00ebsht\u00eb shtuar konfigurimi re2c:eof,<br \/>\ni cili lejon p\u00ebrzgjedhjen e simbolit terminal,<br \/>\ndhe nj\u00eb rregull t\u00eb ve\u00e7ant\u00eb $, i cili aktivizohet kur leksiku<br \/>\narrin me sukses fundin e t\u00eb dh\u00ebnave hyr\u00ebse.<br \/>\nHistorikisht, re2c ofron disa m\u00ebnyra p\u00ebr t\u00eb kontrolluar<br \/>\nfundin e t\u00eb dh\u00ebnave hyr\u00ebse, t\u00eb cilat ndryshojn\u00eb sipas kufizimeve, efikasitetit dhe thjesht\u00ebsis\u00eb<br \/>\ns\u00eb aplikimit. M\u00ebnyra e re synon t\u00eb thjeshtoj\u00eb kodin, duke mbetur gjithashtu efikase dhe shum\u00eb e aplikueshme. M\u00ebnyrat e vjetra<br \/>\nende funksionojn\u00eb dhe mund t\u00eb jen\u00eb t\u00eb preferueshme n\u00eb raste t\u00eb ve\u00e7anta.<br \/>\n\u00ebsht\u00eb shtuar mund\u00ebsia e p\u00ebrfshirjes s\u00eb skedar\u00ebve t\u00eb jasht\u00ebm p\u00ebrmes direktiv\u00ebs<\/p>\n<\/li>\n<li>\n<p>\u00ab\/*!include:re2c \u00abfile.re\u00bb *\/\u00bb, ku \u00abfile.re\u00bb \u00ebsht\u00eb emri i skedarit t\u00eb p\u00ebrfshir\u00eb. Re2c k\u00ebrkon skedar\u00ebt n\u00eb direktorin\u00eb e skedarit t\u00eb p\u00ebrfshir\u00eb,<br \/>\n\/*!include:re2c &quot;file.re&quot; *\/, \u0433\u0434\u0435 file.re<br \/>\n\u00ebsht\u00eb emri i skedarit t\u00eb p\u00ebrfshir\u00eb. Re2c k\u00ebrkon skedar\u00eb n\u00eb direktor\u00ebt e skedarit t\u00eb p\u00ebrfshir\u00eb,<br \/>\nsi dhe n\u00eb list\u00ebn e rrug\u00ebve t\u00eb caktuara me an\u00eb t\u00eb opsionit -I.<br \/>\nSkedar\u00ebt e p\u00ebrfshir\u00eb mund t\u00eb p\u00ebrfshijn\u00eb skedar\u00eb t\u00eb tjer\u00eb.<br \/>\nRe2c ofron skedar\u00eb \u00abstandard\u00eb\u00bb n\u00eb direktorine include\/<br \/>\nt\u00eb projektit \u2014 supozohet se aty do t\u00eb akumulohen definita t\u00eb dobishme<br \/>\nt\u00eb shprehjeve t\u00eb rregullta, di\u00e7ka n\u00eb stilin e bibliotek\u00ebs standarde.<br \/>\nDerim\u00eb tani, sipas k\u00ebrkesave t\u00eb p\u00ebrdoruesve, \u00ebsht\u00eb shtuar nj\u00eb skedar me definicione t\u00eb kategorive Unicode.<\/p>\n<\/li>\n<li>\n<p>Shtuar mund\u00ebsia p\u00ebr t\u00eb gjeneruar skedar\u00eb titujsh me p\u00ebrmbajtje arbitrare<br \/>\nme p\u00ebrmbajtje p\u00ebrmes opsioneve -t \u2014type-header (ose p\u00ebrkat\u00ebsisht<br \/>\ndhe direktivave t\u00eb reja \n\/*!header:re2c:on*\/ dhe<br \/>\n\/*!header:re2c:off*\/. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u044f\u0445,<br \/>\nre2c duhet t\u00eb gjeneroj\u00eb definicione t\u00eb variablave, strukturave dhe makrove<br \/>\nq\u00eb p\u00ebrdoren n\u00eb nj\u00ebsi t\u00eb tjera p\u00ebrkthimi.<\/p>\n<\/li>\n<li>\n<p>Re2c tani kupton literale UTF8 dhe klasa simbole n\u00eb shprehje t\u00eb rregullta.<br \/>\nSipas parazgjedhjes, re2c analizoi shprehjet si \u00ab\u2200x \u2203y\u00bb si.<br \/>\nnj\u00eb varg t\u00eb simboleve ASCII 1-bit\u00ebsh e2 88 80 78 20 e2 88 83 79<br \/>\n(kode hex), dhe p\u00ebrdoruesit detyrohen t\u00eb ekranojn\u00eb simbolet Unicode manualisht:<br \/>\n\u00abu2200x u2203y\u00bb. Kjo \u00ebsht\u00eb shum\u00eb e pap\u00ebrshtatshme dhe e papritur p\u00ebr shum\u00eb<br \/>\np\u00ebrdorues (si\u00e7 d\u00ebshmojn\u00eb raportet e vazhdueshme p\u00ebr gabime). Prandaj tani<br \/>\nre2c ofron opsionin \u2014input-encoding ,<br \/>\ni cili lejon ndryshimin e sjelljes dhe analizimin e \u00ab\u2200x \u2203y\u00bb si<br \/>\n2200 78 20 2203 79.<\/p>\n<\/li>\n<li>\n<p>Re2c tani lejon p\u00ebrdorimin e blloqeve t\u00eb zakonshme re2c n\u00eb modin -r \u2014reuse.<br \/>\nKjo \u00ebsht\u00eb e dobishme, n\u00ebse skedari hyr\u00ebs p\u00ebrmban shum\u00eb blloqe dhe vet\u00ebm nj\u00eb pjes\u00eb e tyre<br \/>\nka nevoj\u00eb p\u00ebr rip\u00ebrdorim.<\/p>\n<\/li>\n<li>\n<p>Kjo mund\u00ebsi tani i mund\u00ebson vendosjen e formatit t\u00eb paralajm\u00ebrimeve dhe mesazheve t\u00eb gabimeve<br \/>\nme opsionin e ri \u2014location-format . Formati GNU tregohet<br \/>\nsi filename:line:column:, nd\u00ebrsa formati MSVC \u2014 si filename(line,column).<br \/>\nKjo mund\u00ebsi mund t'u nevojitet adhuruesve t\u00eb IDE.<br \/>\nPo ashtu u shtua opsioni \u2014verbose, i cili jep nj\u00eb mesazh t\u00eb shkurt\u00ebr triumfues n\u00eb rast suksesi.<\/p>\n<\/li>\n<li>\n<p>Modi i \u00abkompatibilitetit\u00bb me flex \u00ebsht\u00eb p\u00ebrmir\u00ebsuar \u2014 disa gabime t\u00eb dekodimit jan\u00eb korrigjuar dhe<br \/>\nprioritetin e gabuar t\u00eb operator\u00ebve n\u00eb raste t\u00eb rralla.<br \/>\nHistorikisht, opsioni -F \u2014flex-support lejon t\u00eb shkruhet kod<br \/>\np\u00ebrzier n\u00eb stilin flex dhe n\u00eb stilin re2c, q\u00eb paksa v\u00ebshtir\u00ebson analizimin sintaksor.<br \/>\nModa e kompatibilitetit me flex p\u00ebrdoret rrall\u00eb n\u00eb kodin e ri,<br \/>\npor re2c vazhdon ta mb\u00ebshtes\u00eb at\u00eb p\u00ebr kompatibilitetin mbrapa.<\/p>\n<\/li>\n<li>\n<p>Operatori i zbritjes p\u00ebr klasat e simboleve \/ tani aplikohet<br \/>\npara zhvillimin e kodimit, q\u00eb lejon aplicimin e tij n\u00eb m\u00eb shum\u00eb raste,<br \/>\nn\u00ebse p\u00ebrdoret nj\u00eb kodim me gjat\u00ebsi variabile t\u00eb karaktereve (p.sh. UTF8).<\/p>\n<\/li>\n<li>\n<p>Skeda dal\u00ebse tani krijohet n\u00eb m\u00ebnyr\u00eb atomike: re2c s\u00eb pari krijon nj\u00eb sked\u00eb p\u00ebrkohshme<br \/>\ndhe shkruan n\u00eb t\u00eb rezultatin, e m\u00eb pas ndryshon emrin e sked\u00ebs p\u00ebrkohshme n\u00eb at\u00eb dal\u00ebse<br \/>\nn\u00eb nj\u00eb operacion.<\/p>\n<\/li>\n<li>\n<p>Dokumentacioni \u00ebsht\u00eb plot\u00ebsuar dhe ripar\u00eb; n\u00eb ve\u00e7anti, jan\u00eb shtuar kapituj t\u00eb rinj<br \/>\n<noindex>kapi <a rel=\"nofollow\" href=\"http:\/\/re2c.org\/manual\/manual.html#buffer-refilling\">p\u00ebr mbushjen e bufereve<\/a><\/noindex><br \/>\ndhe <a rel=\"nofollow\" href=\"http:\/\/re2c.org\/manual\/manual.html#eof-handling\">p\u00ebr metodat e kontrollit t\u00eb fundit t\u00eb t\u00eb dh\u00ebnave t\u00eb hyrjes<\/a>.<br \/>\nDokumentacioni i ri \u00ebsht\u00eb mbledhur n\u00eb form\u00ebn e<br \/>\n<a rel=\"nofollow\" href=\"http:\/\/re2c.org\/manual\/manual.html\">t\u00eb nj\u00eb manuali p\u00ebrmbledh\u00ebs t\u00eb plot\u00eb<\/a><br \/>\nme shembuj (t\u00eb nj\u00ebjtat burime vizatohen n\u00eb manpage dhe n\u00eb dokumentacionin online).<br \/>\nJan\u00eb b\u00ebr\u00eb p\u00ebrpjekje t\u00eb dob\u00ebta p\u00ebr t\u00eb p\u00ebrmir\u00ebsuar lexueshm\u00ebrin\u00eb e sitit n\u00eb telefona.<\/p>\n<\/li>\n<li>\n<p>Nga pik\u00ebpamja e zhvilluesve, re2c ka fituar nj\u00eb sistem debug m\u00eb t\u00eb plot\u00eb.<br \/>\nKodi i ndihm\u00ebs tani \u00ebsht\u00eb \u00e7aktivizuar n\u00eb nd\u00ebrtimet e l\u00ebshimit dhe<br \/>\nmund t\u00eb p\u00ebrfshihet p\u00ebrmes opsionit configure \u2014enable-debug.<\/p>\n<\/li>\n<\/ul>\n<p>Ky version zgjati nj\u00eb koh\u00eb t\u00eb gjat\u00eb \u2014 pothuajse nj\u00eb vit.<br \/>\nShumica e koh\u00ebs, si gjithmon\u00eb, shkoi p\u00ebr zhvillimin e baz\u00ebs teorike dhe shkruan<br \/>\nartikulli <a rel=\"nofollow\" href=\"http:\/\/re2c.org\/2019_borsotti_trofimovich_efficient_posix_submatch_extraction_on_nfa.pdf\">\u00abEkstraktimi Efikas i N\u00ebnp\u00ebrputhjeve POSIX mbi NFA\u00bb<\/a>.<br \/>\nAlgoritmet e p\u00ebrshkruara n\u00eb artikull jan\u00eb realizuar n\u00eb nj\u00eb bibliotek\u00eb eksperimentale libre2c<br \/>\n(nd\u00ebrtimi i bibliotek\u00ebs dhe benchmarkeve \u00ebsht\u00eb i \u00e7aktivizuar si parazgjedhje dhe aktivizohet me opsionin configure\u2014enable-libs). Biblioteka nuk \u00ebsht\u00eb menduar si nj\u00eb konkurent i projekteve ekzistuese si RE2, por si nj\u00eb platform\u00eb k\u00ebrkimore p\u00ebr zhvillimin e algoritmeve t\u00eb reja (t\u00eb cilat mund t\u00eb p\u00ebrdoren m\u00eb pas n\u00eb re2c ose n\u00eb projekte t\u00eb tjera).<br \/>\n\u2014enable-libs). Biblioteka nuk \u00ebsht\u00eb menduar si nj\u00eb konkurruese ndaj ekzistueseve<br \/>\nFaleminderit nga zhvilluesit e re2c t\u00eb gjith\u00ebve q\u00eb ndihmuan n\u00eb realizimin e k\u00ebtij lancimi,<br \/>\ndhe n\u00eb p\u00ebrgjith\u00ebsi komunitetit p\u00ebr idet\u00eb, raportet p\u00ebr gabimet, patch-at, shpirtin luftarak, etj. ;]<br \/>\nM\u00eb 2 gusht t\u00eb premten doli lansimi i re2c \u2014 nj\u00eb gjenerator i lir\u00eb p\u00ebr analizator\u00eb leksik p\u00ebr gjuh\u00ebt C dhe C++.<\/p>\n<p>\ud83e\udd47re2c 1.2 | ProHoster<br \/>\ndhe n\u00eb p\u00ebrgjith\u00ebsi komunitetit p\u00ebr idet\u00eb, raportet e defekteve, patch-et, frym\u00ebn e luft\u00ebs etj. ;]<\/p>\n<p>Burimi: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"http:\/\/www.linux.org.ru\/news\/development\/15144630\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 2-\u0433\u043e \u0430\u0432\u0433\u0443\u0441\u0442\u0430 \u0432\u044b\u0448\u0435\u043b \u0440\u0435\u043b\u0438\u0437 re2c &mdash; \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043b\u0435\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 C \u0438 C++. \u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e re2c \u0431\u044b\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u0432 1993 \u0433\u043e\u0434\u0443 \u041f\u0438\u0442\u0435\u0440\u043e\u043c \u0411\u0430\u043c\u0431\u0443\u043b\u0438\u0441\u043e\u043c \u043a\u0430\u043a \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u044b\u0445 \u043b\u0435\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432, \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u043e\u0442 \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438 \u043d\u0435\u043e\u0431\u044b\u0447\u043d\u043e \u0433\u0438\u0431\u043a\u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043b\u0435\u0433\u043a\u043e \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0432\u0441\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u044b \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-36759","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 2-\u0433\u043e \u0430\u0432\u0433\u0443\u0441\u0442\u0430 \u0432\u044b\u0448\u0435\u043b \u0440\u0435\u043b\u0438\u0437 re2c \u2014 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043b\u0435\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 C \u0438 C++.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/news\/re2c-1-2\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47re2c 1.2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 2-\u0433\u043e \u0430\u0432\u0433\u0443\u0441\u0442\u0430 \u0432\u044b\u0448\u0435\u043b \u0440\u0435\u043b\u0438\u0437 re2c \u2014 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043b\u0435\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 C \u0438 C++.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/news\/re2c-1-2\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:13:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:13:39+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47re2c 1.2 | ProHoster","description":"N\u00eb t\u00eb premten m\u00eb 2 gusht doli versioni i ri re2c \u2014 nj\u00eb gjenerator falas p\u00ebr analizator\u00eb leksikor\u00eb p\u00ebr gjuh\u00ebt C dhe C++.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/news\/re2c-1-2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47re2c 1.2 | ProHoster","og:description":"\u0412 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 2-\u0433\u043e \u0430\u0432\u0433\u0443\u0441\u0442\u0430 \u0432\u044b\u0448\u0435\u043b \u0440\u0435\u043b\u0438\u0437 re2c \u2014 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043b\u0435\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 C \u0438 C++.","og:url":"https:\/\/prohoster.info\/sq\/blog\/news\/re2c-1-2","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:13:39+00:00","article:modified_time":"2019-10-31T19:13:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36759","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 04:45:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:39:23","updated":"2026-01-22 04:45:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/36759","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=36759"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/36759\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=36759"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=36759"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=36759"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}