るりまサーチ

最速Rubyリファレンスマニュアル検索!
99件ヒット [1-99件を表示] (0.184秒)
トップページ > クエリ:I[x] > クエリ:r[x] > クエリ:Ripper[x] > 種類:特異メソッド[x]

別のキーワード

  1. _builtin to_i
  2. fiddle to_i
  3. matrix elements_to_i
  4. csv to_i
  5. matrix i

ライブラリ

クラス

キーワード

検索結果

Ripper.parse(src, filename = '(ripper)', lineno = 1) -> nil (30414.0)

指定された文字列を解析します。常に nil を返します。

...解析します。常に nil を返します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "(ripper)" になります。

@param lineno src の開始行番号を指...
...定します。省略すると 1 になります。

@see Ripper#parse...

Ripper.sexp_raw(src, filename = '-', lineno = 1) -> object (30232.0)

Ruby プログラム str を解析して S 式のツリーにして返します。

...
R
uby プログラム str を解析して S 式のツリーにして返します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "-" になります。

@param lineno...
...src の開始行番号を指定します。省略すると 1 になります。

実行結果は、括弧の代わりに配列の要素として S 式のツリーを表現しています。

//emlist[例][ruby]{
r
equire 'ripper'
r
equire 'pp'

pp Ripper.sexp_raw("def m(a) nil end")
# => [:program,
#...
...[:def,
# [:@ident, "m", [1, 4]],
# [:paren, [: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 とは異な...

Ripper.slice(src, pattern, n = 0) -> String | nil (30226.0)

Ruby プログラム src のうち、 パターン pattern の n 番目の括弧にマッチする文字列を取り出します。

...
R
uby プログラム src のうち、
パターン pattern の n 番目の括弧にマッチする文字列を取り出します。

マッチしない場合は nil を返します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param pattern 取り...
...@param n pattern で指定した文字列の内、n 番目の括弧の中の文字列だけが必
要な時に指定します。省略すると 0 (pattern 全体)になります。

pattern は Ripper のイベント ID のリストを文字列で記述します。
また pattern には Rub...
...単位ではなくトークン単位で動作します。

使用例

r
equire 'ripper'
p Ripper.slice(%(<<HERE\nstring\#{nil}\nHERE),
"heredoc_beg .*? nl $(.*?) heredoc_end", 1)
# => "string\#{nil}\n"

イベント ID は Ripper::SCANNER_EVENTS で確認できます。...

Ripper.tokenize(src, filename = &#39;-&#39;, lineno = 1, raise_errors: false) -> [String] (30226.0)

Ruby プログラム str をトークンに分割し、そのリストを返します。

...
R
uby プログラム str をトークンに分割し、そのリストを返します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "-" になります。

@param...
...lineno src の開始行番号を指定します。省略すると 1 になります。

@param raise_errors true を指定すると、src にエラーがある場合に例外(SyntaxError)を発生させます。省略すると false になります。

@raise SyntaxError raise_errors が true で、...
...src に文法エラーがある場合に発生します。

//emlist[][ruby]{
r
equire 'ripper'

p Ripper.tokenize("def m(a) nil end")
# => ["def", " ", "m", "(", "a", ")", " ", "nil", " ", "end"]

Ripper
.tokenize("def req(true) end", raise_errors: true)
# => SyntaxError (syntax error, unexpected `tr...

Ripper.tokenize(src, filename = &#39;-&#39;, lineno = 1) -> [String] (30220.0)

Ruby プログラム str をトークンに分割し、そのリストを返します。

...
R
uby プログラム str をトークンに分割し、そのリストを返します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "-" になります。

@param...
...lineno src の開始行番号を指定します。省略すると 1 になります。


//emlist[][ruby]{
r
equire 'ripper'

p Ripper.tokenize("def m(a) nil end")
# => ["def", " ", "m", "(", "a", ")", " ", "nil", " ", "end"]
//}

Ripper
.tokenize は空白やコメントも含め、
元の文字列...

絞り込み条件を変える

Ripper.new(src, filename = "(ripper)", lineno = 1) -> Ripper (27443.0)

Ripper オブジェクトを作成します。

...
Ripper
オブジェクトを作成します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "(ripper)" になります。

@param lineno src の開始行番号を指...
...定します。省略すると 1 になります。

src の解析を行うには更に Ripper#parse などの呼び出しが必要です。

@see Ripper.parse, Ripper#parse...

Ripper.lex(src, filename = &#39;-&#39;, lineno = 1, raise_errors: false) -> [[Integer, Integer], Symbol, String, Ripper::Lexer::State] (27355.0)

Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。

...
R
uby プログラム str をトークンに分割し、そのリストを返します。
ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src...
...@param lineno src の開始行番号を指定します。省略すると 1 になります。

@param raise_errors true を指定すると、src にエラーがある場合に例外(SyntaxError)を発生させます。省略すると false になります。

@raise SyntaxError raise_errors が true...
...で、src に文法エラーがある場合に発生します。



//emlist[][ruby]{
r
equire 'ripper'

pp Ripper.lex("def m(a) nil end")
# => [[[1, 0], :on_kw, "def", FNAME],
# [[1, 3], :on_sp, " ", FNAME],
# [[1, 4], :on_ident, "m", ENDFN],
# [[1, 5], :on_lparen, "(", BEG|LABEL],
#...

Ripper.lex(src, filename = &#39;-&#39;, lineno = 1) -> [[Integer, Integer], Symbol, String, Ripper::Lexer::State] (27349.0)

Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。

...
R
uby プログラム str をトークンに分割し、そのリストを返します。
ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src...
...

@param lineno src の開始行番号を指定します。省略すると 1 になります。



//emlist[][ruby]{
r
equire '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],...
...], :on_lparen, "(", EXPR_BEG|EXPR_LABEL],
# [[1, 6], :on_ident, "a", EXPR_ARG],
# [[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 は...
...なります。

@param lineno src の開始行番号を指定します。省略すると 1 になります。




//emlist[][ruby]{
r
equire 'ripper'

pp Ripper.lex("def m(a) nil end")
# => [[[1, 0], :on_kw, "def", FNAME],
# [[1, 3], :on_sp, " ", FNAME],
# [[1, 4], :on_ident, "m", ENDFN],
#...
...[[1, 5], :on_lparen, "(", BEG|LABEL],
# [[1, 6], :on_ident, "a", ARG],
# [[1, 7], :on_rparen, ")", ENDFN],
# [[1, 8], :on_sp, " ", BEG],
# [[1, 9], :on_kw, "nil", END],
# [[1, 12], :on_sp, " ", END],
# on_kw, "end", END
//}

Ripper
.lex は分割したトークンを詳し...

Ripper.token_match(src, pattern) -> Ripper::TokenPattern::MatchData | nil (27303.0)

Ruby プログラム src に対してパターン pattern をマッチし、 マッチデータを返します。

...
R
uby プログラム src に対してパターン pattern をマッチし、
マッチデータを返します。

ライブラリ内部で使用します。...

Ripper.sexp(src, filename = &#39;-&#39;, lineno = 1) -> object (27238.0)

Ruby プログラム str を解析して S 式のツリーにして返します。

...
R
uby プログラム str を解析して S 式のツリーにして返します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "-" になります。

@param lineno...
...src の開始行番号を指定します。省略すると 1 になります。

実行結果は、括弧の代わりに配列の要素として S 式のツリーを表現しています。

//emlist[例][ruby]{
r
equire 'ripper'
r
equire 'pp'

pp Ripper.sexp("def m(a) nil end")
# => [:program,
#...
...ef,
# [:@ident, "m", [1, 4]],
# [:paren, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil, nil]],
# [:bodystmt, @kw, "nil", [1, 9]], nil, nil, nil]]]]
//}

パーサイベントは以下のような形式になります。

[:イベント名, ...]

例:

[:program, ...]

...

絞り込み条件を変える

Ripper.lex(src, filename = &#39;-&#39;, lineno = 1) -> [[Integer, Integer], Symbol, String] (27236.0)

Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。

...
R
uby プログラム str をトークンに分割し、そのリストを返します。
ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src...
...@param lineno src の開始行番号を指定します。省略すると 1 になります。


//emlist[][ruby]{
r
equire 'ripper'
r
equire 'pp'

pp Ripper.lex("def m(a) nil end")
# => [[[1, 0], :on_kw, "def"],
# [[1, 3], :on_sp, " "],
# [[1, 4], :on_ident, "m"],
# [[1, 5], :on_lparen,...
..."("],
# [[1, 6], :on_ident, "a"],
# [[1, 7], :on_rparen, ")"],
# [[1, 8], :on_sp, " "],
# [[1, 9], :on_kw, "nil"],
# [[1, 12], :on_sp, " "],
# on_kw, "end"
//}



Ripper
.lex は分割したトークンを詳しい情報とともに返します。
返り値の配列の要素...

Ripper::Filter.new(src, filename = &#39;-&#39;, lineno = 1) -> Ripper::Filter (9418.0)

Ripper::Filter オブジェクトを作成します。

...
Ripper
::Filter オブジェクトを作成します。

@param src Ruby プログラムを文字列か IO オブジェクトで指定します。

@param filename src のファイル名を文字列で指定します。省略すると "-" になります。

@param lineno src の開始行番号を...