🚀 feat: ":"継承演算子実装+全14Box型の包括的ドキュメント化完成

## 🔧 言語機能改善
- from予約語問題を解決する":"継承演算子を実装
- box Child : Parent 構文でより直感的な継承表現
- tokenizer/parserを更新、from を変数名として使用可能に

## 📚 ドキュメント大改善(1000行以上追加)
全14Box型に包括的なJavaDoc風ドキュメントを追加:
- StringBox: 文字列操作メソッド群
- IntegerBox/BoolBox: 基本データ型と演算子
- MathBox/RandomBox/TimeBox: 計算・ユーティリティ
- ConsoleBox/DebugBox/SoundBox: システムIO
- MapBox/NullBox: データ構造
- EguiBox: デスクトップGUI
- SimpleIntentBox: P2P通信

各Boxに概要・メソッド一覧・使用例・実用例・注意事項を完備

## 🧹 プロジェクト整理
- ルートディレクトリから60個のテストファイルを削除
  (development/root_tests/に移動済み)
- 不要ファイル削除: bmp, tar.xz, html, 空フォルダ等
- examplesフォルダへ適切なファイルを移動

## 📝 その他の更新
- CLAUDE.md: パーサーデバッグ機能の説明追加
- sessions/: AI相談記録2件を保存
  - from予約語問題の解決策検討
  - 標準Box型(ArrayBox等)の設計相談
This commit is contained in:
Moe Charm
2025-08-10 11:32:32 +09:00
parent e7f6666917
commit ccb3204a35
89 changed files with 1536 additions and 3027 deletions

View File

@ -1,4 +1,32 @@
// StringBox implementation - String values in Nyash
/*! 🔤 StringBox - 文字列操作Box
*
* ## 📝 概要
* UTF-8エンコード文字列を扱うためのBox。
* JavaScript風のメソッドで直感的な文字列操作が可能。
*
* ## 🛠️ 利用可能メソッド
* - `length()` - 文字列長を取得
* - `concat(other)` - 文字列結合
* - `split(separator)` - 区切り文字で分割
* - `substring(start, end)` - 部分文字列取得
* - `toUpperCase()` - 大文字変換
* - `toLowerCase()` - 小文字変換
* - `trim()` - 前後の空白除去
* - `indexOf(search)` - 文字列検索
* - `replace(from, to)` - 文字列置換
* - `charAt(index)` - 指定位置の文字取得
*
* ## 💡 使用例
* ```nyash
* local text, parts, result
* text = "Hello, World!"
*
* print(text.length()) // 13
* print(text.toUpperCase()) // "HELLO, WORLD!"
* parts = text.split(",") // ["Hello", " World!"]
* result = text.concat(" Nyash") // "Hello, World! Nyash"
* ```
*/
use crate::box_trait::NyashBox;
use std::any::Any;
use std::fmt::Display;