feat: Prepare for code modularization and cleanup
- Archive old documentation and test files to `docs/archive/` and `local_tests/`. - Remove various temporary and old files from the project root. - Add `nekocode-rust` analysis tool and its output files (`nekocode/`, `.nekocode_sessions/`, `analysis.json`). - Minor updates to `apps/chip8_nyash/chip8_emulator.nyash` and `local_tests` files. This commit cleans up the repository and sets the stage for further code modularization efforts, particularly in the `src/interpreter` and `src/parser` modules, based on recent analysis.
This commit is contained in:
63
local_tests/test_pack_transparency_comprehensive.nyash
Normal file
63
local_tests/test_pack_transparency_comprehensive.nyash
Normal file
@ -0,0 +1,63 @@
|
||||
# 🔥 Phase 8.8: pack透明化システム 包括テスト
|
||||
# 全ビルトインBox継承パターンと mixed inheritance のテスト
|
||||
|
||||
print("=== pack透明化システム包括テスト開始 ===")
|
||||
|
||||
# テスト1: IntegerBox 透明化
|
||||
box SmartInteger from IntegerBox {
|
||||
init { isPositive }
|
||||
|
||||
birth(value) {
|
||||
from IntegerBox(value) # 透明化システム
|
||||
me.isPositive = value > 0
|
||||
}
|
||||
|
||||
getInfo() {
|
||||
if me.isPositive {
|
||||
return "正数です"
|
||||
} else {
|
||||
return "負数または0です"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
local num1 = new SmartInteger(42)
|
||||
print("1. " + num1.getInfo())
|
||||
|
||||
local num2 = new SmartInteger(-5)
|
||||
print("2. " + num2.getInfo())
|
||||
|
||||
# テスト2: 混在テスト - ビルトイン継承 + ユーザー定義
|
||||
box AdvancedCalc from MathBox {
|
||||
init { history }
|
||||
|
||||
birth() {
|
||||
from MathBox() # 透明化システム
|
||||
me.history = new ArrayBox()
|
||||
}
|
||||
|
||||
addToHistory(operation) {
|
||||
me.history.push(operation)
|
||||
return "履歴に追加: " + operation
|
||||
}
|
||||
}
|
||||
|
||||
box SimpleCalculator {
|
||||
init { result }
|
||||
|
||||
birth() {
|
||||
me.result = 0
|
||||
}
|
||||
|
||||
getResult() {
|
||||
return "結果: " + me.result
|
||||
}
|
||||
}
|
||||
|
||||
local calc1 = new AdvancedCalc() # ビルトイン継承
|
||||
local calc2 = new SimpleCalculator() # ユーザー定義
|
||||
|
||||
print("3. " + calc1.addToHistory("2+2=4"))
|
||||
print("4. " + calc2.getResult())
|
||||
|
||||
print("=== pack透明化システム包括テスト完了 ===")
|
||||
Reference in New Issue
Block a user