parser

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

 

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

Ответ

Misha v.3 14.01.2008 23:25

исключительно по коду:

1. этот кусок кода:
	$sape_text[^file::load[text][$self.sSape2ParserPath][
		$.timeout($self.iHttpTimeout)
		$.method[POST]
		$.form[$param]
	]]
	
	$result[^untaint{$sape_text.text}]
так и просится в отдельный метод. к тому-же имя переменной sape_text мне кажется неудачным, и я бы использовал ^taint[as-is][] вместо ^untaint{} (результат в данном случае будет один, но _теоретически_ taint должен быть побыстрее, т.к. он не занимается поиском кусочков в тексте на языке "грязный но неизвестный" чтобы покрасить их в as-is, а сразу неглядя красит)


2. !def $user и $user eq '' -- одно и то-же, можно оставить только !def

3. $hSapeParams[^if(def $params && $params is hash){$params}{^hash::create[]}]
вообще-то лучше создать копию переданного хеша. в вашем случае входной хеш изменяется (сделайте ему foreach после вызова конструктора). возможно в вашем случае это не критично, но всё таки.