Pass string by ref in TurboModule lookup path
Summary: Avoid unnecessary string copies Changelog: [internal] Reviewed By: nlutsenko Differential Revision: D36312750 fbshipit-source-id: caf0985f988eb497de3be3c0526809593b01a9e2
This commit is contained in:
Родитель
51e029ec3c
Коммит
3337add547
|
@ -27,8 +27,8 @@ void CompositeTurboModuleManagerDelegate::registerNatives() {
|
|||
|
||||
std::shared_ptr<TurboModule>
|
||||
CompositeTurboModuleManagerDelegate::getTurboModule(
|
||||
const std::string moduleName,
|
||||
const std::shared_ptr<CallInvoker> jsInvoker) {
|
||||
const std::string &moduleName,
|
||||
const std::shared_ptr<CallInvoker> &jsInvoker) {
|
||||
for (auto delegate : mDelegates_) {
|
||||
if (auto turboModule = delegate->getTurboModule(moduleName, jsInvoker)) {
|
||||
return turboModule;
|
||||
|
@ -39,7 +39,7 @@ CompositeTurboModuleManagerDelegate::getTurboModule(
|
|||
|
||||
std::shared_ptr<TurboModule>
|
||||
CompositeTurboModuleManagerDelegate::getTurboModule(
|
||||
const std::string moduleName,
|
||||
const std::string &moduleName,
|
||||
const JavaTurboModule::InitParams ¶ms) {
|
||||
for (auto delegate : mDelegates_) {
|
||||
if (auto turboModule = delegate->getTurboModule(moduleName, params)) {
|
||||
|
|
|
@ -29,10 +29,10 @@ class CompositeTurboModuleManagerDelegate
|
|||
static void registerNatives();
|
||||
|
||||
std::shared_ptr<TurboModule> getTurboModule(
|
||||
const std::string moduleName,
|
||||
const std::shared_ptr<CallInvoker> jsInvoker) override;
|
||||
const std::string &moduleName,
|
||||
const std::shared_ptr<CallInvoker> &jsInvoker) override;
|
||||
std::shared_ptr<TurboModule> getTurboModule(
|
||||
const std::string moduleName,
|
||||
const std::string &moduleName,
|
||||
const JavaTurboModule::InitParams ¶ms) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -23,11 +23,11 @@ class TurboModuleManagerDelegate
|
|||
"Lcom/facebook/react/turbomodule/core/TurboModuleManagerDelegate;";
|
||||
|
||||
virtual std::shared_ptr<TurboModule> getTurboModule(
|
||||
const std::string name,
|
||||
const std::string &name,
|
||||
const JavaTurboModule::InitParams ¶ms) = 0;
|
||||
virtual std::shared_ptr<TurboModule> getTurboModule(
|
||||
const std::string name,
|
||||
const std::shared_ptr<CallInvoker> jsInvoker) = 0;
|
||||
const std::string &name,
|
||||
const std::shared_ptr<CallInvoker> &jsInvoker) = 0;
|
||||
|
||||
private:
|
||||
friend HybridBase;
|
||||
|
|
|
@ -197,7 +197,7 @@ NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI(
|
|||
}
|
||||
|
||||
std::shared_ptr<TurboModule> SampleTurboModuleSpec_ModuleProvider(
|
||||
const std::string moduleName,
|
||||
const std::string &moduleName,
|
||||
const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == "SampleTurboModule") {
|
||||
return std::make_shared<NativeSampleTurboModuleSpecJSI>(params);
|
||||
|
|
|
@ -25,7 +25,7 @@ class JSI_EXPORT NativeSampleTurboModuleSpecJSI : public JavaTurboModule {
|
|||
};
|
||||
|
||||
std::shared_ptr<TurboModule> SampleTurboModuleSpec_ModuleProvider(
|
||||
const std::string moduleName,
|
||||
const std::string &moduleName,
|
||||
const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
|
|
|
@ -114,7 +114,7 @@ namespace react {
|
|||
|
||||
${modules}
|
||||
|
||||
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
${moduleLookups.map(ModuleLookupTemplate).join('\n')}
|
||||
return nullptr;
|
||||
}
|
||||
|
|
|
@ -54,7 +54,7 @@ namespace react {
|
|||
|
||||
${modules}
|
||||
|
||||
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
|
|
@ -24,7 +24,7 @@ NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI(const JavaTurboMo
|
|||
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> SampleWithUppercaseName_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> SampleWithUppercaseName_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"SampleTurboModule\\") {
|
||||
return std::make_shared<NativeSampleTurboModuleSpecJSI>(params);
|
||||
}
|
||||
|
@ -93,7 +93,7 @@ NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI(const JavaTurboMo
|
|||
methodMap_[\\"getNullableArray\\"] = MethodMetadata {0, __hostFunction_NativeSampleTurboModuleSpecJSI_getNullableArray};
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"SampleTurboModule\\") {
|
||||
return std::make_shared<NativeSampleTurboModuleSpecJSI>(params);
|
||||
}
|
||||
|
@ -130,7 +130,7 @@ NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI(const JavaTurboMo
|
|||
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"SampleTurboModule\\") {
|
||||
return std::make_shared<NativeSampleTurboModuleSpecJSI>(params);
|
||||
}
|
||||
|
@ -171,7 +171,7 @@ AliasTurboModuleSpecJSI::AliasTurboModuleSpecJSI(const JavaTurboModule::InitPara
|
|||
methodMap_[\\"cropImage\\"] = MethodMetadata {1, __hostFunction_AliasTurboModuleSpecJSI_cropImage};
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> native_modules_with_type_aliases_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> native_modules_with_type_aliases_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"AliasTurboModule\\") {
|
||||
return std::make_shared<AliasTurboModuleSpecJSI>(params);
|
||||
}
|
||||
|
@ -250,7 +250,7 @@ NativeExceptionsManagerSpecJSI::NativeExceptionsManagerSpecJSI(const JavaTurboMo
|
|||
methodMap_[\\"dismissRedbox\\"] = MethodMetadata {0, __hostFunction_NativeExceptionsManagerSpecJSI_dismissRedbox};
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"CameraRollManager\\") {
|
||||
return std::make_shared<NativeCameraRollManagerSpecJSI>(params);
|
||||
}
|
||||
|
@ -342,7 +342,7 @@ NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI(const JavaTurboMo
|
|||
methodMap_[\\"getValueWithPromise\\"] = MethodMetadata {1, __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithPromise};
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"SampleTurboModule\\") {
|
||||
return std::make_shared<NativeSampleTurboModuleSpecJSI>(params);
|
||||
}
|
||||
|
@ -391,7 +391,7 @@ NativeSampleTurboModule2SpecJSI::NativeSampleTurboModule2SpecJSI(const JavaTurbo
|
|||
methodMap_[\\"voidFunc\\"] = MethodMetadata {0, __hostFunction_NativeSampleTurboModule2SpecJSI_voidFunc};
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> two_modules_different_files_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
std::shared_ptr<TurboModule> two_modules_different_files_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms) {
|
||||
if (moduleName == \\"SampleTurboModule\\") {
|
||||
return std::make_shared<NativeSampleTurboModuleSpecJSI>(params);
|
||||
}
|
||||
|
|
|
@ -30,7 +30,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> SampleWithUppercaseName_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> SampleWithUppercaseName_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
@ -139,7 +139,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
@ -248,7 +248,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
@ -357,7 +357,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> native_modules_with_type_aliases_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> native_modules_with_type_aliases_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
@ -474,7 +474,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
@ -583,7 +583,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
@ -700,7 +700,7 @@ public:
|
|||
};
|
||||
|
||||
|
||||
std::shared_ptr<TurboModule> two_modules_different_files_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
std::shared_ptr<TurboModule> two_modules_different_files_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
} // namespace facebook
|
||||
|
|
|
@ -15,7 +15,7 @@ namespace facebook {
|
|||
namespace react {
|
||||
|
||||
std::shared_ptr<TurboModule> RNTesterAppModuleProvider(
|
||||
const std::string moduleName,
|
||||
const std::string &moduleName,
|
||||
const JavaTurboModule::InitParams ¶ms) {
|
||||
auto module = rntester_ModuleProvider(moduleName, params);
|
||||
if (module != nullptr) {
|
||||
|
|
|
@ -16,7 +16,7 @@ namespace facebook {
|
|||
namespace react {
|
||||
|
||||
std::shared_ptr<TurboModule> RNTesterAppModuleProvider(
|
||||
const std::string moduleName,
|
||||
const std::string &moduleName,
|
||||
const JavaTurboModule::InitParams ¶ms);
|
||||
|
||||
} // namespace react
|
||||
|
|
|
@ -28,20 +28,20 @@ void RNTesterTurboModuleManagerDelegate::registerNatives() {
|
|||
}
|
||||
|
||||
std::shared_ptr<TurboModule> RNTesterTurboModuleManagerDelegate::getTurboModule(
|
||||
const std::string name,
|
||||
const std::shared_ptr<CallInvoker> jsInvoker) {
|
||||
const std::string &name,
|
||||
const std::shared_ptr<CallInvoker> &jsInvoker) {
|
||||
// Not implemented yet: provide pure-C++ NativeModules here.
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
std::shared_ptr<TurboModule> RNTesterTurboModuleManagerDelegate::getTurboModule(
|
||||
const std::string name,
|
||||
const std::string &name,
|
||||
const JavaTurboModule::InitParams ¶ms) {
|
||||
return RNTesterAppModuleProvider(name, params);
|
||||
}
|
||||
|
||||
bool RNTesterTurboModuleManagerDelegate::canCreateTurboModule(
|
||||
std::string name) {
|
||||
const std::string &name) {
|
||||
return getTurboModule(name, nullptr) != nullptr ||
|
||||
getTurboModule(name, {.moduleName = name}) != nullptr;
|
||||
}
|
||||
|
|
|
@ -27,17 +27,17 @@ class RNTesterTurboModuleManagerDelegate
|
|||
static void registerNatives();
|
||||
|
||||
std::shared_ptr<TurboModule> getTurboModule(
|
||||
const std::string name,
|
||||
const std::shared_ptr<CallInvoker> jsInvoker) override;
|
||||
const std::string &name,
|
||||
const std::shared_ptr<CallInvoker> &jsInvoker) override;
|
||||
std::shared_ptr<TurboModule> getTurboModule(
|
||||
const std::string name,
|
||||
const std::string &name,
|
||||
const JavaTurboModule::InitParams ¶ms) override;
|
||||
|
||||
/**
|
||||
* Test-only method. Allows user to verify whether a TurboModule can be
|
||||
* created by instances of this class.
|
||||
*/
|
||||
bool canCreateTurboModule(std::string name);
|
||||
bool canCreateTurboModule(const std::string &name);
|
||||
|
||||
private:
|
||||
friend HybridBase;
|
||||
|
|
Загрузка…
Ссылка в новой задаче