--- parser3/operators.ru.txt 2002/11/25 15:07:29 1.100 +++ parser3/operators.ru.txt 2003/04/15 07:16:43 1.107.2.2 @@ -309,7 +309,7 @@ odbc c:\drives\y\parser3project\odbc\ !^table::sql{query}[[$.limit(2) $.offset(4) todo:$.default{ ^table::create[...] }]] !^таблица.save[[nameless|append;]путь] !$таблица.поле - !$таблица.fields+ из named таблицы выдаёт текущую запись как Hash + !$таблица.fields из named таблицы выдаёт текущую запись как Hash !^таблица.menu{тело}[разделитель] !^таблица.offset[[whence]](5) сдвигает; без параметра - печатает offset !whence=cur|set @@ -344,6 +344,7 @@ odbc c:\drives\y\parser3project\odbc\ !$hash.ключ !_default - специальный ключ, если задан, то при обращении по ключу, которому нет соответствия, выдаётся _default значение + !$hash.fields выдает $hash. чтобы класс hash был чуть больше похож на класс table !^hash::create[[!copy_from_hash|Xcopy_from_hashfile]] создаёт новый hash, копию старого !^hash.add[слагаемое] @@ -402,6 +403,8 @@ odbc c:\drives\y\parser3project\odbc\ !значение поля или атрибута может быть string или date ! если дата, она будет преобразована к формату "Sun, 25-Aug-2002 12:03:45 GMT" !$response:body[DATA] замещает стандартный ответ + !$response:download[DATA] замещает стандартный ответ, + выставляет флаг, заставляющий browser предложить download !$response:status !^response:clear[] забыть все заданные response поля !$response:charset @@ -571,6 +574,7 @@ Xhashfile !$image.exif.DateTime & co [полный список см. http://www.ba.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html] !числа типа int/double, + !даты типа date !перечисления в виде hash с ключами 0..count-1 !$картинка.src .width .height !$картинка.line-width число=ширина линий @@ -654,7 +658,11 @@ math !^math:degrees radians !^math:pow sqrt !^math:random(ширина диапазона) - ^math:GUID {C2C0983C-E26E-4169-BD07-77ECE9405BA5} + ^math:GUID[] + C2C0983C-E26E-4169-BD07-77ECE9405BA5 + !^math:md5[string] + выдает digest строки, длиной 16 байт в виде строки, + где байты digest выданы в hex виде, впритык, в нижнем регистре !^math:crypt[password;salt] salt prefix $apr1$ вызывает встроенный MD5 алгоритм, если нет тела salt, оно создаётся случайным @@ -877,11 +885,6 @@ xdoc(xnode) url time url time url time - !$status:db hash - !cache hash db_home=>tables table - name time users - name time users - name time users !$status:stylesheet !cache table file time @@ -939,12 +942,16 @@ xdoc(xnode) !при загрузке файла (file::load, table::load, xdoc::load) можно указать такое имя файла: !http://domain/document?params - !а также, возможно, указать опции: + !для http:// можно, указать опции: !$.method[GET|HEAD] !$.timeout(3) << в секундах, по-умолчанию =2 !$.headers[ - ! $поле[значение] << по-умолчанию, user-agent=parser3 + ! $поле[значение] << значение имеет формат, как $response:ЗАГОЛОВОК !] + !по-умолчанию, user-agent=parser3 + !для не http:// можно, указать опции: + !$.offset(o) + !$.limit(l) !file::load в дополнительные поля записывает ПОЛЕ:значение (имена полей ответа заглавными буквами) !системные типы ошибок: @@ -970,7 +977,9 @@ xdoc(xnode) !email.send $MAIL.sendmail[/shit] sendmail not executable !http.host ^file::load[http://notfound/there] host not found !http.connect ^file::load[http://not_accepting/there] host found, but do not accept connections + !http.timeout ^file::load[http://host/doc] whole load operation failed to complete in # seconds !http.response ^file::load[http://ok/there] host found, connection accepted, bad answer + !http.status ^file::load[http://ok/there] host found, connection accepted, status!=200 !нужно выключить русский apache: CharsetDisable on