ReactiveCocoa/ReactiveCocoa — pull request #1247 by kastiglione (2014-04-14 01:23:42+00:00)
Title: Replace uses of -bind: with -transform:

:warning: **NOT READY TO MERGE** :warning:

I had an idea that the uses of `-bind:` could be replaced with similar but more imperative operator, which I've called `-transform:`, but I don't feel strongly about the name. I think it's purpose is a bit more clear than `-bind:`, but I'm not sure if it holds its weight. The fact that I wrapped its use in `+defer:` in some places may indicate that it doesn't.

You could think of `-transform:` as, in your best Ron Burgundy voice, `-sendNext?:`, because the block is given the subscriber allowing it do whatever it wants. It can call `-sendNext:`, it can call `-sendCompleted`, or it can even call `-sendError:`.

The reason I thought this might be useful is because when I started rewriting the operators that depend on `-bind:` (to see what it would look like for #1239), I found that implementing these operators explicitly with `-subscribeSavingDisposable:next:error:completed:` increased the signal to noise of the definition relative to their `-bind:` implementations, since it was only the `next:` block that varied and the other blocks just added visual noise.

Resolves #1239

TODO:

- [ ] Tests
- [ ] Documentation