Ruby 4.0 リファレンスマニュアル

module function Prism?.load

load(source, serialized, freeze = false) -> Prism::ParseResultRuby 3.3 から[permalink][rdoc][edit]

source と、それを prism でシリアライズした文字列 serialized から構文木を復元し、Prism::ParseResult として返します。

Prism?.dumpPrism?.dump_file で得たシリアライズ済み文字列を、それを生成したときと同じ source と組み合わせてデシリアライズするために使います。freeze に true を指定すると、復元した構文木の各ノードを frozen にします。

[PARAM] source:
serialized を生成したときに使ったソースコードの文字列を指定します。
[PARAM] serialized:
Prism?.dump などで得たシリアライズ済みの文字列を指定します。
[PARAM] freeze:
true を指定すると復元した構文木を frozen にします。省略した場合は false です。
require "prism"

source = "1 + 2"
dumped = Prism.dump(source)
result = Prism.load(source, dumped)
p result.class        # => Prism::ParseResult
p result.value.slice   # => "1 + 2"

[SEE_ALSO] Prism?.dump, Prism?.dump_file