As of ruby 1 9 you can do some pretty odd things with array destructuring and splatting.
Ruby splat operator.
The splat operator converts the array into a list of its elements.
Attr reader title author category that s the power of the splat operator matching operator what is this funny looking ruby.
Avoiding creation of array improves performance.
I ve seen the splat operator being used in method definitions to group remaining arguments but it turns out there are actually quite a few other uses as well.
You may use an operator but do a little digging and you ll find that you ve only been scratching the surface of what it s capable of.
So it would be like taking away the array replacing it with everything inside it.
The split mode.
For each operator plus.
The humble splat operator and is a great example.
B is interpreted as a plus b where the plus.
In one of my recent posts someone pointed out that using the splat operator would have made some of the code a bit simpler.
One of the things that i love about ruby is the depth of its features.
Method in the object referred to by variable a is called with b as its argument.
It can be used for hashes.
Here s an example for the most basic use of a double splat.
The double splat operator came out back in ruby 2 0.
Zoo pet1 pet2 pet3 the splat operator can be used in a case statement.
2 one 1 two 2 putting it all together.
This article has been republished on monkey and crow.
Case when with splat operator use instructions like duparray concatarray which result in creation of arrays.
It s pretty similar to the original splat with one difference.
Ruby supports a rich set of operators as you d expect from a modern language.
Most operators are actually method calls.
In other words the last example translates to.
Here is how to create a method that adds a variable number of numbers passed as arguments.
Putting the star before an object invokes the splat operator which has a variety of effects first we ll start with some very useful examples then we will poke around the dark corners of ruby s arrays and the splat operator.
Pet1 pet2 pet3 duck dog cat the collect mode.
For example a plus.
There is a corresponding form of abbreviated assignment operator.
You ve probably used splats for catch all arguments.