|
|
| version 1.86, 2002/08/06 09:49:05 | version 1.207, 2002/12/27 09:11:45 |
|---|---|
| Line 1 | Line 1 |
| #@USE | @USE |
| #t.p | /derived.p |
| /operators.p | |
| @auto[filespec] | @auto[filespec] |
| $selffilespec[$filespec] | $selffilespec[$filespec] |
| #$form:here | #$form:here |
| #$request:charset[UTF-8] | #$request:charset[UTF-8] |
| #$response:charset[windows-1251] | $request:charset[windows-1251] |
| $response:charset[windows-1251] | |
| #$response:charset[UTF-8] | |
| #$response:charset[empty] | |
| #$response:content-type[$.value[text/html]$.charset[$response:charset]] | #$response:content-type[$.value[text/html]$.charset[$response:charset]] |
| #@postprocess[body] | @postprocess[body] |
| #<b>$body</b> | #<b>$body</b> |
| #$result[123] | #$result[123] |
| $body | |
| <hr> | |
| OK | |
| @main[] | @main[] |
| #$form:a= | |
| #$a(123) | #$a(123) |
| #^a.format[%.10u] | #^a.format[%.10u] |
| #$result[111] | #$result[111] |
| #^f[a] | #^f[a] |
| #^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{ | #^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{ |
| # ^int:sql{select news_id from news where news_id=-1}[$.default{2}]<br> | # ^int:sql{select news_id from news where news_id=-1}[ |
| # $.default{2} | |
| # ]<br> | |
| # ^hash::sql{bad} | |
| # ^string:sql{select news_id from news where news_id=-1}[$.default{2}] | # ^string:sql{select news_id from news where news_id=-1}[$.default{2}] |
| # ^file::load[text;^string:sql{select 'from sql server' }] | |
| # ^string:sql{select '^^hello[]' }] $ORIGINS(1) | |
| # ^process{ ^^h[]} | |
| # ^process{^string:sql{select '1 | |
| # ^^hello[]' }] } | |
| # ^double:sql{select '2*' ^; } | |
| #$card_sequence_expect_no(^double:sql{select 20020909131047 #card_sequence_expect_no from card_sequence}) | |
| #^card_sequence_expect_no.format[%15.f] | |
| #} | #} |
| #^eval(2) | #^eval(2) |
| #^tcrashlocaljunctionsv2[] | #^tcrashlocaljunctionsv2[] |
| Line 41 $selffilespec[$filespec] | Line 60 $selffilespec[$filespec] |
| #^subjvaltest[] | #^subjvaltest[] |
| #^tableselect0[] | #^tableselect0[] |
| #^memnotest1[] | #^memnotest1[] |
| #^transparams[] | |
| #^voidparams[] | #^voidparams[] |
| #^rolls2[] | #^rolls2[] |
| #^cacheexpireschanging[] | #^cacheexpireschanging[] |
| Line 71 $selffilespec[$filespec] | Line 89 $selffilespec[$filespec] |
| #^precisionProblem[] | #^precisionProblem[] |
| #^xpath[] | #^xpath[] |
| #^ttablesetlang[] | #^ttablesetlang[] |
| #^mail3[] | |
| #^ttime[] | #^ttime[] |
| #^tupper[] | #^tupper[] |
| #^treplace[] | #^treplace[] |
| Line 89 $selffilespec[$filespec] | Line 106 $selffilespec[$filespec] |
| #^if($form:test){y}{n} | #^if($form:test){y}{n} |
| #^tablecolumnerror[] | #^tablecolumnerror[] |
| #^roll[] | #^roll[] |
| #^cookie2[] | |
| #^tableset[] | #^tableset[] |
| #^math:PI.format{%.30f} | #^math:PI.format{%.30f} |
| #^xchildren[] | #^xchildren[] |
| Line 134 $selffilespec[$filespec] | Line 150 $selffilespec[$filespec] |
| #^ford[] | #^ford[] |
| #^tif[] | #^tif[] |
| #^image[] | #^image[] |
| #^mail2[] | |
| #^cookie[] | |
| #^response[] | #^response[] |
| #^regexp2[] | #^regexp2[] |
| #^ttablerem[] | #^ttablerem[] |
| #^pcre[] | #^pcre[] |
| #^regexp[]<hr> | #^regexp[]<hr> |
| #^mail[] | #^mail[] |
| #^exec[] | |
| #^fori[] | #^fori[] |
| #^tconnect[] | #^tconnect[] |
| #^xslt[] | #^xslt[] |
| #^xml[] | |
| #^header[] | #^header[] |
| #^tablehasht[] | #^tablehasht[] |
| #^datecreatestring[] | #^datecreatestring[] |
| Line 182 $selffilespec[$filespec] | Line 194 $selffilespec[$filespec] |
| #^tfilespec[] | #^tfilespec[] |
| #^tcrypt[] | #^tcrypt[] |
| #^cryptdocsample[] | #^cryptdocsample[] |
| #^sendtests[] | |
| #^tnormalize[] | #^tnormalize[] |
| #^xmltransformbyxdoc[] | #^xmltransformbyxdoc[] |
| #^sergestrandef[] | #^sergestrandef[] |
| #^tstdin[] | #^tstdin[] |
| #^tfind[] | #^tfind[] |
| #^calendar[] | |
| #^mimet[] | #^mimet[] |
| ^cgit[] | #^joinlimit[] |
| #^tableclonelimit[] | |
| #^transparams[] | |
| #^sendtests[] | |
| #^wwrapperpass[] | |
| #^badpos[] | |
| #^processtest[] | |
| #^mail3[] | |
| #^datesaving[] | |
| #^badconstructor[] | |
| #^calendar[] | |
| #^monthdays(8) | |
| #^xdoctypetest[] | |
| #^xtabletest[] | |
| #^staticstest[] | |
| #^staticstest2[] | |
| #^rbodytest[] | |
| #^cookie[] | |
| #^cookieexpirestest[] | |
| #^postest[] | |
| #^voidpostest[] | |
| #^badcolumntest[] | |
| #^delimiters[] | |
| #^новый-split[] | |
| #^грязные-cookie[] | |
| #^html-почта[] | |
| #^badswitchtest[] | |
| #^okswitchtest[] | |
| #^cgit[] | |
| #^ttransformsep[] | |
| #^calltest[] | |
| #^xpath3[] | |
| #^doubleliterals[] | |
| #^newxor[] | |
| #^mail2[] | |
| #^exec[] | |
| #^passpost[] | |
| #^fordelim[] | |
| #^duplicatetable2hashkey[] | |
| #^duplicatehashsqlkey[] | |
| #^longlreplace[] | |
| #^table2hash_onecolumn[] | |
| #^crossopvars[] | |
| #^three[] | |
| #^badLangAfterCatch[] | |
| #^zeroinstdin[] | |
| #^shifts[] | |
| #^jspace[] | |
| #^hashselfmodification[] | |
| #^emptyTransformResult[] | |
| #^badxdoccreate[] | |
| #^if(-d "CVS"){y}{n} | |
| #^badjunctioncall[] | |
| #^russianindex[] | |
| #^virtualtest[] | |
| #^xml[] | |
| #^mail4[] | |
| #^voidconstructorpass[] | |
| #^$form:CLASS.a=$form:CLASS.a<br> | |
| #^cookie2[] | |
| #^menudelim[] | |
| #^touchittest[] | |
| #^touchittest2[] | |
| #^opauto[] | |
| #^trycontextt[] | |
| #^tfor[] | |
| #^user-foreach-test[] | |
| #^includet[] | |
| #^derived:includet[] | |
| #^fortestsep[] | |
| #^derived:inclass_process_test[] | |
| #$derived[^derived::create[]]^derived.inclass_process_test[] | |
| #^domorigint[] | |
| #^junctiontest2[] | |
| #^junctionselftest[] | |
| #^bad-compiletosystem[] | |
| #^steppedfor[i](1;10;2){$i } | |
| #^file:fullpath[a.gif]<br> | |
| #^file:fullpath[/abs/a.gif]<br> | |
| #$form:a/$form:image-map= | |
| #^foreachform[] | |
| #^selectSingleoct[] | |
| #^compilebug[] | |
| #^badhashcreate[] | |
| #^badsendmail[] | |
| #^keygenedhash[]<br> | |
| #<hr>[$env:HTTP_REFERER] | |
| #$response:Content-TypE[bad] | |
| #^emailhead2[] | |
| #^includet2overridedynamic[] | |
| #^includet2overridestatic[] | |
| #^virtualtest2[] | |
| #^message-id-test[] | |
| #^test_exif[jpg] | |
| #^http_prefix[] | |
| #^http_prefix_table[] | |
| #^http_prefix_xml[] | |
| #^imagefont[] | |
| #^downloadtest[] | |
| #^cachebug[] | |
| #^quickregexatend[] | |
| #^docsamplehttpfileload[] | |
| #^datecreatecolon[] | |
| #^exifdocsample[] | |
| #^rusagetv[] | |
| #^varmethnameconflict[] | |
| #^mimeold[] | |
| #^mimenew[] | |
| #^doctableclonesample[] | |
| #^manyto[] | |
| #^strangewrite[] | |
| #^badexceptiontype[] | |
| #^coookieexpirestest[] | |
| ^fullpathbug[] | |
| @fullpathbug[] | |
| ^file:fullpath[a.gif] | |
| @coookieexpirestest[] | |
| $cookie:test1[ | |
| $.value[1] | |
| $.expires[session] | |
| ] | |
| $cookie:test1= | |
| @badexceptiontype[] | |
| ^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{ | |
| ^void:sql{b} | |
| } | |
| @strangewrite[] | |
| $a[$form:a] | |
| $ax.b[2] | |
| $ax.b= | |
| @manyto[] | |
| ^mail:send[ | |
| $.from[paf@design.ru] | |
| $.to[паф <paf@design.ru>, паф дома <pafhome@design.ru>] | |
| # $.bcc[pafhome@design.ru] | |
| # $.cc[pafhome@design.ru] | |
| $.subject[проверка два в to] | |
| $.text[привет] | |
| ] | |
| @manyto[] | |
| ^mail:send[ | |
| $.from[paf@design.ru] | |
| $.to[паф <paf@design.ru>] | |
| $.bcc[паф дома <pafhome@design.ru>] | |
| # $.cc[pafhome@design.ru] | |
| $.subject[проверка to,bcc] | |
| $.text[привет] | |
| ] | |
| @manyto[] | |
| ^mail:send[ | |
| $.from[paf@design.ru] | |
| $.to[паф <paf@design.ru>] | |
| # $.bcc[паф дома <pafhome@design.ru>] | |
| $.cc[паф дома <pafhome@design.ru>] | |
| $.subject[проверка to,cc] | |
| $.text[привет] | |
| ] | |
| @doctableclonesample[] | |
| $orig[^table::create{name | |
| Вася | |
| Коля | |
| Лена | |
| Маша | |
| }] | |
| #сдвигает текущую запись таблицы from на <Коля> | |
| ^orig.offset(1) | |
| #копирует начиная стекущей записи во from, 10 записей максимум | |
| $copy[^table::create[$orig; | |
| $.offset[cur] | |
| $.limit(10) | |
| ]] | |
| ^copy.menu{$copy.name}[,] | |
| @mimeold[] | |
| ^mail:send[ | |
| $.from[paf@design.ru] | |
| $.to[paf@design.ru] | |
| $.text[1 | |
| 2 | |
| 3] | |
| ] | |
| @mimenew[] | |
| ^mail:send[ | |
| $.from[paf@design.ru] | |
| $.to[paf@design.ru] | |
| $.body[1 | |
| 2 | |
| 3] | |
| ] | |
| @varmethnameconflict[] | |
| $varmethnameconflict[1] | |
| ^varmethnameconflict.format[%03d] | |
| @rusagetv[] | |
| $s[$status:rusage] | |
| ^s.tv_sec.format[%.0f].^s.tv_usec.format[%06.0f] | |
| @exifdocsample[] | |
| $image[^image::measure[jpg/DSC00003.JPG]] | |
| $exif[$image.exif] | |
| ^if($exif){ | |
| Производитель фотоаппарата, модель: $exif.Make $exif.Model<br> | |
| Время съемки: ^exif.DateTimeOriginal.sql-string[]<br> | |
| Выдержка: $exif.ExposureTime секунды<br> | |
| Диафрагма: F$exif.FNumber<br> | |
| Использовалась вспышка: ^if(def $exif.Flash){^if($exif.Flash){да;нет};неизвестно}<br> | |
| }{ | |
| нет EXIF информации<br> | |
| } | |
| @exif_value[value][i] | |
| ^if($value is date){ | |
| ^value.sql-string[] | |
| }{ | |
| ^if($value is hash){ | |
| ^for[i](0;$value-1){$value.$i}[,] | |
| }{ | |
| $value | |
| } | |
| } | |
| @datecreatecolon[] | |
| #$date[^date::create[2002-12-02 14:30]] | |
| #$date[^date::create[2002-12-02]] | |
| #$date[^date::create[2002:12:02 13:30]] | |
| $date[^date::create[2002:12:02]] | |
| #$date[^date::create[12:02]] | |
| ^date.sql-string[] | |
| @docsamplehttpfileload[] | |
| $file[^file::load[text;http://parser.ru/]] | |
| Программное обеспечение сервера: $file.SERVER | |
| <hr> | |
| <pre>$file.text</pre> | |
| @quickregexatend[] | |
| #$subject[xxxabcd] | |
| #^if(^subject.match[^(?>.*)(?<=abcd)]){y;n} | |
| $subject[^for[i](0;1000){xxxxxyyyyy} ] | |
| ^for[j](0;1000){ | |
| #$trimmed[^subject.match[\s+^$][]{}] | |
| #$table[^subject.match[^(.*\S)\s+^$]] | |
| $table[^subject.match[^(.*\S)\s+^$]] | |
| $trimmed[$table.1] | |
| } | |
| ^untaint[html]{"$trimmed"} | |
| #$table[^subject.match[^(.*?)\s+^$]] | |
| #^untaint[html]{"$table.1"} | |
| @cachebug[] | |
| ^cache[test](10){body} | |
| @downloadtest[] | |
| $response:body[^file::load[binary;index.html]] | |
| @imagefont[] | |
| $image[^image::create(200;30;0x00FFFF)] | |
| height(font)=1950<br> | |
| $alph[ ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя0123456789-+=!\"%:,.^;<>?@()^[^]'&*/] | |
| ^^alph.length[]=^alph.length[]<br> | |
| ^eval(1950/^alph.length[])[%.10f] | |
| ^image.font[$alph;font.gif](20) | |
| $text[AПривет*] | |
| ^image.text(0;0)[$text] | |
| $length[^image.length[$text]] | |
| #^image.rectangle(0;50)(2;2)(0x000000) | |
| ^image.rectangle(0;0)($length-1;5)(0x000000) | |
| $response:body[^image.gif[]] | |
| @http_prefix_xml[] | |
| $xdoc[^xdoc::load[http://www.cbr.ru/scripts/XML_daily.asp?^taint[сегодня]; | |
| $.headers[ | |
| $.user-agent[ПАФ] | |
| $.accept-test[$.value[значение]$.with-option[опция]] | |
| ] | |
| ]] | |
| На ^xdoc.selectString[string(/ValCurs/@Date)] | |
| курс валюты | |
| $USD_node[^xdoc.selectSingle[/ValCurs/Valute[CharCode='USD']]] | |
| "^USD_node.selectString[string(Name)]" равен ^USD_node.selectString[string(Value)] | |
| <hr> | |
| <pre>^taint[^xdoc.string[]]</pre> | |
| @http_prefix_table[] | |
| $table[^table::load[nameless;http://www.artlebedev.ru;$.USER-AGENT[paf]]] | |
| ^table.count[] | |
| <hr> | |
| <pre>$table.0</pre> | |
| @http_prefix[] | |
| #$file[^file::load[text;http://www.artlebedev.ru]] | |
| #$file[^file::load[text;http://www.artlebedev.ru;alt]] | |
| #$file[^file::load[text;http://parser3/exif.html; | |
| $file[^file::load[text;http://parser3/none; | |
| $.headers[ | |
| $.USER-AGENT[paf] | |
| ] | |
| ]] | |
| server: $file.SERVER<br> | |
| $file.status | |
| <hr> | |
| <pre>$file.text</pre> | |
| @test_exif[dir] | |
| $file[^file:list[$dir;\.(jpe?g|JPE?G)^$]] | |
| <table border=1> | |
| ^file.menu{ | |
| <tr valign=top> | |
| $image[^image::measure[$dir/$file.name]] | |
| <td>^image.html[$.width(100)$.height(100)]</td> | |
| <td> | |
| $file.name<hr> | |
| $exif[$image.exif] | |
| ^if($exif){ | |
| $keys[^exif._keys[]] ^keys.sort{$keys.key} | |
| ^keys.menu{ | |
| $key[$keys.key] | |
| $value[$exif.$key] | |
| ${key}: <b>^show_exif_value[$value]</b><br> | |
| } | |
| }{ | |
| no EXIF info<br> | |
| } | |
| </td> | |
| </tr> | |
| } | |
| </table> | |
| @show_exif_value[value][i] | |
| ^if($value is date){ | |
| ^value.sql-string[] | |
| }{ | |
| ^if($value is hash){ | |
| ^for[i](0;$value-1){$value.$i}[,] | |
| }{ | |
| $value | |
| } | |
| } | |
| @message-id-test[] | |
| ^mail:send[ | |
| $.from[paf@mail] | |
| $.to[paf@mail] | |
| $.subject[test] | |
| # $.message-id[<1@parser.ru>] | |
| $.Message-id[<2@parser.ru>] | |
| $.subject[проверка] | |
| $.text[мычит!] | |
| ] | |
| @virtualtest2[] | |
| $derived[^derived::create[]] | |
| ^derived.first[] | |
| @includet2overridedynamic[] | |
| includet2overridedynamic:<br> | |
| shold say 'hello in some.p'<br> | |
| <hr> | |
| $derived[^derived::create[]] | |
| ^derived.includet2override[] | |
| @includet2overridestatic[] | |
| includet2overridestatic:<br> | |
| shold say 'hello in derived.p'<br> | |
| because in static classes there's no way to determine derived class (no virtual mech becase of no virtual table)<br> | |
| <hr> | |
| ^derived:includet2override[] | |
| @emailhead2[] | |
| ^mail:send[ | |
| $.charset[koi8-r] | |
| $.from[paf@design.ru] | |
| $.to[paf@mail] | |
| # $.reply-to[^taint[agat] <^taint[ag_7k@mail.ru]>] | |
| $user[^taint[agat]] | |
| $email[^taint[ag_7k@mail.ru]] | |
| $.reply-to[$user $email] | |
| $.subject[test2] | |
| ] | |
| @keygenedhash[] | |
| $table[^table::create{key value | |
| 1 a | |
| 2 b | |
| }] | |
| $hash[^table.hash($table.key*2)] | |
| '$hash.4.value' must be 'b' | |
| @badsendmail[] | |
| ^mail:send[ | |
| $.from[hren < paf@design.ru | |
| >] | |
| $.to[paf@design.ru] | |
| $.subject[test] | |
| ] | |
| @badhashcreate[] | |
| $hash[ | |
| $.ok[1] | |
| ] | |
| $.bad[1] | |
| @compilebug[] | |
| ^a[]^#31= | |
| @selectSingleoct[] | |
| $d[^xdoc::create[doc]] | |
| $element[^d.selectSingle[$nothing]] | |
| @foreachform[] | |
| <a href=index.cgihtml?one&a=1&two&b=2&three?1,2>one</a><br> | |
| <a href=index.cgihtml?one&a=1&two&b=2&three?shit>two</a><br> | |
| ^form:fields.foreach[key;value]{ | |
| $key -- $value | |
| }[<br>] | |
| <hr> | |
| $nameless[$form:tables.nameless] | |
| ^if(def $nameless){ | |
| nameless table -- ^nameless.menu{$nameless.field}[,] | |
| } | |
| ^if(def $form:imap){ | |
| <hr> | |
| IMAP $form:imap.x : $form:imap.y | |
| } | |
| @steppedfor[name;from;to;step;code] | |
| $caller.$name($from) | |
| ^while($caller.$name<=$to){ | |
| $code | |
| ^caller.$name.inc($step) | |
| } | |
| @bad-compiletosystem[] | |
| ^process[$string:CLASS]{@a[] | |
| } | |
| @junctionselftest[] | |
| $derived[^derived::create[]]^derived.explodejunction{$tomain[tomainOK]} | |
| ^$tomain=$tomain | |
| @junctiontest2[] | |
| ^if($if is junction){is junction;not junction}<br> | |
| ^if(def $if){defined;not defined}<br> | |
| @domorigint[] | |
| $xdoc[^xdoc::create[вася]] | |
| ^xdoc.firstChild.setAttribute[name;значение] | |
| $var[$xdoc.firstChild.nodeName] | |
| ^throw[paf;$var] | |
| @fortestsep[][i] | |
| ^for[i](1;3){$i}[,] | |
| @includet[] | |
| ^include[some.p] | |
| ^included_method[2] | |
| @user-foreach-test[][key;value] | |
| ^user-foreach[key;value]{$key=$value<br>} | |
| @user-foreach[key;value;code] | |
| ^for[i](1;10){ | |
| $caller.$key($i) | |
| $caller.$value($i*2) | |
| $code | |
| } | |
| @tfor[][i] | |
| ^for[i](1;10){ | |
| $i | |
| } | |
| @trycontextt[] | |
| ^try{ | |
| ^trycontexttsub[] | |
| }{ | |
| $exception.handled(0) | |
| } | |
| @trycontexttsub[] | |
| ^bad[] | |
| @opauto[] | |
| ^reada[] | |
| @rusage2[] | |
| <hr> | <hr> |
| OK | OK |
| @rusage2[] | |
| $s[$status:rusage] | |
| ^s.tv_sec.format[%.0f].^s.tv_usec.format[%06.0f] | |
| @voidconstructorpass[] | |
| $a[$form:a] | |
| =^form:a.int(1)= | |
| =^a.int(1)= | |
| @russianindex[] | |
| #dir with files with russian-lang names | |
| $where[dir] | |
| $dir[^file:list[$where;\.txt^$]] | |
| ^dir.menu{ | |
| <a href=$where/^untaint[uri]{$dir.name}>$dir.name</a><br> | |
| } | |
| @badjunctioncall[] | |
| ^badjunctioncallinside{code} | |
| @badjunctioncallinside[code] | |
| xx^code[] | |
| @badxdoccreate[] | |
| $xdoc[^xdoc::create[вася]] | |
| #$xdoc[^xdoc::create{<?xml version="1.0" encoding="$request:charset"?><doc>вася</doc>}] | |
| ^xdoc.firstChild.setAttribute[name;значение] | |
| ^xdoc.string[] | |
| @emptyTransformResult[] | |
| $input[^xdoc::create[docBad]] | |
| $sheet[^xdoc::create{<?xml version="1.0"?> | |
| <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> | |
| <xsl:template match="doc"> | |
| output | |
| </xsl:template> | |
| </xsl:stylesheet> | |
| }] | |
| $output[^input.transform[$sheet]] | |
| $response:body[^output.file[]] | |
| @hashselfmodification[] | |
| $hash[ | |
| $.a[1] | |
| $.b[2] | |
| ] | |
| ^hash.foreach[key;value]{ | |
| # $hash.c[1] | |
| $hash.a[1] | |
| } | |
| @touchittest[][i] | |
| $i[before] | |
| ^touchit[] | |
| $i | |
| @touchittest2[] | |
| $i[before] | |
| ^touchit[] | |
| $i | |
| @jspace[] | |
| $a(1) | |
| ^jspace_call{^eval($a*2)} | |
| #$a(2) | |
| #$junction | |
| @jspace_call[param][a] | |
| $a[unrelcfgdfgated] | |
| $junction<br> | |
| $junction.a(2) | |
| $junction<br> | |
| @shifts[] | |
| ^eval(1<<3)<br> | |
| ^eval(8>>2)<br> | |
| #^if(1=1){y;n}<br> | |
| @zeroinstdin[] | |
| #$f[^file::exec[a.pl;$.stdin[$.shit[]]]] | |
| $f[^file::exec[a.pl;$.stdin[^file::load[binary;1z2.txt]]]] | |
| =$f.text= | |
| ^f.save[binary;1z2.out] | |
| @badLangAfterCatch[] | |
| ^try{ | |
| $a[ | |
| тут язык сменился на pass_appended | |
| ^throw[user;test] | |
| и улетело с не тем языком | |
| ] | |
| }{ | |
| $exception.handled(1) | |
| } | |
| 1 2 | |
| @crossopvars[] | |
| #^one[]<hr> | |
| ^two[]<hr> | |
| @table2hash_onecolumn[] | |
| $t[^table::create{a | |
| 1 | |
| 1 | |
| }] | |
| #^t.hash[a] | |
| #^t.hash[a;b] | |
| $h[^t.hash[a][$.distinct(1)]] | |
| $h.1.a | |
| @longlreplace[] | |
| $str1[ мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла мыла ] | |
| $str2[ела] | |
| $str[Мама $str1 раму] | |
| ^str.replace[^table::create[nameless]{мыла $str2}] | |
| @duplicatehashsqlkey[] | |
| ^connect[mysql://mdm:4b833ljq@db-mysql/mdm]{ | |
| $t[^table::sql{select * from news}] | |
| $c[^t.columns[]] | |
| ^c.menu{$c.column}[,] | |
| $h[^hash::sql{select news_type_id, name from news}[$.distinct(1)]] | |
| } | |
| @duplicatetable2hashkey[] | |
| $t[^table::create{a b | |
| 1 2 | |
| 1 3 | |
| }] | |
| #^t.hash[a] | |
| #^t.hash[a;b] | |
| ^t.hash[a][$.distinct[1]] | |
| @menudelim[] | |
| $t[^table::create{a | |
| 1 | |
| 2 | |
| 3 | |
| 4 | |
| 5 | |
| }] | |
| ^t.menu{^if($t.a<3){}{$t.a}}[,] | |
| @fordelim[] | |
| ^for[a](0;6){^if($a<3){}{$a}}[,] | |
| @passpost[] | |
| <form method=post name="test" id="test"> | |
| <textarea name="text" cols=20 rows =6>^taint[html][1 | |
| 2 | |
| 3]</textarea><br> | |
| <input type=submit> | |
| </form> | |
| ^if(def $form:text){ | |
| $a[^file::cgi[a.pl]] | |
| $a.text|$a.status|$a.stderr<hr> | |
| } | |
| @exec[] | |
| #$a[^file::exec[a.cmd]] | |
| $a[^file::cgi[a.cmd]] | |
| $a.text|$a.status|$a.stderr<hr> | |
| @newxor[] | |
| ^eval(1!|2 #примечание()zzz | |
| |0x100)<br> | |
| #^eval(1!||2)<br> | |
| ^if(1!|1){y}{n} | |
| #@method[$bad] | |
| @doubleliterals[] | |
| #^eval(1e-10) | |
| ^eval("1e-20") | |
| @xpath3[] | |
| $constr[^xdoc::create{<?xml version="1.0" encoding="$request:charset" standalone="no"?> <constructor-data><object object_type_id="1" template_id="1" data_process_id="1" is_published="1">проверка</object> <block-list> <block name="date" type="0" label="Дата" is_hide_pub="1" data_type="1"/> <block name="content" type="0" label="Текст" is_hide_pub="1" data_type=""/> </block-list></constructor-data>}] | |
| $objectData[^constr.selectSingle[/constructor-data/object]] | |
| $objectData.nodeType<br> | |
| $objectData.firstChild.nodeValue | |
| @calltest[] | |
| ^calltest2[string] | |
| @calltest2[s] | |
| $s | |
| @ttransformsep[] | |
| $input[^xdoc::load[20020909131046.xml]] | |
| $output[^input.transform[generated.xsl]] | |
| ^output.string[] | |
| @okswitchtest[] | |
| $local[local value] | |
| ^switch[1]{ | |
| ^case[1]{1code $local} | |
| } | |
| @badswitchtest[] | |
| ^switch[1]{ | |
| ^badswitchtestcase[] | |
| } | |
| @badswitchtestcase[][local] | |
| $local[local value] | |
| ^case[1]{1code $local} | |
| @badjunction[] | |
| ^badj1[] | |
| ^badj2[] | |
| @html-почта[] | |
| $переменная[значение] | |
| ^mail:send[ | |
| $.from[paf@mail] | |
| $.to[paf@mail] | |
| $.subject[htmltest1] | |
| $.html{тест$переменная= !} | |
| ] | |
| @грязные-cookie[] | |
| $cookie:a[&] | |
| $cookie:a | |
| @новый-split[] | |
| $abc[a.b.c] | |
| #$table[^abc.split[.]] | |
| #$table[^abc.split[.;l]] | |
| #$table[^abc.split[.;v]] | |
| $table[^abc.split[.;lv]] | |
| ^table.menu{$table.piece}[,] | |
| <hr> | |
| #$table[^abc.split[.;h]] | |
| $table[^abc.split[.;hr]] | |
| $table.0,$table.1,$table.2<br> | |
| @delimiters[] | |
| $a#1[1]<br> | |
| $a#1=<br> | |
| @badcolumntest[] | |
| $table[^table::load[ext.cfg]] | |
| $table.b | |
| @virtualtest[] | |
| $derived[^derived::create[derived create actual param]] | |
| ^derived.test[] | |
| @voidpostest[] | |
| $s[] | |
| ^s.pos[$nothing] | |
| @postest[] | |
| $s[$nothing] | |
| ^s.pos[$nothing] | |
| @cookieexpirestest[] | |
| #$cookie:exptest[1] | |
| #$cookie:exptest[$.value[2] $.expires(+1)] | |
| $response:xxxx[^date::now(+10)] | |
| $response:yyy[$.value[^date::now(+20)]] | |
| $response:yyy[$.value[vvv] $.aaaa[^date::now(+20)]] | |
| @rbodytest[] | |
| $request:body= | |
| <form method=post> | |
| <input type=submit name=paf value=123> | |
| </form> | |
| @staticstest2[] | |
| ^$derived:derived_var=$derived:derived_var<br> | |
| ^$derived:a=$derived:a<br> | |
| $derived:a[changed] ^$derived:a=$derived:a<br> | |
| $derived:derived_var[changed] | |
| ^$derived:derived_var=$derived:derived_var<br> | |
| @staticstest[] | |
| $derived[^derived::create[]] | |
| ^derived.test[] | |
| <hr> | |
| ^$derived.a=$derived.a<br> | |
| ^$derived.x=$derived.x<br> | |
| <hr> | |
| ^if($derived is derived){derived is derived}{error: derived is not derived}<br> | |
| ^if($derived is table){derived is table}{error:derived is not table}<br> | |
| <hr> | |
| ^^eval(^$derived)=^eval($derived)<br> | |
| ^^if(^$derived)=^if($derived){y}{n}<br> | |
| @xdoctypetest[] | |
| $xdoc[^xdoc::create[x]] | |
| ^if($xdoc is xdoc){y}{n} | |
| @xtabletest[] | |
| $xtableo[^xtable::create[]] | |
| ^if($xtableo is table){y}{n} | |
| #^xtableo.columns[] | |
| @monthdays[month] | |
| $from[^date::create(2000;$month;1)] | |
| $to[^date::create($from)] ^to.roll[month](+1) | |
| $result($to-$from) | |
| @badconstructor[] | |
| ^date::now[] | |
| @datesaving[] | |
| $now[^date::now[]] | |
| $now.daylightsaving<br> | |
| $now.yearday<br> | |
| # | |
| $date[^date::create(2002;1;3)] | |
| $date.daylightsaving<br> | |
| $date.yearday | |
| @mail4[] | |
| ^mail:send[ | |
| $.from[paf@mail.design.ru] | |
| $.to[paf@mail.design.ru] | |
| $.subject[^taint[uri][москва=E0_+ ]=2] | |
| $.text[^taint[uri][москва]=] | |
| $.html{<a href=http://there.ru/?city=^taint[uri][Москва]>link</a>} | |
| ] | |
| @processtest[] | |
| $f[^file::load[text;piece.p]] ^process{$f.text} | |
| $ORIGINS(1) | |
| @badpos[] | |
| $s[123] | |
| ^s.mid(0;2) | |
| @wwrapperpass[] | |
| $h[^hash::create[]] | |
| $h.a(1) | |
| ^my_method[^if(1){$h}] | |
| работает. так и должно быть? | |
| @my_method[p] | |
| ^p._count[] | |
| @tableclonelimit[] | |
| $source[^table::create{a | |
| aa | |
| bb | |
| cc}] | |
| ^source.offset(1) | |
| #$dest[^table::create[$source]] | |
| $dest[^table::create[$source;$.offset(2)]] | |
| $dest[^table::create[$source;$.limit(2)]] | |
| $dest[^table::create[$source;$.offset(1)$.limit(1)]] | |
| $dest[^table::create[$source;$.offset(1)$.limit(2)]] | |
| $dest[^table::create[$source;$.offset[cur]$.limit(2)]] | |
| ^dest.menu{$dest.a}[,]<br> | |
| @joinlimit[] | |
| $source[^table::create{a | |
| aa | |
| bb | |
| cc}] | |
| ^source.offset(2) | |
| $dest[^table::create{a | |
| xx | |
| }] | |
| #^dest.join[$source] | |
| #^dest.join[$source;$.offset(2)] | |
| #^dest.join[$source;$.limit(2)] | |
| #^dest.join[$source;$.offset(1)$.limit(1)] | |
| #^dest.join[$source;$.offset(1)$.limit(2)] | |
| #^dest.join[$source;$.offset[cur]$.limit(1)] | |
| ^dest.join[$source;$.limit(0)] | |
| ^dest.menu{$dest.a}[,]<br> | |
| @cgit[] | @cgit[] |
| $f[^file::cgi[showenv.cmd]] | $f[^file::cgi[showenv.cmd]] |
| $f.HELLO=<br> | $f.HELLO=<br> |
| Line 252 $sheet[^xdoc::create{<?xml version="1.0" | Line 1180 $sheet[^xdoc::create{<?xml version="1.0" |
| <xsl:template match="people"> | <xsl:template match="people"> |
| <html> | <html> |
| <head>z</head> | <head> |
| <link type='text/xml' rel='alternate' href='/Default.vsdisco'/> | |
| z</head> | |
| para1=<xsl:copy-of select="^$param1"/> | para1=<xsl:copy-of select="^$param1"/> |
| <xsl:apply-templates/> | <xsl:apply-templates/> |
| <hr/> | <hr/> |
| Line 284 $s[^for[i](0;999){фрагмент }] | Line 1214 $s[^for[i](0;999){фрагмент }] |
| #^normalized.match[фраг][g]{перга} | #^normalized.match[фраг][g]{перга} |
| @sendtests[] | @sendtests[] |
| #^text[] | ^text[] |
| #^html[] | #^html[] |
| #^text-n-html[] | #^text-n-html[] |
| #^file[] | #^file[] |
| #^text-n-file[] | #^text-n-file[] |
| ^text-n-html-n-file[] | #^text-n-html-n-file[] |
| #^backwardcomp[] | #^backwardcomp[] |
| @backwardcomp[] | @backwardcomp[] |
| Line 1145 $t[^table::set{^untaint{^taint[$a-tab-b] | Line 2075 $t[^table::set{^untaint{^taint[$a-tab-b] |
| @mail3[] | @mail3[] |
| ^mail:send[ | ^mail:send[ |
| $.from[Александр Петросян <paf@design.ru>] | $.from[Александр Петросян <paf@mail.design.ru>] |
| $.to[Александр Петросян <paf@design.ru>] | $.to[Александр Петросян <paf@mail.design.ru>] |
| $.subject[проверка4] | $.subject[проверка2] |
| $.body[ | $.body[ |
| $.text[ | $.text[ |
| $.content-type[$.value[text/plain] $.charset[windows-1251]] | $.content-type[$.value[text/plain] $.charset[windows-1251]] |
| $.body[проверка] | $.body[проверка^taint[uri][москва]=] |
| ] | ] |
| $.attachment[ | $.attachment[ |
| $.value[^file::load[text;index.html]] | $.value[^file::load[text;index.html]] |
| Line 1278 $date.year $date.month $date.day | Line 2208 $date.year $date.month $date.day |
| @cookie2[] | @cookie2[] |
| #=$cookie:clientType[$.value[test]]=<br> | #=$cookie:clientType[$.value[test]]=<br> |
| =$cookie:clientType=<br> | =$cookie:CLASS.clientType=<br> |
| @tableset[] | @tableset[] |
| Line 1611 $abc[abc] | Line 2541 $abc[abc] |
| @calendar[] | @calendar[] |
| $year(2002) | $year(2002) |
| $month(8) | $month(12) |
| ${year}-${month}:<br> | ${year}-${month}:<br> |
| $week_days[^date:calendar[rus]($year;$month)] | $week_days[^date:calendar[rus]($year;$month)] |
| <pre> | <pre> |
| ^week_days.menu{^for[wday](0;6){^if($week_days.$wday){$week_days.$wday; ^; ^;} }=$week_days.week=<br>} | ^week_days.menu{^for[wday](0;6){^if($week_days.$wday){$week_days.$wday; ^; ^;} }=$week_days.week,$week_days.year=<br>} |
| </pre> | </pre> |
| @thash[] | @thash[] |
| Line 1652 $response:body[^pict.gif[]] | Line 2582 $response:body[^pict.gif[]] |
| @mail2[] | @mail2[] |
| ^mail:send[ | ^mail:send[ |
| $.message-id[<6615%1@parser.ru>] | |
| $.content-type[$.value[text/plain] $.charset[windows-1251]] | $.content-type[$.value[text/plain] $.charset[windows-1251]] |
| $.from[Александр Петросян <paf@design.ru>] | $.from[Александр Петросян <paf@design.ru>] |
| $.to[Александр Петросян <paf@design.ru>] | $.to[Александр Петросян <paf@design.ru>] |
| $.subject[проверка] | $.subject[проверка проверка] |
| $.body[проверка] | $.text[проверка] |
| ] | ] |
| @cookie[] | @cookie[] |
| $env:HTTP_COOKIE<br> | #$env:HTTP_COOKIE<br> |
| #$cookie:переменная[test тест ТЕСТ2] | #$cookie:переменная[test тест ТЕСТ2] |
| =$cookie:переменная=<br> | =$cookie:переменная=<br> |
| Line 1726 $s[abcАБВ] | Line 2657 $s[abcАБВ] |
| 3] | 3] |
| ] | ] |
| @exec[] | |
| $a[^file::exec[fc.exe;;a;b]] | |
| $a.status|$a.stderr<hr> | |
| @fori[][i] | @fori[][i] |
| ^for[i](1;3){... =$i= ...} | ^for[i](1;3){... =$i= ...} |
| Line 1749 $xdoc[^xdoc::set{<?xml version="1.0" enc | Line 2676 $xdoc[^xdoc::set{<?xml version="1.0" enc |
| @xdata[] | @xdata[] |
| #$response:content-type[$.value[text/html] $.charset[windows-1251]] | #$response:content-type[$.value[text/html] $.charset[windows-1251]] |
| $xdoc[^xdoc::set{^process{<?xml version="1.0" encoding="windows-1251"?> | $xdoc[^xdoc::create{<?xml version="1.0" encoding="windows-1251"?> |
| <!--DOCTYPE people SYSTEM "D:\Y\parser3project\parser3\src\www\htdocs\people.dtd"--> | <!--DOCTYPE people SYSTEM "D:\Y\parser3project\parser3\src\www\htdocs\people.dtd"--> |
| <people> | <people> |
| <man id="1" имя="word слово"> | <man id="1" имя="word слово"> |
| Line 1759 $xdoc[^xdoc::set{^process{<?xml version= | Line 2686 $xdoc[^xdoc::set{^process{<?xml version= |
| <name>ПИФ^taint[&]</name> | <name>ПИФ^taint[&]</name> |
| </man> | </man> |
| </people> | </people> |
| }}] | }] |
| @xml[] | @xml[] |
| ^xdata[] | ^xdata[] |