Diff for /parser3/operators.ru.txt between versions 1.205 and 1.211

version 1.205, 2008/02/14 11:02:48 version 1.211, 2008/07/18 08:25:13
Line 62  Xне сделано, видимо, не будет сделано Line 62  Xне сделано, видимо, не будет сделано
     !^use[модуль]      !^use[модуль]
     !^try{      !^try{
         ...          ...
         !^throw[sql.connect;вася;болван] // был ^error[текст]          !^throw[sql.connect[;вася[;болван]]] // был ^error[текст]
           !^throw[
                   $.type[sql.connect]
                   $.source[вася]
                   $.comment[болван]
           ]
         ...          ...
     }{      }{
         ^if($exception.type eq sql){          ^if($exception.type eq "sql"){
             $exception.handled(1)  ^rem{флаг, что exception обработан}              $exception.handled(1|true)  ^rem{флаг, что exception обработан}
             ....              ....
         }          }
                   
         ^switch($exception.type){          ^switch[$exception.type]{
             ^case[sql;mail]{              ^case[sql;mail]{
                 $exception.handled(1)                  $exception.handled(1)
                 код, обрабатывающий sql ошибку                  код, обрабатывающий sql ошибку
Line 81  Xне сделано, видимо, не будет сделано Line 86  Xне сделано, видимо, не будет сделано
             }              }
             ^case[DEFAULT]{              ^case[DEFAULT]{
                 код, обрабатывающий другую ошибку                  код, обрабатывающий другую ошибку
                 ^throw[$exception] << re-throw                  ^throw[$exception] << re-throw // DON'T! It's default behaviour!
             }              }
         }          }
     }      }
Line 107  Xне сделано, видимо, не будет сделано Line 112  Xне сделано, видимо, не будет сделано
             ClientCharset=parser-charset << charset in which parser thinks client works              ClientCharset=parser-charset << charset in which parser thinks client works
             charset=cp1251_koi8&              charset=cp1251_koi8&
             timeout=3&              timeout=3&
             compress=1&              compress=0&
             named_pipe=1&              named_pipe=1&
               multi_statements=1& allow execute more then one query in one parser :sql{} request
             autocommit=1              autocommit=1
             autocommit если выставить в 0, будет делать commit/rollback              autocommit если выставить в 0, будет делать commit/rollback
   
Line 133  Xне сделано, видимо, не будет сделано Line 139  Xне сделано, видимо, не будет сделано
         !odbc://DSN=dsn^;UID=user^;PWD=password^;ClientCharset=parser-charset          !odbc://DSN=dsn^;UID=user^;PWD=password^;ClientCharset=parser-charset
             ClientCharset << charset in which parser thinks client works              ClientCharset << charset in which parser thinks client works
                           
         !sqlite://database          !sqlite://DBfile?
                   ClientCharset=parser-charset& << charset in which parser thinks client works
                   autocommit=1
   
         для работы connect нужно, чтобы заранее(рекомендуется в системном конфигурационном auto.p)          для работы connect нужно, чтобы заранее(рекомендуется в системном конфигурационном auto.p)
         была определена таблица          была определена таблица
 #sql drivers  #sql drivers
 $SQL[  $SQL[
     $.drivers[^table::create{protocol    driver    client      $.drivers[^table::create{protocol   driver  client
 mysql    /www/parser3/libparser3mysql.so    /usr/local/lib/mysql/libmysqlclient.so  mysql   /www/parser3/libparser3mysql.so /usr/local/lib/mysql/libmysqlclient.so
 pgsql    /www/parser3/libparser3pgsql.so    /usr/local/pgsql/lib/libpq.so  pgsql   /www/parser3/libparser3pgsql.so /usr/local/pgsql/lib/libpq.so
 oracle    /www/parser3/libparser3oracle.so    /u01/app/oracle/product/8.1.5/lib/libclntsh.so?ORACLE_HOME=/u01/app/oracle/product/8.1.5&ORA_NLS33=/u01/app/oracle/product/8.1.5/ocommon/nls/admin/data  oracle  /www/parser3/libparser3oracle.so        /u01/app/oracle/product/8.1.5/lib/libclntsh.so?ORACLE_HOME=/u01/app/oracle/product/8.1.5&ORA_NLS33=/u01/app/oracle/product/8.1.5/ocommon/nls/admin/data
 sqlite    /www/parser3/libparser3sqlite.so    /usr/local/sqlite/lib/sqlite3.so  sqlite  /www/parser3/libparser3sqlite.so        /usr/local/sqlite/lib/sqlite3.so
 odbc    c:\drives\y\parser3project\odbc\debug\parser3odbc.dll  odbc    c:\drives\y\parser3project\odbc\debug\parser3odbc.dll
 }]  }]
 ]  ]
         !в таблице у oracle в столбце клиентской библиотеки          !в таблице у oracle в столбце клиентской библиотеки
Line 323  odbc    c:\drives\y\parser3project\odbc\ Line 331  odbc    c:\drives\y\parser3project\odbc\
     !^строка.left(N)      !^строка.left(N)
     !^строка.right(N)      !^строка.right(N)
     !^строка.pos[подстрока]      !^строка.pos[подстрока]
       !^строка.pos[подстрока](позиция, с которой ищем)
         <0 = не найдено          <0 = не найдено
     !^строка.replace[$таблица_подстановок_строка_на_строку]      !^строка.replace[$таблица_подстановок_строка_на_строку]
     !^строка.save[[append;]путь]      !^строка.save[[append;]путь]
Line 770  odbc    c:\drives\y\parser3project\odbc\ Line 779  odbc    c:\drives\y\parser3project\odbc\
     !^math:crc32[string]      !^math:crc32[string]
        вычисляет crc32 строки         вычисляет crc32 строки
     !^math:sha1[string]      !^math:sha1[string]
     !^math:long2ip(long)  
   !inet
       !^inet:ntoa(long)
       !^inet:aton[IP]
   
 !date  !date
     !время типа time можно использовать в выражениях, подставляет       !время типа time можно использовать в выражениях, подставляет 
Line 802  odbc    c:\drives\y\parser3project\odbc\ Line 814  odbc    c:\drives\y\parser3project\odbc\
         столбцы: year, month, day, weekday          столбцы: year, month, day, weekday
     !^date:last-day(год;месяц) вернёт последний день месяца      !^date:last-day(год;месяц) вернёт последний день месяца
     !^дата.last-day[] вернёт последний день месяца $дата      !^дата.last-day[] вернёт последний день месяца $дата
       !^дата.gmt-string[]  Fri, 23 Mar 2001 09:32:23 GMT
   
   
 xdoc(xnode)  xdoc(xnode)
Line 836  xdoc(xnode) Line 849  xdoc(xnode)
     ::sql{...}      ::sql{...}
     !::create[[URI]]{<?xml?><string/>} старое имя 'set'      !::create[[URI]]{<?xml?><string/>} старое имя 'set'
     !::create[[URI]][qualifiedName]      !::create[[URI]][qualifiedName]
     !::create[file] can be usable: $f[^file::load[binary;http://;some http options here...]]$x[^xdoc::create[$f]]  
       URI default = disk path to requested document        URI default = disk path to requested document
       для каталогов конечный / обязателен        для каталогов конечный / обязателен
       !::create[file] can be usable:
           $f[^file::load[binary;http://;some HTTP options here...]]
           $x[^xdoc::create[$f]]
     !::load[file.xml[;опции]]      !::load[file.xml[;опции]]
     !.transform[rules.xsl|xdoc][[params hash]] выдаёт dom      !.transform[rules.xsl|xdoc][[params hash]] выдаёт dom
         шаблон кэшируется, кэш обновляется при изменении даты файла шаблона,          шаблон кэшируется, кэш обновляется при изменении даты файла шаблона,
Line 1095  DATA::=string | file | hash Line 1110  DATA::=string | file | hash
     !а также, возможно, указать опции:      !а также, возможно, указать опции:
         !$.method[GET|POST|HEAD]          !$.method[GET|POST|HEAD]
         !$.timeout(3)  << в секундах, по-умолчанию =2          !$.timeout(3)  << в секундах, по-умолчанию =2
           !$.cookies[
                   $.имя[значение]
           ]
         !$.headers[          !$.headers[
         !    $поле[значение] << значение имеет формат, как $response:ЗАГОЛОВОК          !    $.поле[значение] << значение имеет формат, как $response:ЗАГОЛОВОК
         !]          !]
         $.enctype[multipart/form-data]          $.enctype[multipart/form-data]
         $.form[          $.form[

Removed from v.1.205  
changed lines
  Added in v.1.211


E-mail: