Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The line is blurred because an await adapter is not an awaiter and not an awaitable. An await adapter is an object which adapts various entire styles of asynchronous waiting to a common API.
Calling the variables
awaitAdapter
is a bit of a mouthful andadapter
is too bland. If you squint, you can think of the instance methods as similar in spirit to the C# language concept of an awaiter. Even though it's not the same thing, I think it's close enough to justify the variable name.Also, if we ever passed these instances to a public API, we'd probably pass them as
IAwaiterObject awaiter
. I saw this in #3037 and really liked it. (AwaitAdapter is still a better name for the class because the class specifically exists in order to adapt, whereas the interface could be used on things that are not adapters.)