parser

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

 

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

3.4.0, свойство DEFAULT, и result

Janek 29.10.2009 16:06 / 29.10.2009 16:15

Здравствуйте!

Я прочитал это:
Каждый метод должен будет или возвращать результат через $result во всех вариантах своего выполнения
Но что делать когда не хочю определять $result?. Когда в методе свойства не определён $result, оператор def возвращает лож. Но в свойстве DEFAULT - всегда восзвращаеть истина.

Посмотпите это:
problem.p
@CLASS
problem

@create[]

@GET_DEFAULT[v]
^if($v ne "_v"){^if(!def $_v){$_v[Вот она.]}$result[$_v]}

@GET_V[][result]
^if(1 == 0){$result[*]}
index.html
@USE
/problem.p

@main[]
$oProblem[^problem::create[]]
^test[через свройство DEFAULT]<br/>
^test[V]<br/>

@test[varname]
Переменна $varname ^if(!def $oProblem.[$varname]){
	не определёна.
}{
	определёна. $oProblem.[$varname]
	
	^if(^oProblem.[$varname].length[] == 0){
		^if($oProblem.[$varname] is "string"){Но это пустая строка.}
	}
}
3.4.0 beta4 возвращает:
Переменна через свройство DEFAULT определёна. Но это пустая строка.
Переменна V не определёна.

3.3.0 возвращает:
Переменна через свройство DEFAULT определёна. Вот она.
Переменна V не определёна.

Почемy?