Alexandre Terrasa
Alexandre Terrasa
I think it's a good step between `untyped` and `nilable` 👍 Do you want to take a stab at it?
It looks like you're looking for [`top`](https://github.com/ruby/rbs/blob/master/docs/syntax.md#base-types), the super type of all types? Here's how [we use it with Sorbet](https://sorbet.run/?arg=--enable-experimental-rbs-comments#%23%20typed%3A%20true%0A%0A%23%3A%20%28top%29%20-%3E%20void%0Adef%20foo%28x%29%0A%20%20x.to_s%20%23%20error%3A%20Method%20%60to_s%60%20does%20not%20exist%20on%20%60top%60%0Aend%0A%0Afoo%2842%29%0Afoo%28nil%29%0Afoo%28-%3E%28%29%20%7B%7D%29%0A%0A%23%3A%20%28untyped%29%20-%3E%20void%0Adef%20bar%28x%29%0A%20%20x.to_s%20%23%20ok%0Aend%0A%0Abar%2842%29%0Abar%28nil%29%0Abar%28-%3E%28%29%20%7B%7D%29%0A): ```rb # typed: true #: (top) -> void def foo(x)...
I believe this is still valid with the parenthesis right? See on [`sorbet.run`](https://sorbet.run/?arg=--enable-experimental-rbs-comments#%23%20typed%3A%20true%0A%0A%23%3A%20%28%28Symbol%20%7C%20String%29%29%20-%3E%20void%0Adef%20foo%28x%29%3B%20end%0A%0A%23%3A%20%28Symbol%20%7C%20String%29%20-%3E%20void%0Adef%20bar%28x%29%3B%20end%0A%0A%23%3A%20%28%28Symbol%20%7C%20String%29%20x%29%20-%3E%20void%0Adef%20baz%28x%29%3B%20end%0A%0A%23%3A%20%28Symbol%20%7C%20String%20x%29%20-%3E%20void%0Adef%20qux%28x%29%3B%20end), all these examples are valid syntax: ```rb #: ((Symbol | String)) -> void def foo(x); end #:...