aliases: JSON::Ext::Generator::State
要約
Ruby オブジェクトから JSON 形式の文字列を生成する間、 JSON 形式の文字列を生成するための設定を保持しておくために使用するクラスです。
目次
- 特異メソッド
- インスタンスメソッド
特異メソッド
from_state(options) -> JSON::State[permalink][rdoc]-
与えられた options によって生成した JSON::State のインスタンスを返します。
- [PARAM] options:
- JSON::State のインスタンスか、ハッシュを指定します。
- [RETURN]
- options がハッシュである場合は、それによって初期化した JSON::State を返します。options が JSON::State のインスタンスである場合は単に options を返します。いずれでも無い場合は、何も設定されていない JSON::State のインスタンスを返します。
new(options = {}) -> JSON::State[permalink][rdoc]-
自身を初期化します。
- [PARAM] options:
- ハッシュを指定します。指定可能なオプションは以下の通りです。
- :indent
-
インデントに使用する文字列を指定します。デフォルトは空文字列です。
- :space
-
JSON 形式の文字列のトークン間に挿入する文字列を指定します。デフォルトは空文字列です。
- :space_before
-
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の前に挿入する文字列をセットします。デフォルトは空文字列です。
- :object_nl
-
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列を指定します。デフォルトは空文字列です。
- :array_nl
-
JSON 形式の文字列中に現れる JavaScript の配列の行末に挿入する文字列を指定します。デフォルトは空文字列です。
- :check_circular
-
真を指定した場合、生成するオブジェクトの循環をチェックします。この動作がデフォルトです。
- :allow_nan
-
真を指定した場合、JSON::NaN, JSON::Infinity, JSON::MinusInfinity を生成することを許すようになります。偽を指定した場合、これらの値を生成しようとすると例外が発生します。デフォルトは偽です。
インスタンスメソッド
allow_nan? -> bool[permalink][rdoc]-
NaN, Infinity, -Infinity を生成できる場合、真を返します。そうでない場合は偽を返します。
[SEE_ALSO] [RFC4627]
array_nl -> String[permalink][rdoc]-
JSON の配列の後に出力する文字列を返します。
array_nl=(str)[permalink][rdoc]-
JSON の配列の後に出力する文字列をセットします。
check_circular? -> bool[permalink][rdoc]-
循環参照のチェックを行う場合は、真を返します。そうでない場合は偽を返します。
configure(options = {}) -> self[permalink][rdoc]-
与えられたハッシュで自身を設定します。
オプションで使用するハッシュのキーについては JSON::State.new を参照してください。
- [PARAM] options:
- このオブジェクトの設定をするためのハッシュを指定します。
[SEE_ALSO] JSON::State.new
forget(object) -> object[permalink][rdoc]-
JSON::State#remember で記録したオブジェクトを記録から削除します。
indent -> String[permalink][rdoc]-
インデントに使用する文字列を返します。
indent=(string)[permalink][rdoc]-
インデントに使用する文字列をセットします。
- [PARAM] string:
- インデントに使用する文字列を指定します。
max_nesting -> Integer[permalink][rdoc]-
生成される JSON 形式の文字列のネストの深さの最大値を返します。
この値がゼロである場合は、ネストの深さのチェックを行いません。
max_nesting=(depth)[permalink][rdoc]-
生成される JSON 形式の文字列のネストの深さの最大値をセットします。
この値にゼロをセットすると、ネストの深さのチェックを行いません。
object_nl -> String[permalink][rdoc]-
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列を返します。
object_nl=(string)[permalink][rdoc]-
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列をセットします。
- [PARAM] string:
- JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列を指定します。
remember(object) -> true[permalink][rdoc]-
与えられたオブジェクトのオブジェクト ID を記録します。
ここで記録したオブジェクトはデータ構造の循環をチェックするために使用します。
- [PARAM] object:
- 任意のオブジェクトを指定します。
seen?(object) -> bool[permalink][rdoc]-
与えられたオブジェクトが既に生成済みである場合は真を返します。そうでない場合は偽を返します。
このメソッドはデータ構造の循環をチェックするために使用します。
space -> String[permalink][rdoc]-
JSON 形式の文字列のトークン間に挿入する文字列を返します。
space=(string)[permalink][rdoc]-
JSON 形式の文字列のトークン間に挿入する文字列をセットします。
- [PARAM] string:
- JSON 形式の文字列のトークン間に挿入する文字列を指定します。
space_before -> String[permalink][rdoc]-
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の前に挿入する文字列を返します。
space_before=(string)[permalink][rdoc]-
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の前に挿入する文字列をセットします。
- [PARAM] string:
- JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の前に挿入する文字列をセットします。
to_h -> Hash[permalink][rdoc]-
自身をハッシュに変換します。