parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

беты обновлены (beta10) [updated]

Misha v.3 04.07.2008 16:58 / 04.07.2008 21:21

- изменился номер версии парсера (стал 3.3.0)

- при выполнении sql запросов в случае, если передан параметр $.limit, внутри которого указана переменная с пустым значением, теперь не выдаётся исключение, а работает обычное преобразование пустой строки в 0. внимание: некоторые пользовались этим багом, чтобы доставать все записи. теперь код станет работать иначе, поэтому чтобы логика его работы осталась прежней, надо внести изменения:
^table::sql{
	...
}[
	$.limit($var_which_might_be_empty)
]
=>
^table::sql{
	...
}[
	^if(def $var_which_might_be_empty){
		$.limit($var_which_might_be_empty)
	}
]
- file::sql теперь понимает опции $.limit и $.offset

- добавлен конструктор ^date::create[$дата] (раньше можно было делать так: ^date::create($дата), это продолжает работать). например теперь внутри метода можно написать ^date::create[$param], а не заниматься проверкой типа пришедшей переменной и написанием if, который в случае пришедшего типа date/int/double будет вызывать конструктор с круглыми скобками, а в случае строки -- с квадратными.

- методу ^строка.trim[] добавлены возможные варианты параметра, определяющего место удаления символов: left и right (по аналогии с методами .left() и .right()), которые являются alias-ами для start и end (последние продолжают работать)

- обновлён драйвер SQLite: у него убран escape-инг двойной кавычки.

- обновлён ODBC драйвер: у него появилась новая опция SQL, которая может принимать одно из значения MSSQL|FireFird|Pervasive. если задана, то sql запросы, у которых указан limit/offset перед выполнением модифицируются и им добавляется специфичные для данных SQL серверов инструкции (TOP для MSSQL и Pervasive, FIRST + SKIP для FireFird)