385件ヒット
[1-100件を表示]
(0.075秒)
種類
- インスタンスメソッド (209)
- 特異メソッド (99)
- 定数 (55)
- クラス (22)
クラス
- Ripper (253)
-
Ripper
:: Filter (77) -
Ripper
:: Lexer (33)
キーワード
- EVENTS (11)
- Filter (11)
- Lexer (11)
-
PARSER
_ EVENTS (11) -
PARSER
_ EVENT _ TABLE (11) -
SCANNER
_ EVENTS (11) -
SCANNER
_ EVENT _ TABLE (11) - column (22)
-
compile
_ error (11) -
end
_ seen? (11) - filename (22)
- lex (22)
- lineno (22)
- new (22)
-
on
_ XXX (11) -
on
_ default (11) - parse (44)
- sexp (11)
-
sexp
_ raw (11) - slice (11)
-
token
_ match (11) - tokenize (22)
- warn (11)
- warning (11)
- yydebug (11)
- yydebug= (11)
検索結果
先頭5件
-
Ripper
:: Lexer # lex -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (12501.0) -
自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
...自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
ライブラリ内部で使用します。 Ripper.lex を使用してください。... -
Ripper
:: Lexer # lex -> [[Integer , Integer] , Symbol , String] (12401.0) -
自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
...自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
ライブラリ内部で使用します。 Ripper.lex を使用してください。... -
Ripper
# compile _ error(msg) -> nil (12302.0) -
解析した Ruby プログラムの中にコンパイルエラーがあった場合に実行されま す。
解析した Ruby プログラムの中にコンパイルエラーがあった場合に実行されま
す。
@param msg エラーメッセージ。
サブクラスでオーバライドして使用します。 -
Ripper
# lineno -> Integer | nil (12302.0) -
現在のトークンの行番号を 1 から始まる数値で返します。
...現在のトークンの行番号を 1 から始まる数値で返します。
このメソッドはイベントハンドラの中でのみ意味のある値を返します。イベン
トハンドラの中で self.lineno を実行してください。... -
Ripper
:: Filter # lineno -> Integer | nil (12301.0) -
現在のトークンの行番号を 1 から始まる数値で返します。
...現在のトークンの行番号を 1 から始まる数値で返します。
このメソッドはイベントハンドラの中でのみ意味のある値を返します。イベン
トハンドラの中で self.lineno を実行してください。... -
Ripper
# filename -> String (12202.0) -
自身の持つ Ruby プログラムのファイル名を文字列で返します。
自身の持つ Ruby プログラムのファイル名を文字列で返します。 -
Ripper
. slice(src , pattern , n = 0) -> String | nil (12201.0) -
Ruby プログラム src のうち、 パターン pattern の n 番目の括弧にマッチする文字列を取り出します。
...ン pattern の n 番目の括弧にマッチする文字列を取り出します。
マッチしない場合は nil を返します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param pattern 取り出すプログラムのパターンを文字列......弧の中の文字列だけが必
要な時に指定します。省略すると 0 (pattern 全体)になります。
pattern は Ripper のイベント ID のリストを文字列で記述します。
また pattern には Ruby の正規表現と同じメタ文字も使えます。
ただ......単位ではなくトークン単位で動作します。
使用例
require 'ripper'
p Ripper.slice(%(<<HERE\nstring\#{nil}\nHERE),
"heredoc_beg .*? nl $(.*?) heredoc_end", 1)
# => "string\#{nil}\n"
イベント ID は Ripper::SCANNER_EVENTS で確認できます。... -
Ripper
:: Filter # filename -> String (12201.0) -
Ruby プログラムのファイル名を文字列で返します。
Ruby プログラムのファイル名を文字列で返します。 -
Ripper
:: Filter # on _ default(event , token , data) -> object (12101.0) -
イベントハンドラが未定義のイベントが実行された場合に実行されるイベント ハンドラです。
...
Ripper::Filter#parse の引数になります。
このメソッドの戻り値は次のイベントハンドラの data 引数に渡されます。
on_default をオーバライドしなかった場合は data 引数をそのまま返します。
@see Ripper::Filter#parse, Ripper::Fi......lter#on_XXX... -
Ripper
:: Filter (12001.0) -
イベントドリブンスタイルで Ruby プログラムを加工するためのクラスです。
...//emlist[][ruby]{
require 'ripper'
require 'cgi'
class Ruby2HTML < Ripper::Filter
def on_default(event, tok, f)
f << CGI.escapeHTML(tok)
end
def on_comment(tok, f)
f << %Q[<span class="comment">#{CGI.escapeHTML(tok)}</span>]
end
def on_tstring_beg(tok, f)
f << %Q[<span class......="string">#{CGI.escapeHTML(tok)}]
end
def on_tstring_end(tok, f)
f << %Q[#{CGI.escapeHTML(tok)}</span>]
end
end
Ruby2HTML.new(ARGF).parse('')
//}
Ruby プログラムを解析して、Ripper::SCANNER_EVENTS にあるスキャナ
イベントを実行します。イベントはプログ......ラムに書いた順番で実行されます。
上記の例では、parse メソッドに渡した空文字列を初期値として、イベントハ
ンドラが ARGF で渡された Ruby プログラムを HTML にして返します。... -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1) -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (9401.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
... Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lin......す。
//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", EXPR_ENDFN],
# [[1, 5], :on_lparen, "(", EXPR_BEG|EXPR_LABEL],
# [[1, 6], :on_ident, "a", EXPR_AR......1, 7], :on_rparen, ")", EXPR_ENDFN],
# [[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 は分割したトークンを詳しい情報とともに返します。
返り値の配列の要...