parse_lex(source, **options) -> Prism::ParseResultRuby 3.3 から[permalink][rdoc][edit]-
sourceに対して構文解析と字句解析の両方を行います。Ruby 3.3 の prism には専用の結果クラスがないため、戻り値は Prism::ParseResult のインスタンスで、valueが[構文木, トークンの配列]という 2 要素配列になります。構文木とトークン列の両方が必要な場合、Prism.#parse と Prism.#lex を個別に呼び出すよりも効率的です。片方だけが必要な場合はそれぞれ Prism.#parse または Prism.#lex を使ってください。オプションは Prism.#parse と同じです。
- [PARAM]
source: - 解析する Ruby プログラムの文字列を指定します。
- [PARAM]
options: - Prism.#parse を参照してください。
require "prism" result = Prism.parse_lex("1 + 2") ast, tokens = result.value p ast.class # => Prism::ProgramNode p tokens.size # => 4[SEE_ALSO] Prism.#parse, Prism.#lex
- [PARAM]