--- parser3/operators.ru.txt 2003/04/15 06:44:33 1.107.2.1 +++ parser3/operators.ru.txt 2003/04/11 15:00:04 1.111 @@ -301,8 +301,9 @@ odbc c:\drives\y\parser3project\odbc\ логическое значение равно "не пуста?" числовое значение равно count[] !^table::create[[nameless]]{данные} старое имя "set" - !^table::create[table][[$.limit(1) $.offset(5) $.offset[cur]]] + !^table::create[table][[$.limit(1) $.offset(5) $.offset[cur] $.reverse(1)]] клонирует таблицу + reverse << сзаду на перёд (работает пока только в locate, в table::create НЕ работает) !^table::load[[nameless;]путь[;опции]] !если не nameless, названия колонок берутся из первой строки !пустые строки, и строки в первой колонке содержащие '#', игнорируются @@ -326,11 +327,15 @@ odbc c:\drives\y\parser3project\odbc\ !^таблица.join[таблица][$.limit(1) $.offset(5) $.offset[cur]] - добавляет записи из таблицы. таблицы должны иметь одинаковую структуру. !^таблица.flip[] выдаёт транспонированную, надо куда-то сложить, потом пользовать - !^таблица.locate[поле;значение] передвигает текущую строку, если найдёт. выдаёт bool - !^таблица.locate(логическое выражение) передвигает текущую строку, если найдёт. выдаёт bool - !^таблица.hash{[поле]|{код}|(выражение)}[[поле значений|table поля значений]][[$.distinct(1)]] + !^таблица.locate[поле;значение][[$.limit(1) $.offset(5) $.offset[cur] $.reverse(1)]] + передвигает текущую строку, если найдёт. выдаёт bool + !^таблица.locate(логическое выражение)[[$.limit(1) $.offset(5) $.offset[cur] $.reverse(1)]] + передвигает текущую строку, если найдёт. выдаёт bool + !^таблица.hash{[поле]|{код}|(выражение)}[[поле значений|table поля значений]][[$.distinct(1) $.distinct[tables]]] значением $hash.ключ будет hash в котором поля значений будут ключами поля значений могут быть не указаны, тогда ими будут все столбцы, включая ключевой + если distinct содержит true, то не будет ошибки при повторяющихся ключах + если distinct содержит tables, то будет создан hash из таблиц, содержащих строки с ключом !^таблица.columns[]+ таблица из одного столбца $column !$отобранное[^таблица.select(выражение)] = таблица из тех же столбцов и строк, у которых условие совпало $adults[^man.select($man.age>=18)] @@ -938,16 +943,16 @@ xdoc(xnode) !при загрузке файла (file::load, table::load, xdoc::load) можно указать такое имя файла: !http://domain/document?params - !для http:// можно, указать опции: + !а также, возможно, указать опции: !$.method[GET|HEAD] !$.timeout(3) << в секундах, по-умолчанию =2 !$.headers[ ! $поле[значение] << значение имеет формат, как $response:ЗАГОЛОВОК !] !по-умолчанию, user-agent=parser3 - !для не http:// можно, указать опции: - !$.offset(o) - !$.limit(l) + !по-умолчанию, получение http status != 200 >> создает http.status ошибку, + !это можно отключить, передав + !$.any-status(1) !file::load в дополнительные поля записывает ПОЛЕ:значение (имена полей ответа заглавными буквами) !системные типы ошибок: