--- parser3/operators.txt 2007/04/20 15:48:06 1.194 +++ parser3/operators.txt 2007/09/17 15:16:44 1.200 @@ -308,11 +308,11 @@ odbc c:\drives\y\parser3project\odbc\ !^строка.match[шаблон][опции поиска]{замена} опции поиска+= g заменить все вхождения, а не одно - !^строка.split[разделитель][[lrhv]] + !^строка.split[разделитель][[lrhv]][[название столбца для вертикального разбиения]] l слева направо [default] r справа налево h nameless таблица с ключами 0, 1, 2, ... - v таблица из столбца piece [default] + v таблица из 1 столбца 'piece' или как передадут [default] !^строка.{l|r}split[разделитель] таблица из столбца $piece оставлен для совместимости !^строка.upper|lower[] @@ -382,7 +382,7 @@ odbc c:\drives\y\parser3project\odbc\ поля значений могут быть не указаны, тогда ими будут все столбцы, включая ключевой если distinct содержит true, то не будет ошибки при повторяющихся ключах если distinct содержит tables, то будет создан hash из таблиц, содержащих строки с ключом - !^таблица.columns[]+ таблица из одного столбца $column + !^таблица.columns[[название столбца]]+ таблица из одного столбца 'column' или как передадут !$отобранное[^таблица.select(выражение)] = таблица из тех же столбцов и строк, у которых условие совпало $adults[^man.select($man.age>=18)] ^таблица.color[цвет1;цвет2] @@ -413,6 +413,7 @@ odbc c:\drives\y\parser3project\odbc\ !^хеш._count[] !^хеш.foreach[key;value]{тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] !^хеш.delete[ключ] удалить ключ + !^хеш.contain[ключ] - существует ли в хеше ключ (bool) !hashfile !^hashfile::open[filename] @@ -462,6 +463,7 @@ odbc c:\drives\y\parser3project\odbc\ !значение поля expires может быть 'session', date, или число дней(0дней=session) ! если дата, она будет преобразована к формату "Sun, 25-Aug-2002 12:03:45 GMT" ! можно устанавливать bool свойства, например $.secure(true), $.httponly(true) + !$cookie:fields = hash со всеми cookies !request @@ -766,6 +768,8 @@ odbc c:\drives\y\parser3project\odbc\ другие salt читайте документацию по функции OS 'crypt'. !^math:crc32[string] вычисляет crc32 строки + !^math:sha1[string] + !^math:long2ip(long) !date !время типа time можно использовать в выражениях, подставляет @@ -938,7 +942,8 @@ xdoc(xnode) !Introduced in DOM Level 2: !Node importNode(in Node importedNode, in boolean deep) raises(DOMException) - !NodeList getElementsByTagNameNS(in DOMString namespaceURI, in DOMString localName); + !NodeList getElementsByTagNameNS(in DOMString namespaceURI, in DOMString localName) + !boolean hasAttributes() !XPath: !^node.select[xpath/query/expression] = array of nodes, @@ -1140,6 +1145,9 @@ DATA::=string | file | hash Xесли в MAIN будет определён флаг $ORIGINS(1) то вместо обычного вывода страницы будет выдан список фрагментов результата с указанием их происхождения +!если в MAIN определён $SIGPIPE(1) то в случае, если обработка была прервана пользователем, сообщение + об этом будет записано в parser3.log (раньше оно всегда писалось) + !если описание метода содержит локальную переменную result в явном виде (есть и неявная переменная) то код вывода строковых литералов не попадает в конечный байт-код,