diff --git a/core/alien/strings/strings.factor b/core/alien/strings/strings.factor index 12017d64d8..b5d92e02a0 100644 --- a/core/alien/strings/strings.factor +++ b/core/alien/strings/strings.factor @@ -63,6 +63,7 @@ M: tuple string>alien drop underlying>> ; HOOK: native-string-encoding os ( -- encoding ) foldable M: unix native-string-encoding utf8 ; + M: windows native-string-encoding utf16n ; : alien>native-string ( alien -- string ) @@ -80,16 +81,14 @@ M: string string>symbol utf8 string>alien ; M: sequence string>symbol [ utf8 string>alien ] map ; -: (symbol>string) ( alien -- str ) - utf8 alien>string ; - GENERIC: symbol>string ( symbol(s) -- string ) -: special-object>string ( n -- str ) - special-object (symbol>string) ; +M: byte-array symbol>string utf8 alien>string ; -M: byte-array symbol>string (symbol>string) ; -M: array symbol>string [ (symbol>string) ] map ", " join ; +M: array symbol>string [ utf8 alien>string ] map ", " join ; + +: special-object>string ( n -- str ) + special-object utf8 alien>string ; [ OBJ-CPU special-object>string string>cpu \ cpu set-global