[Compiler] Refactor vm.Value
and related operations to be independent of the vm.Config
#3817
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.
Work towards #3693
Description
Similar to the refactor in the interpreter, avoid the
vm.Config
from being passed into value related functions (StaticType
,Transfer
, etc.) at the VM side. Instead, pass only what is needed for each function, as an interface (re-use interpreter's interfaces wherever possible).In the follow-up PR #3819, similar interfaces are defined at the interpreter (e.g:
ValueTransferContext
) and decoupled more ofinterpreter.Value
s.The idea is to gradually decouple values of both sides (both vm and interpreter), and make bring the interfaces defined in both sides to an exact match, which will allow us to switch and replace vm-values from the interpreter-values.
master
branchFiles changed
in the Github PR explorer