[Move] Add Transfer::transfer_object_to_id #737
Merged
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.
Often we need to construct a parent object and at the same time set one of the fields as a ChildRef as a proof of owning another object. This cannot be done today because to get a child ref we must first transfer an object to the parent object. But the parent object is still being created, thus the dilemma.
This PR adds a new API
transfer_object_to_id
in Transfer module that allows us to transfer an object to an object ID (which represents the parent object). With this, to do what we wanted to do, we could then first create a new ID for the parent object, transfer the child object into the id, and then construct the parent object with the child ref.