exec(command, options={}) -> ()[permalink][rdoc][edit] exec(env, command, options={}) -> () 引数で指定されたコマンドを実行します。 プロセスの実行コードはそのコマンド(あるいは shell)になるので、起動に成功した場合、このメソッドからは戻りません。 引数の解釈 この形式では command が shell のメタ文字 * ? {} [] <> () ~ & | \ $ ; ' ` " \n を含む場合、shell 経由で実行されます。そうでなければインタプリタから直接実行されます。 [PARAM] command: コマンドを文字列で指定します。 [PARAM] env: 更新する環境変数を表す Hash [PARAM] options: オプションパラメータ Hash [EXCEPTION]
http://nhiro.org/learn_language/with_statement.htmlJava7は名前の通りtryと抱き合わせになっている。C#とPythonは分離されている。なのでJava7でC#やPythonと同じ挙動をしたければ必要なくても空のfinallyを書くことになる。(追記: finallyやexceptを伴わないtryもOKでした。thanks id:nowokay)本体が正常終了または例外を投げて異常終了した場合のどちらでも呼ばれる「後片付けメソッド」はC#だとDispose、Java7だとclose、Pythonだと__exit__。しかしPython以外は引数を取らない。本体が正常に終了したのかどうかはどうやって知るんだろうか。知る必要はないという判断なんだろうか。追記:Pythonがどんな引数を取るのか他の言語の人には想像がつきにくいらしいの
具体的には、テストです *2 。例えば foo(1, 2) で wrong number of arguments が投げられることをテストしたいとします。以下のテストだと、wrong number of arguments 以外の ArgumentError が投げられる場合でも合格になってしまいます。 assert_raise(ArgumentError) { foo(1, 2) }ちゃんとやりたければ、例えばこんな感じのコードを書かないとだめかな。 flag = false begin foo(1, 2) rescue ArgumentError => e raise unless ex.message[/\Awrong number of arguments \(\d+ for \d+\)\z/] flag = true end assert(flag)Ruby の例外クラスは分
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く