2009/09/19

Prattor の namespace

異なる namespace の sub は直接呼べない。ただし root namespace(.namespace [])の sub は直に呼べる。

で、あってる?

.sub main
## 呼べない fb()
## 呼べない $P0 = get_global "fb"
$P0 = get_global ["a";"b"], "fb"
$P0()
froot()
.end

.namespace []
.sub froot
say "in root"
.end

.namespace ["a"]
.sub fa
say "in a"
froot()
.end

.namespace ["a";"b"]
.sub fb
say "in b"
## 呼べない fa()
## 呼べない $P0 = get_global "fa"
## 呼べない $P0 = get_global ["a"], "fa"
## 呼べない $P0 = get_root_global "fa"
## 呼べない $P0 = get_root_global ["a"], "fa"
## 呼べない $P0 = get_hll_global "fa"
$P0 = get_hll_global ["a"], "fa"
$P0()
froot() # root ネームスペースは直に呼べる
.end

0 件のコメント: