Function WRITE-TO-STRING
, PRIN1-TO-STRING
, PRINC-TO-STRING
write-to-string
object &key
array base case circle escape gensym length level lines miser-width pprint-dispatch pretty radix readably right-margin => string
prin1-to-string
object => string
princ-to-string
object => string
object - オブジェクト
array - generalized-boolean
base - 基数
case - 型(member :upcase :downcase :capitalize)
のシンボル
circle - generalized-boolean
escape - generalized-boolean
gensym - generalized-boolean
length - 非負の整数か、nil
level - 非負の整数か、nil
lines - 非負の整数か、nil
miser-width - 非負の整数か、nil
pprint-dispatch - pprint
ディスパッチテーブル
pretty - generalized-boolean
radix - generalized-boolean
readably - generalized-boolean
right-margin - 非負の整数か、nil
string - 文字列
write-to-string
, prin1-to-string
, princ-to-string
は、 objectの印刷表現を含む文字列を生成するときに使用されます。 objectは、それぞれwrite
, prin1
, princ
によるものとして 効率的に印刷され、 出力の文字が文字列の中に作成されます。
write-to-string
は一般的な出力関数です。 これは指定されたすべてのパラメーターを適切に扱い objectを印刷する能力があります。
prin1-to-string
は、 write-to-string
に:escape t
を付与したように動作し、 これはエスケープ文字が適切な場所に記載されることを意味しています。
princ-to-string
は、 write-to-string
に:escape nil :readably nil
を付与したように動作します。 したがってエスケープ文字は記載されません。
prin1-to-string
かprinc-to-string
が実行されたとき、 他の全てのキーワードは write-to-string
に指定されたもののデフォルト値になります。
この意味は、write-to-string
のキーワード引数のデフォルトは、 write
のものと同じであるということです。
prin1-to-string "abc") => "\"abc\""
(princ-to-string "abc") => "abc" (
なし。
*print-escape*
, *print-radix*
, *print-base*
, *print-circle*
, *print-pretty*
, *print-level*
, *print-length*
, *print-case*
, *print-gensym*
, *print-array*
, *read-default-float-format*
なし。
write-to-string object {key argument}*)
(with-output-to-string (#1=#:string-stream)
== (write object :stream #1# {key argument}*))
(
princ-to-string object)
(with-output-to-string (string-stream)
== (princ object string-stream))
(
prin1-to-string object)
(with-output-to-string (string-stream)
== (prin1 object string-stream)) (