Files
hakorune/tests/development/test_from_syntax.hako

45 lines
929 B
Plaintext
Raw Permalink Normal View History

// from統一構文のテスト
box Parent {
init { value }
init() { # init構文に統一
me.value = "Parent value"
}
getValue() {
return me.value
}
process(x) {
return "Parent processed: " + x
}
}
// from構文でデリゲーション
box Child from Parent {
init { extra }
init() { # init構文に統一
from Parent.init() # 親コンストラクタ呼び出し
me.extra = " (Child extra)"
}
// overrideで明示的置換
override process(x) {
local result
result = from Parent.process(x)
return result + me.extra
}
// 新しいメソッド
getAll() {
return me.getValue() + me.extra
}
}
// テスト実行
local child
child = new Child()
print("getValue: " + child.getValue())
print("process: " + child.process("test"))
print("getAll: " + child.getAll())