--- !ruby/object:RI::MethodDescription aliases: [] block_params: comment: - !ruby/struct:SM::Flow::P body: "Returns a value from the hash for the given key. If the key can't be found, there are several options: With no other arguments, it will raise an IndexError exception; if default is given, then that will be returned; if the optional code block is specified, then that will be run and its result returned." - !ruby/struct:SM::Flow::VERB body: " h = { "a" => 100, "b" => 200 }\n h.fetch("a") #=> 100\n h.fetch("z", "go fish") #=> "go fish"\n h.fetch("z") { |el| "go fish, #{el}"} #=> "go fish, z"\n" - !ruby/struct:SM::Flow::P body: The following example shows that an exception is raised if the key is not found and a default value is not supplied. - !ruby/struct:SM::Flow::VERB body: " h = { "a" => 100, "b" => 200 }\n h.fetch("z")\n" - !ruby/struct:SM::Flow::P body: produces: - !ruby/struct:SM::Flow::VERB body: " prog.rb:2:in `fetch': key not found (IndexError)\n from prog.rb:2\n" full_name: Hash#fetch is_singleton: false name: fetch params: | hsh.fetch(key [, default] ) => obj hsh.fetch(key) {| key | block } => obj visibility: public