-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor lazyGet
#10701
Refactor lazyGet
#10701
Conversation
these have been left un-rolled because the run-time doesn't optimize these code-paths well. As they are invoked tens of thousands of times or more, this does make me nervous. In reality, it may not make that much of a difference, but until the @eviltrout's awesome suite is more comprehensive I remain apprehensive. |
@stefanpenner That's fine. I have one more of these that I'll throw at you guys that I think is uncontroversial and then leave it alone. |
lets wait for others feedback, like @krisselden and @ebryn |
To possibly make quicker work of the last clean up PR that I had in mind: These two methods appear to be identical and could be turned into one method, perhaps called In a crash course on optimized code, @mmun told me that that sometimes two identical functions could allow the compiler to optimize two different code paths based on the arguments that are passed in. In this case I don't see any reason to believe these functions would be called with types of arguments (both are only called internally in this module). Let me know if you think that would be a worthwhile change. |
@mitchlloyd this looks ok, but since this is only called with a not
|
@krisselden What do you think about
Passing something like |
* Extract `isVolatile` function * Combine logic flow for when to use `get` vs use the meta cache
3bf6f8d
to
195943e
Compare
sorry, I totally missed your response to my feedback, looks good |
isCacheableDescriptor
functionget
vs use the meta cache@mmun This has been fixed after your review.