3 ms·
Their docs say that something like: `def greet(name: String, greeting: String = "Hello"): String` will work for kwargs with default values — https://type-ruby
by nitza 9mo ago
Their docs say that something like:
`def greet(name: String, greeting: String = "Hello"): String`
will work for kwargs with default values — https://type-ruby.github.io/docs/getting-started/understanding-trb-files#optional-parameters https://type-ruby.github.io/docs/getting-started/understandi...
- Lio 9mo agoI think they've missed a trick there, they could have used `|` like low-type does. e.g. def greet(name: String | "Hello"): String I know it's all subjective but I think that reads better and it's valid ruby. To be honest low-type with a static analysis tool would be my favourite syntax for this. https://github.com/low-rb/low_type https://github.com/low-rb/low_type
- jrochkind1 9mo agoThat example is for positional args with default values, according to the example usage: `greet("Alice")`. Can't find ruby-style keyword args example, with or without default values. maybe no kw args in t-ruby? Or wait, found examples that claims to be keyword arguments, but you define them just the same? I'm confused. https://type-ruby.github.io/docs/learn/functions/optional-rest-parameters/#keyword-arguments https://type-ruby.github.io/docs/learn/functions/optional-re...