|
|
| version 1.229, 2009/11/10 03:16:23 | version 1.230, 2010/08/04 15:20:31 |
|---|---|
| Line 56 Xне сделано, видимо, не будет сделано | Line 56 Xне сделано, видимо, не будет сделано |
| !^if(условие){когда да}{когда нет} | !^if(условие){когда да}{когда нет} |
| !^if(условие1){да}[(условие2){да}[(условие2){да}[...]]]{нет} -- количество доп. условий не ограничено (в общем elseif это :) | |
| !^switch[значение]{^case[вариант1[;вариант2...]]{действие}^case[DEFAULT]{действие по умолчанию}} | !^switch[значение]{^case[вариант1[;вариант2...]]{действие}^case[DEFAULT]{действие по умолчанию}} |
| !^while(условие){тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] | !^while(условие){тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] |
| !^for[i](0;4){тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] | !^for[i](0;4){тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] |
| Line 140 Xне сделано, видимо, не будет сделано | Line 141 Xне сделано, видимо, не будет сделано |
| ClientCharset << charset in which parser thinks client works | ClientCharset << charset in which parser thinks client works |
| !sqlite://DBfile? | !sqlite://DBfile? |
| ClientCharset=parser-charset& << charset in which parser thinks client works | ClientCharset=parser-charset& << charset in which parser thinks client works |
| autocommit=1 | autocommit=1 |
| для работы connect нужно, чтобы заранее(рекомендуется в системном конфигурационном auto.p) | для работы connect нужно, чтобы заранее(рекомендуется в системном конфигурационном auto.p) |
| была определена таблица | была определена таблица |
| Line 360 odbc c:\drives\y\parser3project\odbc\deb | Line 361 odbc c:\drives\y\parser3project\odbc\deb |
| !$.separator[^#09] | !$.separator[^#09] |
| !$.encloser["] по-умолчанию, нет. | !$.encloser["] по-умолчанию, нет. |
| !^table::sql{query}[[$.limit(2) $.offset(4) $.bind[hash] todo:$.default{ ^table::create[...] }]] | !^table::sql{query}[[$.limit(2) $.offset(4) $.bind[hash] todo:$.default{ ^table::create[...] }]] |
| bind привязывает переменные в запросе к их значениям | bind привязывает переменные в запросе к их значениям |
| пока реализован только для oracle | пока реализован только для oracle |
| в запросе надо написать ":имя" | в запросе надо написать ":имя" |
| в параметре bind передать hash, из которого возьмётся(или куда запишется) значение | в параметре bind передать hash, из которого возьмётся(или куда запишется) значение |
| !^таблица.save[[nameless|append;]путь[;опции, см. load]] | !^таблица.save[[nameless|append;]путь[;опции, см. load]] |
| !$таблица.поле | !$таблица.поле |
| !$таблица.fields из named таблицы выдаёт текущую запись как Hash | !$таблица.fields из named таблицы выдаёт текущую запись как Hash |
| Line 425 odbc c:\drives\y\parser3project\odbc\deb | Line 426 odbc c:\drives\y\parser3project\odbc\deb |
| !^хеш.foreach[key;value]{тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] | !^хеш.foreach[key;value]{тело}[[разделитель]|{разделитель который выполняется перед непустым очередным не первым телом}] |
| !^хеш.delete[ключ] удалить ключ | !^хеш.delete[ключ] удалить ключ |
| !^хеш.contain[ключ] - существует ли в хеше ключ (bool) | !^хеш.contain[ключ] - существует ли в хеше ключ (bool) |
| !^хэш._at[first|last] | |
| !^хэш._at([-]N) | |
| доступ к заданным элементам упорядоченного хеша | |
| !hashfile | !hashfile |
| !^hashfile::open[filename] | !^hashfile::open[filename] |
| Line 509 odbc c:\drives\y\parser3project\odbc\deb | Line 513 odbc c:\drives\y\parser3project\odbc\deb |
| !$response:headers накопленные поля | !$response:headers накопленные поля |
| !$response:body[DATA] замещает стандартный ответ | !$response:body[DATA] замещает стандартный ответ |
| !$response:download[DATA] замещает стандартный ответ, | !$response:download[DATA] замещает стандартный ответ, |
| выставляет флаг, заставляющий browser предложить download | выставляет флаг, заставляющий browser предложить download |
| !$response:status | !$response:status |
| !^response:clear[] забыть все заданные response поля | !^response:clear[] забыть все заданные response поля |
| !$response:charset | !$response:charset |
| Line 584 odbc c:\drives\y\parser3project\odbc\deb | Line 588 odbc c:\drives\y\parser3project\odbc\deb |
| $.message#[MESSAGE] (message, message2, ...) | $.message#[MESSAGE] (message, message2, ...) |
| !^mail:send[ | !^mail:send[ |
| $.options[-odd] | $.options[-odd] |
| unix: строка, которая будет добавлена к команде запуска sendmail | unix: строка, которая будет добавлена к команде запуска sendmail |
| -odd означает "быстро поставь в очередь без проверки email" | -odd означает "быстро поставь в очередь без проверки email" |
| win32: игнорируется | win32: игнорируется |
| $.charset[кодировка заголовка и текстовых блоков] | $.charset[кодировка заголовка и текстовых блоков] |
| $.any-header-field | $.any-header-field |
| $.text[string] | $.text[string] |
| Line 778 odbc c:\drives\y\parser3project\odbc\deb | Line 782 odbc c:\drives\y\parser3project\odbc\deb |
| !^файл.sql-string[] внутри ^connect даст правильно escaped строку, которую можно в запрос отдать | !^файл.sql-string[] внутри ^connect даст правильно escaped строку, которую можно в запрос отдать |
| X^file::sql[[имя_файла_для_download]]{} | X^file::sql[[имя_файла_для_download]]{} |
| !^file::sql{}[[ | !^file::sql{}[[ |
| $.name[имя_файла_для_download] | $.name[имя_файла_для_download] |
| $.content-type[пользовательский content-type] | $.content-type[пользовательский content-type] |
| ]] | ]] |
| результат запроса должен быть "одна строка". | результат запроса должен быть "одна строка". |
| колонки: | колонки: |
| первая колонка - данные | первая колонка - данные |
| если есть вторая - это имя файла | если есть вторая - это имя файла |
| если есть третья - это content-type | если есть третья - это content-type |
| !^файл.base64[] encode | !^файл.base64[] encode |
| !^file:base64[имя файла] encode | !^file:base64[имя файла] |
| !^file::base64[encoded string] decode | encode |
| !^file::base64[encoded string] | |
| !^file::base64[mode;имя файла;encoded string[;$.content-type[...]]] | |
| decode | |
| !^file:crc32[имя файла] | !^file:crc32[имя файла] |
| вычисляет crc32 файла с указанным именем | вычисляет crc32 файла с указанным именем |
| !^файл.crc32[] | !^файл.crc32[] |
| вычисляет crc32 объекта | вычисляет crc32 объекта |
| !^файл.md5[] | !^файл.md5[] |
| !^file:md5[имя файла] | !^file:md5[имя файла] |
| выдает digest файла, длиной 16 байт в виде строки, | выдает digest файла, длиной 16 байт в виде строки, |
| где байты digest выданы в hex виде, впритык, в нижнем регистре | где байты digest выданы в hex виде, впритык, в нижнем регистре |
| Line 1100 xdoc(xnode) | Line 1107 xdoc(xnode) |
| !$status:memory hash | !$status:memory hash |
| !used | !used |
| Includes some pages that were allocated but never written. | Includes some pages that were allocated but never written. |
| !free | !free |
| Line 1108 xdoc(xnode) | Line 1115 xdoc(xnode) |
| Return the number of bytes allocated since the last collection. | Return the number of bytes allocated since the last collection. |
| !ever_allocated_since_start | !ever_allocated_since_start |
| Return the total number of bytes [EVER(c)PAF] allocated in this process. | Return the total number of bytes [EVER(c)PAF] allocated in this process. |
| Never decreases. | Never decreases. |
| !$status:pid process id | !$status:pid process id |
| !$status:tid thread id | !$status:tid thread id |