123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #include "MainApplicationTurboModuleManagerDelegate.h"
- #include "MainApplicationModuleProvider.h"
-
- namespace facebook {
- namespace react {
-
- jni::local_ref<MainApplicationTurboModuleManagerDelegate::jhybriddata>
- MainApplicationTurboModuleManagerDelegate::initHybrid(
- jni::alias_ref<jhybridobject>) {
- return makeCxxInstance();
- }
-
- void MainApplicationTurboModuleManagerDelegate::registerNatives() {
- registerHybrid({
- makeNativeMethod(
- "initHybrid", MainApplicationTurboModuleManagerDelegate::initHybrid),
- makeNativeMethod(
- "canCreateTurboModule",
- MainApplicationTurboModuleManagerDelegate::canCreateTurboModule),
- });
- }
-
- std::shared_ptr<TurboModule>
- MainApplicationTurboModuleManagerDelegate::getTurboModule(
- const std::string &name,
- const std::shared_ptr<CallInvoker> &jsInvoker) {
- // Not implemented yet: provide pure-C++ NativeModules here.
- return nullptr;
- }
-
- std::shared_ptr<TurboModule>
- MainApplicationTurboModuleManagerDelegate::getTurboModule(
- const std::string &name,
- const JavaTurboModule::InitParams ¶ms) {
- return MainApplicationModuleProvider(name, params);
- }
-
- bool MainApplicationTurboModuleManagerDelegate::canCreateTurboModule(
- const std::string &name) {
- return getTurboModule(name, nullptr) != nullptr ||
- getTurboModule(name, {.moduleName = name}) != nullptr;
- }
-
- } // namespace react
- } // namespace facebook
|