種類
- 特異メソッド (88)
- インスタンスメソッド (55)
- 文書 (11)
ライブラリ
- ビルトイン (22)
- optparse (11)
- psych (44)
- rake (11)
-
ripper
/ lexer (22) -
ripper
/ sexp (22) -
webrick
/ httputils (11)
クラス
- BasicObject (22)
- OptionParser (11)
-
Rake
:: FileList (11) - Ripper (44)
-
WEBrick
:: HTTPUtils :: FormData (11)
モジュール
- Psych (44)
キーワード
- egrep (11)
-
instance
_ eval (22) - lex (11)
- load (22)
-
load
_ stream (22) - parse (11)
-
ruby 1
. 6 feature (11) - sexp (11)
-
sexp
_ raw (11) - tokenize (11)
検索結果
先頭5件
- WEBrick
:: HTTPUtils :: FormData # filename=(value) - BasicObject
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object - BasicObject
# instance _ eval {|obj| . . . } -> object - Ripper
. tokenize(src , filename = & # 39;-& # 39; , lineno = 1 , raise _ errors: false) -> [String] - Ripper
. tokenize(src , filename = & # 39;-& # 39; , lineno = 1) -> [String]
-
WEBrick
:: HTTPUtils :: FormData # filename=(value) (21212.0) -
フォームデータの filename 属性を文字列で表すアクセサです。
...filename 属性を文字列で表すアクセサです。
@param value フォームデータの filename 属性を文字列で指定します。
例:
require "webrick/cgi"
class MyCGI < WEBrick::CGI
def do_GET(req, res)
p req.query['q'].filename #=> "my_file.txt"
end
end
MyCGI.n... -
BasicObject
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (6237.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
...価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_ev......ます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。
BasicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見......です。
@param filename 文字列を指定します。ファイル filename に文字列 expr が
書かれているかのように実行されます。スタックトレースの
表示などを差し替えることができます。
@param lineno 整数を指定... -
BasicObject
# instance _ eval {|obj| . . . } -> object (6137.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
...価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_ev......ます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。
BasicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見......です。
@param filename 文字列を指定します。ファイル filename に文字列 expr が
書かれているかのように実行されます。スタックトレースの
表示などを差し替えることができます。
@param lineno 整数を指定... -
Ripper
. tokenize(src , filename = & # 39;-& # 39; , lineno = 1 , raise _ errors: false) -> [String] (6125.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。
...ムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lineno src の開始行番号を指定します。省略すると 1 になります。
@param raise_errors true を指......。
@raise SyntaxError raise_errors が true で、src に文法エラーがある場合に発生します。
//emlist[][ruby]{
require 'ripper'
p Ripper.tokenize("def m(a) nil end")
# => ["def", " ", "m", "(", "a", ")", " ", "nil", " ", "end"]
Ripper.tokenize("def req(true) end", raise_errors:......SyntaxError (syntax error, unexpected `true', expecting ')')
//}
Ripper.tokenize は空白やコメントも含め、
元の文字列にある文字は 1 バイトも残さずに分割します。
ただし、ごく僅かな例外として、__END__ 以降の文字列は黙って捨てられます... -
Ripper
. tokenize(src , filename = & # 39;-& # 39; , lineno = 1) -> [String] (6119.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。
...か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lineno src の開始行番号を指定します。省略すると 1 になります。
//emlist[][ruby]{
require 'ripper'
p Ripper.......tokenize("def m(a) nil end")
# => ["def", " ", "m", "(", "a", ")", " ", "nil", " ", "end"]
//}
Ripper.tokenize は空白やコメントも含め、
元の文字列にある文字は 1 バイトも残さずに分割します。
ただし、ごく僅かな例外として、__END__ 以降の文字列... -
OptionParser
# load(filename = nil) -> bool (3207.0) -
指定された filename を読み込んで各行をまとめたものに対して OptionParser#parse を行ないます。
...指定された filename を読み込んで各行をまとめたものに対して OptionParser#parse を行ないます。
パースが成功した場合に true を返します。
ファイルが存在しなかった場合に false を返します。
@param filename 各行をパースしたい......れないか nil である場合、~/.options/ に
プログラムのサフィックスを付けた '~/.options/コマンド名' というファイルをパースします。
//emlist[例][ruby]{
require "optparse"
IO.write("options.txt", %w(-a --b).join("\n"))
options = { a: false......, b: false }
OptionParser.new do |opt|
opt.on('-a') { |v| options[:a] = v }
opt.on('--b') {|v| options[:b] = v }
opt.load("options.txt") # => true
opt.load("not_exist.txt") # => false
end
p options # => {:a=>true, :b=>true}
//}... -
Rake
:: FileList # egrep(pattern) {|filename , count , line| . . . } (3160.0) -
与えられたパターンをファイルリストから grep のように検索します。
...//emlist[][ruby]{
# Rakefile での記載例とする
IO.write("sample1", "line1\nline2\nline3\n")
IO.write("sample2", "line1\nline2\nline3\nline4\n")
task default: :test_rake_app
task :test_rake_app do
file_list = FileList.new('sample*')
file_list.egrep(/line/) # => 7
file_list.egrep(/.......|filename, count, line|
"filename = #{filename}, count = #{count}, line = #{line}"
end
end
# => "filename = sample1, count = 1, line = line1\n"
# => "filename = sample1, count = 2, line = line2\n"
# => "filename = sample1, count = 3, line = line3\n"
# => "filename = sample2, count = 1, line......= line1\n"
# => "filename = sample2, count = 2, line = line2\n"
# => "filename = sample2, count = 3, line = line3\n"
# => "filename = sample2, count = 4, line = line4\n"
//}... -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1 , raise _ errors: false) -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (3137.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
...Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lin......raise_errors true を指定すると、src にエラーがある場合に例外(SyntaxError)を発生させます。省略すると false になります。
@raise SyntaxError raise_errors が true で、src に文法エラーがある場合に発生します。
//emlist[][ruby]{
require 'rippe......r'
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, " ",... -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1) -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (3131.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......G],
# [[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 は分割したトークンを詳しい情報とともに返します。
返り値の......emlist[][ruby]{
require '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 は分割したトークンを詳しい情報とともに返します。
返り値の配列の要素は 4 要素の配列 (概念的にはタプル) で... -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1) -> [[Integer , Integer] , Symbol , String] (3113.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
...Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lin......すると 1 になります。
//emlist[][ruby]{
require 'ripper'
require '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,......nil"],
# [[1, 12], :on_sp, " "],
# on_kw, "end"
//}
Ripper.lex は分割したトークンを詳しい情報とともに返します。
返り値の配列の要素は 3 要素の配列 (概念的にはタプル) です。
その内訳を以下に示します。
: 位置情報 (Integer,In... -
Ripper
. sexp(src , filename = & # 39;-& # 39; , lineno = 1) -> object (3107.0) -
Ruby プログラム str を解析して S 式のツリーにして返します。
...て返します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lineno src の開始行番号を指定します。省略すると 1 に......す。
//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, 6]]], nil, nil, nil, nil]],
# [:bodystmt, @kw, "nil", [1, 9]], nil, nil, nil]]]]
//}
パ......以下のような形式になります。
[:@イベント名, トークン, 位置情報(行、桁の配列)]
例:
[:@ident, "m", [1, 4]]
また、Ripper.sexp は Ripper.sexp_raw とは異なり、読みやすさのため
に stmts_add や stmts_new のような _add、_new で終わるパ... -
Ripper
. sexp _ raw(src , filename = & # 39;-& # 39; , lineno = 1) -> object (3107.0) -
Ruby プログラム str を解析して S 式のツリーにして返します。
...て返します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lineno src の開始行番号を指定します。省略すると 1 に......ています。
//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]],
# [: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 とは異なり解析結果を加工しません。
@see Ripper.sexp... -
ruby 1
. 6 feature (1356.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) ->......rityError)
=> ruby 1.6.7 (2002-07-30) [i586-linux]
: 2002-05-20 IO#close
双方向のパイプの dup を close_write するとエラーになっていました。
((<ruby-dev:17155>))
open("|-","r+") {|f|
if f
f.dup.close_write
else
sleep 1
end......-e:1:in `extend'
from -e:1
: $SAFE / ((<load|組み込み関数>))
1 <= $SAFE <= 3 で、第二引数が true のとき汚染されたファイル名を
指定しても load() できてしまうバグが修正されました。((<ruby-dev:13481>))
$SAFE = 1
filename = "foo...