Ruby 3 · Blocks, classes and pattern matching

Match patterns

case/in destructures arrays and hashes and binds variables.

result = { status: "ok", data: { id: 7 } }
case result
in { status: "ok", data: { id: } }
  puts "found #{id}"
in { status: "error" }
  puts "failed"
end

Official Ruby 3 documentation

More blocks, classes and pattern matching commands

All blocks, classes and pattern matching commands · Ruby 3 cheatsheet

Was this page helpful?