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

module function Prism?.parse_stream

parse_stream(stream, **options) -> Prism::ParseResultRuby 3.4 から[permalink][rdoc][edit]

gets に応答するオブジェクト stream から少しずつ読み込みながら構文解析し、結果を Prism::ParseResult として返します。

ソースコード全体を事前に文字列としてメモリに読み込むことなく構文解析したい場合に使います。オプションは Prism?.parse と同じです。

[PARAM] stream:
gets(limit) に応答するオブジェクトを指定します。IOStringIO などが使えます。
[PARAM] options:
Prism?.parse を参照してください。
require "prism"
require "stringio"

result = Prism.parse_stream(StringIO.new("1 + 2\n"))
p result.class        # => Prism::ParseResult
p result.value.slice   # => "1 + 2"

[SEE_ALSO] Prism?.parse