@USE 224.p @main[] $h[^reflection:classes[]] $hi[^h.intersection[ $.hash[] $.env[] $.cookie[] $.table[] $.test[] $.test1[] $.test2[] ]] $t[^hi._keys[]] ^t.sort{$t.key} ^t.menu{$t.key^if(def $hi.[$t.key]){ - $hi.[$t.key]}}[
]
^do{$d[^reflection:create[date;create]]} ^do{$d[^reflection:create[date;calendar]]} ^do{$d[^reflection:create[date;now](-2;1)]} ^do{$d[^reflection:create[date;now](-2)]} ^do{$o[^reflection:create[test;create](-1)]} ^do{$o1[^reflection:create[test1;create1](1)]} ^do{$o2[^reflection:create[test2;create2]]}
^reflection:class_name[$hash:CLASS]
^reflection:class_name[$cookie:CLASS]
^reflection:class_name[$env:CLASS]

^print[test;$o] ^print[test1;$o1] ^print[test2;$o2] ^print[date;$d] ^print[env;$env:CLASS] ^print[unknown] done. @do[code] ^try{ $code }{ $exception.handled(1) $exception.source $exception.comment
} @print[class;o][m;k;v;h;i;t] ^do{ $m[^reflection:methods[$class]] $t[^m._keys[]] ^t.sort{$t.key} ^t.menu{ $k[$t.key] $v[$m.$k] $h[^reflection:method_params[$class;$k]] ^@${k}[^if($v eq "native"){^if($h.min_params != $h.max_params){^h.min_params.int(0)-}^h.max_params.int(0)}{^for[i](0;^h._count[]){$h.$i}[^;]}]^if(def $h.call_type){ {$h.call_type}} }[
] } ^if(def $o){ ^if($m){

} '$class' object class name: '^reflection:class_name[$o]/^reflection:class_name[^reflection:class[$o]]'
'$class' object base class name: '^reflection:base_name[$o]/^if(^reflection:base[$o] is "void"){;^reflection:class_name[^reflection:base[$o]]}'
}