Open zuccoi opened 7 years ago
Use then
instead if you'd like to use such like that :-)
then
's primary use case is to customize newly created instance. So, then
returns the instance of type Self.
On the other hand, do
is not restricted to Self
. do
can return nothing, and instance with type of T (arbitrary type).
If you allow do
to return T, you can do something like below
let firstDateOfNextMonth: Date = Calendar(identifier: .gregorian).do {
var date = $0.date(bySetting: .day, value: 1, of: Date())!
date = $0.date(byAdding: .month, value: 1, to: date)!
return date
}
Hello @zuccoi Do you still want to merge this pull request?
I want
do
to return arbitrary value. When you don't return anything in block ofdo
, it's usage is same as before.