本文簡要介紹ruby語言中 Ripper.sexp
的用法。
用法
sexp(src, filename = '-', lineno = 1, raise_errors: false)
- EXPERIMENTAL
-
解析
src
並創建 S-exp 樹。返回更具可讀性的樹而不是Ripper.sexp_raw
。此方法主要供開發人員使用。filename
參數大多被忽略。默認情況下,此方法不處理src
中的語法錯誤,在這種情況下返回nil
。使用raise_errors
關鍵字為src
中的錯誤引發SyntaxError
。require 'ripper' require 'pp' pp Ripper.sexp("def m(a) nil end") #=> [:program, [[:def, [:@ident, "m", [1, 4]], [:paren, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil, nil, nil, nil]], [:bodystmt, [[:var_ref, [:@kw, "nil", [1, 9]]]], nil, nil, nil]]]]
相關用法
- Ruby Ripper.sexp_raw用法及代碼示例
- Ruby Ripper.slice用法及代碼示例
- Ruby Ripper.tokenize用法及代碼示例
- Ruby Ripper.lex用法及代碼示例
- Ruby Ripper類用法及代碼示例
- Ruby RingServer類用法及代碼示例
- Ruby RingFinger類用法及代碼示例
- Ruby RingServer.new用法及代碼示例
- Ruby Range.end用法及代碼示例
- Ruby Regexp named_captures()用法及代碼示例
- Ruby Ractor.receive_if用法及代碼示例
- Ruby Range new()用法及代碼示例
- Ruby Rational.inspect用法及代碼示例
- Ruby Random.bytes用法及代碼示例
- Ruby Random hex()用法及代碼示例
- Ruby RFC2396_Parser.parse用法及代碼示例
- Ruby Range.size用法及代碼示例
- Ruby Rational.rational <=>用法及代碼示例
- Ruby Recorder類用法及代碼示例
- Ruby Ruby.parse_method_parameters用法及代碼示例
- Ruby RFC2396_Parser.new用法及代碼示例
- Ruby Regexp to_s()用法及代碼示例
- Ruby Regexp.eql?用法及代碼示例
- Ruby Row.delete用法及代碼示例
- Ruby Rational to_i()用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Ripper.sexp。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。