Open ajvincent opened 6 years ago
Branch name: priority-queue-0.9
To do:
It turns out the testcase is more complex than this, although where is not entirely clear.
Clarifications to the test steps:
Too complicated for this late in the 0.9 cycle. Besides, there's other major refactoring work to happen on that milestone.
I think that #179 may obsolete this entire problem... if the proxy is created around a forwarding proxy handler that can be retargeted to different secondary handlers on demand. Simply put, why would we need to replace the proxy in that case?
From spec/non-membrane/lazyGetter.js:
From a speech outline:
I have a probable solution: we need to delay returning any of these proxies under construction until all the proxies have been appropriately created, their properties set, and the proxies sealed. This will require the actual proxies' handlers to use a priority queue, where no handler trap exits until the queue is completely cleared. The high priority operations will be in creating and populating the Proxy objects. The low priority operations will be in sealing the Proxy objects.