A method's return type is always inferred by the compiler. However, you might want to specify it for two reasons:
def some_method : String "hello" end
The return type follows the type grammar.
Marking a method as returning
Nil will make it return
nil regardless of what it actually returns:
def some_method : Nil 1 + 2 end some_method # => nil
This is useful for two reasons:
nilwithout needing to add an extra
nilat the end, or at every return point
These methods usually imply a side effect.
Void is the same, but
Nil is more idiomatic:
Void is preferred in C bindings.
To the extent possible under law, the persons who contributed to this workhave waived
all copyright and related or neighboring rights to this workby associating CC0 with it.