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