class JSON::Parser

aliases: JSON::Ext::Parser

要約

目次

特異メソッド
インスタンスメソッド

特異メソッド

new(source, options => {}) -> JSON::Parser[permalink][rdoc]

パーサを初期化します。

第二引数のハッシュには以下のキーを指定することができます。

:max_nesting

データ構造のネストの深さの最大値を指定します。デフォルトは 19 です。チェックを無効にするにはゼロまたは偽を指定してください。

:allow_nan

真を指定すると [RFC4627] を無視して NaN, Infinity, -Infinity をパースエラーにしません。デフォルトは偽です。

:create_additions

偽を指定するとマッチするクラスや ID があっても付加情報を生成しません。デフォルトは真です。

:object_class

JSON のオブジェクトを変換するクラスを指定します。デフォルトは Hash です。

:array_class

JSON の配列を変換するクラスを指定します。デフォルトは Array です。

[PARAM] source:
パーサの元となる文字列を指定します。
[PARAM] options:
オプションを指定するためのハッシュです。

インスタンスメソッド

parse -> object[permalink][rdoc]

現在のソースをパースして結果を Ruby のオブジェクトとして返します。

[SEE_ALSO] JSON::Parser#source

source -> String[permalink][rdoc]

現在のソースのコピーを返します。



require 'json'

parser = JSON::Parser.new(DATA.read)
print parser.source

# => {
# =>   "Tanaka": {
# =>     "name":"tanaka",
# =>     "age":20
# =>   },
# =>   "Suzuki": {
# =>     "name":"suzuki",
# =>     "age":25
# =>   }
# => }

__END__
{
  "Tanaka": {
    "name":"tanaka",
    "age":20
  },
  "Suzuki": {
    "name":"suzuki",
    "age":25
  }
}