Diff for /parser3/www/htdocs/Attic/index.html between versions 1.131 and 1.182

version 1.131, 2002/09/10 08:41:01 version 1.182, 2002/11/26 09:02:15
Line 1 Line 1
 @USE  @USE
 /derived.p  /derived.p
   /operators.p
   
 @auto[filespec]  @auto[filespec]
 $selffilespec[$filespec]  $selffilespec[$filespec]
Line 11  $response:charset[windows-1251] Line 12  $response:charset[windows-1251]
 #$response:charset[empty]  #$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[]
 #$a(123)  #$a(123)
Line 22  $response:charset[windows-1251] Line 26  $response:charset[windows-1251]
 #^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}[  #       ^int:sql{select news_id from news where news_id=-1}[
 ##      $.default{2}  #       $.default{2}
 #       ]<br>  #       ]<br>
 #    ^hash::sql{bad}  #    ^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}]
Line 32  $response:charset[windows-1251] Line 36  $response:charset[windows-1251]
 #       ^process{^string:sql{select '1  #       ^process{^string:sql{select '1
 #       ^^hello[]' }]   }  #       ^^hello[]' }]   }
 #       ^double:sql{select '2*' ^; }  #       ^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 99  $response:charset[windows-1251] Line 105  $response:charset[windows-1251]
 #^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 144  $response:charset[windows-1251] Line 149  $response:charset[windows-1251]
 #^ford[]  #^ford[]
 #^tif[]  #^tif[]
 #^image[]  #^image[]
 #^mail2[]  
 #^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 205  $response:charset[windows-1251] Line 207  $response:charset[windows-1251]
 #^badpos[]  #^badpos[]
 #^processtest[]  #^processtest[]
 #^mail3[]  #^mail3[]
 #^mail4[]  
 #^datesaving[]  #^datesaving[]
 #^badconstructor[]  #^badconstructor[]
 #^calendar[]  #^calendar[]
Line 219  $response:charset[windows-1251] Line 220  $response:charset[windows-1251]
 #^cookieexpirestest[]  #^cookieexpirestest[]
 #^postest[]  #^postest[]
 #^voidpostest[]  #^voidpostest[]
 #^virtualtest[]  
 #^badcolumntest[]  #^badcolumntest[]
 #^delimiters[]  #^delimiters[]
 #^новый-split[]  #^новый-split[]
Line 228  $response:charset[windows-1251] Line 228  $response:charset[windows-1251]
 #^badswitchtest[]  #^badswitchtest[]
 #^okswitchtest[]  #^okswitchtest[]
 #^cgit[]  #^cgit[]
 ^ttransformsep[]  #^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[]
   
   @http_prefix_xml[]
    $xdoc[^xdoc::load[http://www.cbr.ru/scripts/XML_daily.asp?date_req=02/03/2002;
   #       $.method[HEAD]
           $.headers[
                   $.user-agent[1]
           ]
   ]]
   
   <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 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[]  @ttransformsep[]
 $input[^xdoc::load[20020909131046.xml]]  $input[^xdoc::load[20020909131046.xml]]
 $output[^input.transform[generated.xsl]]  $output[^input.transform[generated.xsl]]
Line 368  $date.yearday Line 857  $date.yearday
 ^mail:send[  ^mail:send[
         $.from[paf@mail.design.ru]          $.from[paf@mail.design.ru]
         $.to[paf@mail.design.ru]          $.to[paf@mail.design.ru]
         $.subject[^taint[uri][москва]=2]          $.subject[^taint[uri][москва=E0_+ ]=2]
         $.text[^taint[uri][москва]=]          $.text[^taint[uri][москва]=]
         $.html{<a href=http://there.ru/?city=^taint[uri][Москва]>link</a>}          $.html{<a href=http://there.ru/?city=^taint[uri][Москва]>link</a>}
 ]  ]
Line 483  $sheet[^xdoc::create{<?xml version="1.0" Line 972  $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 1509  $date.year  $date.month  $date.day Line 2000  $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 1883  $response:body[^pict.gif[]] Line 2374  $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[]
Line 1957  $s[abcАБВ] Line 2449  $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 1980  $xdoc[^xdoc::set{<?xml version="1.0" enc Line 2468  $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 1990  $xdoc[^xdoc::set{^process{<?xml version= Line 2478  $xdoc[^xdoc::set{^process{<?xml version=
             <name>ПИФ^taint[&]</name>              <name>ПИФ^taint[&]</name>
                 </man>                  </man>
 </people>  </people>
 }}]  }]
   
 @xml[]  @xml[]
 ^xdata[]  ^xdata[]

Removed from v.1.131  
changed lines
  Added in v.1.182


E-mail: