| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
virusav 04.03 22:08
test.p:@CLASS
test
@OPTIONS
locals
@create[]
@getPrivate[]
$result[$self.vars.private]
@GET_DEFAULT[sFieldName]
^if(^self.privateVarNames.contains[$sFieldName]){
^return[PRIVATE]
}
$result[$self.vars.[$sFieldName]]
@GET_vars[]
^if(^reflection:uid[$self] ne ^reflection:uid[$caller.self]){
^return[PRIVATE]
}
$result[
$.public[777]
$.private[666]
]
@GET_privateVarNames[]
^if(^reflection:uid[$self] ne ^reflection:uid[$caller.self]){
^return[PRIVATE]
}
$result[
$.private[]
]index.html: ^use[test.p] $oTest[^test::create[]] public=$oTest.public<br /> private=$oTest.private<br /> private_by_method=^oTest.getPrivate[]<br /> vars=^json:string[$oTest.vars]<br /> privateVarNames=^json:string[$oTest.privateVarNames]На выходе получаем:
public=777Наверняка что-то не учел.)
private=PRIVATE
private_by_method=666
vars="PRIVATE"
privateVarNames="PRIVATE"