るりまサーチ

最速Rubyリファレンスマニュアル検索!
33件ヒット [1-33件を表示] (0.081秒)

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

種類

クラス

モジュール

キーワード

検索結果

Object::STDIN -> IO (47177.0)

標準入力。$stdin のデフォルト値。 $stdin も参照してください。

...標準入力。$stdin のデフォルト値。 $stdin も参照してください。

STDIN
は、 ruby プロセスが起動された時点での標準入力を表します。
起動時点では $stdin も同じ値に初期化されています。

$stdin に他の入力オブジェクトを代入...
...することで簡易なリダイレクトを実現できます。
そして、 $stdin STDIN を代入すればこのリダイレクトを復元できるわけです。

=== 注意
STDIN
は ruby 自体が起動された時点での標準入力です。
「システムにおける標準の入力...
...す。

多くのシステムでは標準の入力ストリームは端末です。
ruby 自体が他のストリームに向けて入力をリダイレクトされた状態で起動された場合、
STDIN
が保持するのは端末ではなく、リダイレクト先のストリームです。...

Kernel$$stdin -> object (14306.0)

標準入力です。

...$stdin に代入すれば十分です。

//emlist[例][ruby]{
# 標準入力の入力元 /tmp/foo に変更
$stdin = File.open("/tmp/foo", "r")
gets # 入力する
$stdin = STDIN # 元に戻す
//}

ただし、Kernel.#gets など、特定の組み込みメソッドは
$stdin...
...ブジェクトにメソッドを転送して実装されています。
従って、Kernel.#gets などが正しく動作するには、
$stdin オブジェクトに代入したオブジェクトが以下のメソッドを
正しく実装していなければいけません。

gets, readline,...
...//emlist[例][ruby]{
$stdin = Object.new
def $stdin.gets
"foo"
end
p gets() # => "foo"
//}

自プロセスだけでなく、子プロセスの標準入力もリダイレクトしたいときは
以下のように IO#reopen を使います。

//emlist[例][ruby]{
$stdin.reopen("/tmp/foo")
//}...

Module.constants -> [Symbol] (8014.0)

このメソッドを呼び出した時点で参照可能な定数名の配列を返します。

...//emlist[例][ruby]{
class C
FOO = 1
end
p Module.constants # => [:RUBY_PLATFORM, :STDIN, ..., :C, ...]
# 出力中に :FOO は現われない
//}

@see Module#constants, Kernel.#local_variables, Kernel.#global_variables, Object#instance_variables, Module#class_variables...