別のキーワード
種類
- インスタンスメソッド (8)
- 定数 (5)
- 特異メソッド (3)
クラス
- Ripper (11)
-
Ripper
:: Filter (3) -
Ripper
:: Lexer (2)
キーワード
- EVENTS (1)
-
PARSER
_ EVENTS (1) -
PARSER
_ EVENT _ TABLE (1) -
SCANNER
_ EVENTS (1) -
SCANNER
_ EVENT _ TABLE (1) -
end
_ seen? (1) - lex (2)
-
on
_ XXX (1) -
on
_ default (1) - parse (2)
- sexp (1)
-
sexp
_ raw (1) - yydebug (1)
- yydebug= (1)
検索結果
先頭5件
-
Ripper
# yydebug -> bool (18307.0) -
yydebugの構文解析器の追跡機能が有効か無効かを返します。
yydebugの構文解析器の追跡機能が有効か無効かを返します。 -
Ripper
# yydebug=(flag) (18307.0) -
yydebugの構文解析器の追跡機能が有効か無効かを指定します。
yydebugの構文解析器の追跡機能が有効か無効かを指定します。
@param flag true か false を指定します。 -
Ripper
:: PARSER _ EVENT _ TABLE -> {Symbol => Integer} (18307.0) -
パーサイベントのイベント ID (シンボル) と対応するハンドラの引数の個数の リストをハッシュで返します。
パーサイベントのイベント ID (シンボル) と対応するハンドラの引数の個数の
リストをハッシュで返します。 -
Ripper
:: SCANNER _ EVENT _ TABLE -> {Symbol => Integer} (18307.0) -
スキャナイベントのイベント ID (シンボル) と対応するハンドラの引数の個数 のリストをハッシュで返します。
スキャナイベントのイベント ID (シンボル) と対応するハンドラの引数の個数
のリストをハッシュで返します。 -
Ripper
# end _ seen? -> bool (307.0) -
これまでに解析した Ruby プログラムの中に __END__ が含まれていたかどうか を返します。
これまでに解析した Ruby プログラムの中に __END__ が含まれていたかどうか
を返します。 -
Ripper
:: EVENTS -> [Symbol] (307.0) -
ripper の扱う全てのイベント ID (シンボル) のリストを返します。
...
ripper の扱う全てのイベント ID (シンボル) のリストを返します。... -
Ripper
:: PARSER _ EVENTS -> [Symbol] (307.0) -
パーサイベントのイベント ID (シンボル) のリストを返します。
パーサイベントのイベント ID (シンボル) のリストを返します。 -
Ripper
:: SCANNER _ EVENTS -> [Symbol] (307.0) -
スキャナイベントのイベント ID (シンボル) のリストを返します。
スキャナイベントのイベント ID (シンボル) のリストを返します。 -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1) -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (304.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
...Ruby プログラム str をトークンに分割し、そのリストを返します。
ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src......なります。
@param lineno src の開始行番号を指定します。省略すると 1 になります。
//emlist[][ruby]{
require 'ripper'
pp Ripper.lex("def m(a) nil end")
# => [[[1, 0], :on_kw, "def", EXPR_FNAME],
# [[1, 3], :on_sp, " ", EXPR_FNAME],
# [[1, 4], :on_ident, "m", E......[[1, 8], :on_sp, " ", EXPR_BEG],
# [[1, 9], :on_kw, "nil", EXPR_END],
# [[1, 12], :on_sp, " ", EXPR_END],
# on_kw, "end", EXPR_END
//}
Ripper.lex は分割したトークンを詳しい情報とともに返します。
返り値の配列の要素は 4 要素の配列 (概念的には... -
Ripper
. sexp(src , filename = & # 39;-& # 39; , lineno = 1) -> object (304.0) -
Ruby プログラム str を解析して S 式のツリーにして返します。
...結果は、括弧の代わりに配列の要素として S 式のツリーを表現しています。
//emlist[例][ruby]{
require 'ripper'
require 'pp'
pp Ripper.sexp("def m(a) nil end")
# => [:program,
# [[:def,
# [:@ident, "m", [1, 4]],
# [:paren, [:params, [[:@ident, "a", [1,......形式になります。
[:@イベント名, トークン, 位置情報(行、桁の配列)]
例:
[:@ident, "m", [1, 4]]
また、Ripper.sexp は Ripper.sexp_raw とは異なり、読みやすさのため
に stmts_add や stmts_new のような _add、_new で終わるパーサイベント......を
省略します。_add で終わるパーサイベントはハンドラの引数が 0 個のものが
省略されます。詳しくは Ripper::PARSER_EVENTS を確認してください。
@see Ripper.sexp_raw... -
Ripper
. sexp _ raw(src , filename = & # 39;-& # 39; , lineno = 1) -> object (304.0) -
Ruby プログラム str を解析して S 式のツリーにして返します。
...結果は、括弧の代わりに配列の要素として S 式のツリーを表現しています。
//emlist[例][ruby]{
require 'ripper'
require 'pp'
pp Ripper.sexp_raw("def m(a) nil end")
# => [:program,
# [:stmts_add,
# [:stmts_new],
# [:def,
# [:@ident, "m", [1, 4]],
#......n, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil]],
# [:bodystmt,
# [:stmts_add, [:stmts_new], [:var_ref, [:@kw, "nil", [1, 9]]]],
# nil,
# nil,
# nil]]]]
//}
Ripper.sexp_raw は Ripper.sexp とは異なり解析結果を加工しません。
@see Ripper.sexp... -
Ripper
:: Filter # on _ XXX(token , data) -> object (304.0) -
各種スキャナイベントを実行します。
...XX」の部分を
Ripper::SCANNER_EVENTS にあるスキャナイベントに読み替えてください。
@param token 現在のトークンが指定されます。
@param data 前のイベントハンドラの戻り値です。最初のイベントの場合は
Ripper::Filter#parse......の引数になります。
オーバライドしなかった場合は on_default が実行されます。
このメソッドの戻り値は次のイベントハンドラの data 引数に渡されます。
@see Ripper::Filter#parse, Ripper::Filter#on_default, Ripper::SCANNER_EVENTS... -
Ripper
:: Filter # on _ default(event , token , data) -> object (304.0) -
イベントハンドラが未定義のイベントが実行された場合に実行されるイベント ハンドラです。
...
Ripper::Filter#parse の引数になります。
このメソッドの戻り値は次のイベントハンドラの data 引数に渡されます。
on_default をオーバライドしなかった場合は data 引数をそのまま返します。
@see Ripper::Filter#parse, Ripper::Fi... -
Ripper
:: Filter # parse(init = nil) -> object (304.0) -
自身の持つ Ruby プログラムの解析を開始します。各種イベントハンドラで処 理を行った結果を返します。
...てイベントハンドラに渡されていきます。各種イベン
トハンドラの戻り値は次のイベントハンドラに渡されます。
Enumerable#inject のように、最終的な結果を戻り値として返します。
@see Ripper::Filter#on_default, Ripper::Filter#on_XXX... -
Ripper
:: Lexer # lex -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (304.0) -
自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
...自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
ライブラリ内部で使用します。 Ripper.lex を使用してください。... -
Ripper
:: Lexer # parse -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (304.0) -
自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。た だし Ripper::Lexer#lex と違い、結果をソートしません。
...自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。た
だし Ripper::Lexer#lex と違い、結果をソートしません。
ライブラリ内部で使用します。...