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:
Pieter De Baets 2022-05-13 07:12:48 -07:00 коммит произвёл Facebook GitHub Bot
Родитель 51e029ec3c
Коммит 3337add547
13 изменённых файлов: 37 добавлений и 37 удалений

Просмотреть файл

@ -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 &params) {
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 &params) 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 &params) = 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 &params) {
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 &params);
} // namespace react

Просмотреть файл

@ -114,7 +114,7 @@ namespace react {
${modules}
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams &params) {
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
${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 &params);
std::shared_ptr<TurboModule> ${libraryName}_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // 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 &params) {
std::shared_ptr<TurboModule> SampleWithUppercaseName_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params) {
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params) {
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params) {
std::shared_ptr<TurboModule> native_modules_with_type_aliases_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params) {
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params) {
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params) {
std::shared_ptr<TurboModule> two_modules_different_files_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
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 &params);
std::shared_ptr<TurboModule> SampleWithUppercaseName_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // namespace react
} // namespace facebook
@ -139,7 +139,7 @@ public:
};
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams &params);
std::shared_ptr<TurboModule> complex_objects_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // namespace react
} // namespace facebook
@ -248,7 +248,7 @@ public:
};
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams &params);
std::shared_ptr<TurboModule> empty_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // 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 &params);
std::shared_ptr<TurboModule> native_modules_with_type_aliases_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // namespace react
} // namespace facebook
@ -474,7 +474,7 @@ public:
};
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams &params);
std::shared_ptr<TurboModule> real_module_example_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // namespace react
} // namespace facebook
@ -583,7 +583,7 @@ public:
};
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string moduleName, const JavaTurboModule::InitParams &params);
std::shared_ptr<TurboModule> simple_native_modules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // 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 &params);
std::shared_ptr<TurboModule> two_modules_different_files_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
} // 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 &params) {
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 &params);
} // 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 &params) {
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 &params) 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;