種類
ライブラリ
- ビルトイン (960)
- csv (12)
- monitor (12)
- objspace (12)
-
rdoc
/ markup (12) -
ripper
/ filter (12)
クラス
-
ARGF
. class (912) - CSV (12)
- Object (12)
モジュール
- Kernel (12)
- ObjectSpace (12)
キーワード
-
$ FILENAME (12) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
ARGF
. class (12) - Filter (12)
- Markup (12)
- MonitorMixin (12)
-
NEWS for Ruby 2
. 0 . 0 (12) -
NEWS for Ruby 2
. 3 . 0 (10) - argv (12)
- binmode (12)
- binmode? (12)
- bytes (14)
- chars (14)
- close (12)
- closed? (12)
- codepoints (14)
-
count
_ tdata _ objects (12) - each (48)
-
each
_ byte (24) -
each
_ char (24) -
each
_ codepoint (24) -
each
_ line (48) - eof (12)
- eof? (12)
-
external
_ encoding (12) - file (12)
- filename (12)
- fileno (12)
- getbyte (12)
- getc (12)
- gets (36)
-
inplace
_ mode (12) -
inplace
_ mode= (12) - inspect (12)
-
internal
_ encoding (12) - lineno (12)
- lineno= (12)
- lines (42)
- new (12)
- path (12)
- pos (12)
- pos= (12)
- print (12)
- printf (12)
- putc (12)
- puts (12)
- read (12)
-
read
_ nonblock (12) - readbyte (12)
- readchar (12)
- readline (36)
- readlines (36)
- readpartial (12)
- rewind (12)
-
ruby 1
. 8 . 2 feature (12) -
ruby 1
. 9 feature (12) - seek (12)
-
set
_ encoding (36) - skip (12)
- tell (12)
-
to
_ a (36) -
to
_ i (12) -
to
_ io (12) -
to
_ s (12) -
to
_ write _ io (12) - write (12)
- 制御構造 (12)
検索結果
先頭5件
-
Ripper
:: Filter (30.0) -
イベントドリブンスタイルで Ruby プログラムを加工するためのクラスです。
...e '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.escapeHT......ML(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 にして返します。... -
NEWS for Ruby 2
. 3 . 0 (24.0) -
NEWS for Ruby 2.3.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...列リテラルとして <<~ で始まるヒアドキュメントが追加されました
9098
=== 組み込みクラスの更新
* ARGF
* ARGF.read_nonblock は IO#read_nonblock と同じように `exception: false' オプションをサポートします
11358
* Array
*......bjectSpace (objspace)
* ObjectSpace.#count_symbols を追加。
* ObjectSpace.#count_imemo_objects を追加。
* ObjectSpace.#internal_class_of を追加。
* ObjectSpace.#internal_super_of を追加。
* OpenSSL
* OpenSSL::SSL::SSLSocket#accept_nonblock と
OpenSSL::SS......$SAFE=3 が廃止されました。$SAFE を2以上にすると ArgumentError が発生します。
5455
=== C API の更新
* rb_define_class_id_under() は既にクラスが定義済みなのに、
そのスーパークラスが与えられたスーパークラスと一致しない... -
ruby 1
. 9 feature (24.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
...: IO#readchar が 1文字の String を返すようになりました
: IO#ungetc が 1バイトの String を受け付けるになりました
#: ARGF.getc が 1文字の String を返すようになりました
* 多重代入、引数渡し
: 多重代入や yield の何かが変わりまし......v:28582>)), ((<ruby-talk:185438>)), ((<ruby-core:07414>))
((<URL:http://www.atdot.net/~ko1/w3ml/w3ml.cgi/ruby-cvs/msg/16833>))
((<URL:http://eigenclass.org/hiki.rb?Changes+in+Ruby+1.9+update+4>))
=== 2006-05-22
: accept
((<ruby-core:7917>))
=== 2006-03-21
: MatchData#[] [compat]
名前......するとエラーになるバグを修正。 ((<ruby-talk:126104>))
=== 2005-01-01
: ARGF.readpartial [new]
追加 ((<ruby-dev:25381>))
: FileUtils.copy_stream(src, dst) [lib] [compat]
src として ARGF も受け付けるようになりました。
((<ruby-dev:25369>))
=== 2004-12-26... -
制御構造 (24.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
...いがそうはならない
//}
代わりにそのようなメソッド(イテレータ)を定義する必要があります。
//emlist[][ruby]{
class Array
def each2
i = 0
while i < self.size
yield self[i], self[i+1]
i += 2
end
end
end
//}
====[a:break] break
//emli......数を指定した場合はループの戻り値はその引数になります。
====[a:next] next
//emlist[例][ruby]{
# 空行を捨てるcat
ARGF.each_line do |line|
next if line.strip.empty?
print line
end
//}
文法:
next
next val
nextはもっとも内側のル......各節において文が存在しなかったときの値
はnilです。いずれにしてもensure節の値は無視されます。
d:spec/def#class、d:spec/def#module、d:spec/def#method
などの定義文では、それぞれ
begin なしで rescue, ensure 節を定義でき、これにより... -
CSV
. new(data , options = Hash . new) -> CSV (18.0) -
このメソッドは CSV ファイルを読み込んだり、書き出したりするために String か IO のインスタンスをラップします。
...d even if it occurs in a quoted field, assuming that you
would have the same line endings there. If none of those sequences is
found, +data+ is ARGF, Object::STDIN, Object::STDOUT, or
Object::STDERR, or the stream is only available for output, the default
$INPUT_RECORD_SEPARATOR ($/) is u......uki,18
3,ami,sato,19
4,yumi,adachi,21
EOS
File.write("test.csv", users)
File.open("test.csv", "r") do |f|
csv = CSV.new(f, headers: true)
csv.class # => CSV
csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
end
//}
//emlist[例 文字列の読み込み]......d|first name|last name|age
1|taro|tanaka|20
2|jiro|suzuki|18
3|ami|sato|19
4|yumi|adachi|21
EOS
csv = CSV.new(users, headers: true, col_sep: "|")
p csv.class # => CSV
p csv.first # => #<CSV::Row "id":"1" "first name":"taro" "last name":"tanaka" "age":"20">
//}
@see CSV::DEFAULT_OPTIONS, CSV.open... -
MonitorMixin (12.0)
-
スレッドの同期機構としてのモニター機能を提供するモジュールです。
....shift # 配列が空でなくなった後ロックを取得してこの行を実行
end # ロックを開放
end
end
# producer
while line = ARGF.gets
buf.synchronize do # ロックする
buf.push(line) # 配列を変更(追加)
empty_cond.signal # 配列に要素が追加された......数を受け付けないので
super ではなく super() を呼ぶ必要があります。
//emlist[include する例][ruby]{
require 'monitor'
class MyObject
include MonitorMixin
def initialize(val)
super()
@value = val
end
def to_s
synchronize {
@value.to_s
}
e... -
ObjectSpace
. # count _ tdata _ objects(result _ hash = nil) -> Hash (12.0) -
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
...:mutex=>6, Proc=>60, RubyVM::Env=>57, Mutex=>1, Encoding=>99,
# ThreadGroup=>1, Binding=>1, Thread=>1, RubyVM=>1, :iseq=>1,
# Random=>1, ARGF.class=>1, Data=>1, :autoload=>3, Time=>2}
//}
現在のバージョンでは、戻り値のキーはクラスオブジェクトかシンボルのオ... -
RDoc
:: Markup (12.0) -
RDoc 形式のドキュメントを目的の形式に変換するためのクラスです。
...フォーマットを行うようにパーサを拡張する事もできます。
例:
require 'rdoc/markup'
require 'rdoc/markup/to_html'
class WikiHtml < RDoc::Markup::ToHtml
# WikiWord のフォントを赤く表示。
def handle_special_WIKIWORD(special)
"<font color=red>......# :STRIKE のフォーマットを <strike> 〜 </strike> に指定。
wh.add_tag(:STRIKE, "<strike>", "</strike>")
puts "<body>#{wh.convert ARGF.read}</body>"
変換する形式を変更する場合、フォーマッタ(例. RDoc::Markup::ToHtml)
を変更、拡張する必要がありま...