Allow HermesJSRuntime/HermesRuntimeTargetDelegate to take both jsi::Runtime and HermesRuntime arguments in ctor#55732
Open
lavenzg wants to merge 1 commit intofacebook:mainfrom
Open
Allow HermesJSRuntime/HermesRuntimeTargetDelegate to take both jsi::Runtime and HermesRuntime arguments in ctor#55732lavenzg wants to merge 1 commit intofacebook:mainfrom
lavenzg wants to merge 1 commit intofacebook:mainfrom
Conversation
…untime and HermesRuntime arguments in ctor (facebook#55732) Summary: Ideally we only need to pass jsi::Runtime, from which we can cast to IHermes for Hermes specific interface methods. But in some scenarios like instrumenting the runtime or tracing JSI calls, the passed runtime would be a decorator of the actual HermesRuntime, we can't do casting on the decoration type since it doesn't implement IHermes. So this diff changes it to pass both a shared_ptr of jsi::Runtime and HermesRuntime reference. It has no behavioral change. Changelog: [Internal] Differential Revision: D94258352
478bff7 to
f6790d3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary:
Ideally we only need to pass jsi::Runtime, from which we can cast to
IHermes for Hermes specific interface methods. But in some scenarios
like instrumenting the runtime or tracing JSI calls, the passed runtime
would be a decorator of the actual HermesRuntime, we can't do casting
on the decoration type since it doesn't implement IHermes. So this diff
changes it to pass both a shared_ptr of jsi::Runtime and HermesRuntime
reference. It has no behavioral change.
Changelog: [Internal]
Differential Revision: D94258352