45件ヒット
[1-45件を表示]
(0.031秒)
キーワード
-
NEWS for Ruby 2
. 2 . 0 (10) - Ruby用語集 (11)
-
ruby 1
. 6 feature (11) - セキュリティモデル (2)
- 制御構造 (11)
検索結果
-
NEWS for Ruby 2
. 2 . 0 (6043.0) -
NEWS for Ruby 2.2.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...NEWS for Ruby 2.2.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス......改善: Windows上でパイプのための IO#read_nonblock, IO#write_nonblock をサポートしました。
* Kernel
* 追加: Kernel.#itself(Object#itself)
* 改善: Kernel.#throw は、対応する catch ブロックがないとき ArgumentError ではなく
ArgumentError のサ......リの更新 (優れたもののみ)
* continuation
* callcc は廃止されました。Fiberを使ってください。
* digest
* Kernel.#Digest はスレッドセーフになりました。
マルチスレッド環境でオンデマンドローディングに関して問題が... -
ruby 1
. 6 feature (3313.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...00019>))
: 2002-09-11: Queue#((<Queue/pop>))
Queue#pop に競合状態の問題がありました ((<ruby-dev:17223>))
: 2002-09-11: SizedQueue.new
引数に 0 以下を受けつけるバグが修正されました。
: 2002-09-05: ((<リテラル/式展開>))
stable snapshot で、一......フォルト値 (((<Hash/default>))) も == で等しい
ときに等しいとみなされるようになりました。
p Hash.new("foo") == Hash.new("bar")
=> ruby 1.6.7 (2002-03-01) [i586-linux]
true
=> ruby 1.6.7 (2002-08-21) [i586-linux]
false......2 回シグナルを送らないと終了しない不具合が修正さ
れました。((<ruby-bugs-ja:PR#223>))
trap(:TERM, "EXIT")
END{
puts "exit"
}
Thread.start { Thread.stop }
sleep
: 2002-04-17: Regexp#inspect
((<ruby-bugs-ja:PR#222>))
p %r{\/}
=>... -
セキュリティモデル (103.0)
-
セキュリティモデル RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ 機構が備わっています。
...$SAFEの値は0
* 各スレッドは作られた時点での親スレッドの$SAFEの値を引き継ぐ
//emlist[][ruby]{
$SAFE = 0
th = Thread.new{
p $SAFE # => 0
$SAFE = 1
}
th.join
p $SAFE # => 0
//}
* $SAFE の値を現在の値より小さく変更する事はできない
//emlist{......* 外部コマンド実行 (Kernel.#system, Kernel.#exec, Kernel.#`, Kernel.#spawn など)
* Kernel.#eval
* トップレベルへの Kernel.#load (第二引数を指定してラップすれば実行可能)
* Kernel.#require
* Kernel.#trap
==== レベル 2
===== 汚......#setpriority Process.#egid= Process.#kill
* 危険なパスからの Kernel.#load
* 汚染された文字列を引数にしての Kernel.#load (ラップされていても)
* Kernel.#syscall
* Kernel.#exit!
* Kernel.#trap
==== レベル 3
生成される全てのオブジェクト... -
制御構造 (67.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
...# 例外 RuntimeError を発生させる
# 以下の二つは SyntaxError を発生させる
raise SyntaxError, "invalid syntax"
raise SyntaxError.new("invalid syntax")
raise # 最後の例外の再発生
//}
文法:
raise
raise messageまたはexception......一引数で指定された例外を、第二引数をメッセージとして発生さ
せます。第四の形式の第三引数は
$@または
Kernel.#callerで得られる
スタック情報で、例外が発生した場所を示します。
発生した例外は後述の begin 式の rescue......! でも得られます。また例外が
発生したソースコード上の位置は変数 $@ に格納されます。
Kernel.#raise は Ruby の予約語ではなく、Kernel モジュールで
定義されている関数的メソッドです。
====[a:begin] begin
//emlist[例][ruby]{
begin... -
Ruby用語集 (49.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
...し、切り替えて使うための
ツールの一つ。Linux、macOS などで動作する。
https://github.com/rbenv/rbenv
: RD(Ruby Document format)
Ruby スクリプト中に記述することを念頭に作られたドキュメントフォーマット。
: RDoc
Ruby スクリ......る時点において、そこに至るメソッド呼び出し元情報を遡るデータ。
バックトレースともいう。
Kernel.#caller_locations、Kernel.#caller で現時点までの
スタックトレースを得ることができる。
また、例外オブジェクトは例......ト
===[a:ta] た
: 大域脱出
: non-local exit
Ruby においては、例外の発生もしくは Kernel.#throw によって
処理の実行が中断されること。
例外の場合は begin/rescue によって、throw の場合は
Kernel.#catch によって捕捉されるまで、制...