21 lines
635 B
Plaintext
21 lines
635 B
Plaintext
// std/operators/stringify.hako
|
||
// StringifyOperator — 明示的な文字列化の演算子ボックス(開発用)
|
||
// 目的: 暗黙の toString に依存せず、観測可能な文字列化を提供する
|
||
|
||
static box StringifyOperator {
|
||
// apply(value) -> String
|
||
apply(value) {
|
||
// null 安全
|
||
if value == null {
|
||
return "null"
|
||
}
|
||
// stringify メソッドがあれば尊重(JsonNodeInstance 等)
|
||
if value.stringify != null {
|
||
return value.stringify()
|
||
}
|
||
// それ以外は連結で安全に文字列化(プリミティブ toString 依存を避ける)
|
||
return "" + value
|
||
}
|
||
}
|
||
|