Skip to content

Commit a2ed196

Browse files
coadometa-codesync[bot]
authored andcommitted
Make TurboModule host integration headers for-frameworks (#58955)
Summary: Pull Request resolved: #58955 Move the following `react/nativemodule/core` headers from the public tier to the for-frameworks tier: - `TurboModuleBinding.h` - not called by native module authors, - `JavaInteropTurboModule.h` (Android) and `RCTInteropTurboModule.h` (iOS) - legacy The C++ API snapshots are regenerated: these symbols are removed from the Debug, Release and Newarch snapshots and stay in the Frameworks snapshots. Changelog: [Internal] Reviewed By: cipolleschi Differential Revision: D124104733
1 parent f4961cc commit a2ed196

14 files changed

Lines changed: 7 additions & 150 deletions

File tree

‎packages/react-native/ReactCommon/react/nativemodule/core/React/NativeModuleCore.h‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,11 @@
3333

3434
#include <ReactCommon/CxxTurboModuleUtils.h>
3535
#include <ReactCommon/TurboModule.h>
36-
#include <ReactCommon/TurboModuleBinding.h>
3736
#include <ReactCommon/TurboModulePerfLogger.h>
3837
#include <ReactCommon/TurboModuleUtils.h>
3938
#include <ReactCommon/TurboModuleWithJSIBindings.h>
4039

4140
#ifdef ANDROID
42-
#include <ReactCommon/JavaInteropTurboModule.h>
4341
#include <ReactCommon/JavaTurboModule.h>
4442
#endif
4543

‎packages/react-native/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,14 @@
77

88
#pragma once
99

10-
#include <react/cxxstableapi/UmbrellaGuard.h>
10+
#include <react/cxxstableapi/FrameworksGuard.h>
1111

1212
#include <string>
1313

1414
#include <React/Bridging.h>
15+
#include <React/NativeModuleCore.h>
1516
#include <jsi/jsi.h>
1617

17-
#include <ReactCommon/TurboModule.h>
18-
1918
namespace facebook::react {
2019

2120
class BridgelessNativeModuleProxy;

‎packages/react-native/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,17 @@
77

88
#pragma once
99

10-
#include <react/cxxstableapi/UmbrellaGuard.h>
10+
#include <react/cxxstableapi/FrameworksGuard.h>
1111

1212
#ifndef RCT_REMOVE_LEGACY_MODULE_INTEROP
1313

1414
#include <string>
1515
#include <vector>
1616

17-
#include <ReactCommon/TurboModule.h>
17+
#include <React/NativeModuleCore.h>
1818
#include <fbjni/fbjni.h>
1919
#include <jsi/jsi.h>
2020

21-
#include "JavaTurboModule.h"
22-
2321
namespace facebook::react {
2422

2523
class JSI_EXPORT JavaInteropTurboModule : public JavaTurboModule {

‎packages/react-native/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
#pragma once
99

10+
#include <react/cxxstableapi/FrameworksGuard.h>
11+
1012
#ifndef RCT_REMOVE_LEGACY_MODULE_INTEROP
1113

1214
#import <string>

‎packages/react-native/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#import <React/RCTUtils.h>
2929
#import <ReactCommon/CxxTurboModuleUtils.h>
3030
#import <ReactCommon/RCTTurboModuleWithJSIBindings.h>
31+
#import <ReactCommon/TurboModuleBinding.h>
3132
#import <ReactCommon/TurboModulePerfLogger.h>
3233

3334
using namespace facebook;

‎scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api‎

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1683,19 +1683,6 @@ class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass<face
16831683
public static constexpr auto kJavaDescriptor;
16841684
}
16851685

1686-
class facebook::react::JavaInteropTurboModule : public facebook::react::JavaTurboModule {
1687-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
1688-
public JavaInteropTurboModule(const facebook::react::JavaTurboModule::InitParams& params, const std::vector<facebook::react::JavaInteropTurboModule::MethodDescriptor>& methodDescriptors);
1689-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
1690-
}
1691-
1692-
struct facebook::react::JavaInteropTurboModule::MethodDescriptor {
1693-
public facebook::react::TurboModuleMethodValueKind jsiReturnKind;
1694-
public int jsArgCount;
1695-
public std::string jniSignature;
1696-
public std::string methodName;
1697-
}
1698-
16991686
class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass<facebook::react::JavaMessageQueueThread> {
17001687
public static constexpr auto kJavaDescriptor;
17011688
}
@@ -2484,12 +2471,6 @@ struct facebook::react::TurboModule::MethodMetadata {
24842471
public size_t argCount;
24852472
}
24862473

2487-
class facebook::react::TurboModuleBinding {
2488-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2489-
public static void install(facebook::jsi::Runtime& runtime, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& moduleProvider, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2490-
public ~TurboModuleBinding();
2491-
}
2492-
24932474
class facebook::react::TurboModuleManager : public jni::HybridClass<facebook::react::TurboModuleManager> {
24942475
public static constexpr auto kJavaDescriptor;
24952476
public static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject>, jni::alias_ref<CallInvokerHolder::javaobject> jsCallInvokerHolder, jni::alias_ref<NativeMethodCallInvokerHolder::javaobject> nativeMethodCallInvokerHolder, jni::alias_ref<TurboModuleManagerDelegate::javaobject> delegate);

‎scripts/cxx-api/api-snapshots/ReactAndroidNewarchCxx.api‎

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1682,19 +1682,6 @@ class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass<face
16821682
public static constexpr auto kJavaDescriptor;
16831683
}
16841684

1685-
class facebook::react::JavaInteropTurboModule : public facebook::react::JavaTurboModule {
1686-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
1687-
public JavaInteropTurboModule(const facebook::react::JavaTurboModule::InitParams& params, const std::vector<facebook::react::JavaInteropTurboModule::MethodDescriptor>& methodDescriptors);
1688-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
1689-
}
1690-
1691-
struct facebook::react::JavaInteropTurboModule::MethodDescriptor {
1692-
public facebook::react::TurboModuleMethodValueKind jsiReturnKind;
1693-
public int jsArgCount;
1694-
public std::string jniSignature;
1695-
public std::string methodName;
1696-
}
1697-
16981685
class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass<facebook::react::JavaMessageQueueThread> {
16991686
public static constexpr auto kJavaDescriptor;
17001687
}
@@ -2477,12 +2464,6 @@ struct facebook::react::TurboModule::MethodMetadata {
24772464
public size_t argCount;
24782465
}
24792466

2480-
class facebook::react::TurboModuleBinding {
2481-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2482-
public static void install(facebook::jsi::Runtime& runtime, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& moduleProvider, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2483-
public ~TurboModuleBinding();
2484-
}
2485-
24862467
class facebook::react::TurboModuleManager : public jni::HybridClass<facebook::react::TurboModuleManager> {
24872468
public static constexpr auto kJavaDescriptor;
24882469
public static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject>, jni::alias_ref<CallInvokerHolder::javaobject> jsCallInvokerHolder, jni::alias_ref<NativeMethodCallInvokerHolder::javaobject> nativeMethodCallInvokerHolder, jni::alias_ref<TurboModuleManagerDelegate::javaobject> delegate);

‎scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api‎

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1682,19 +1682,6 @@ class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass<face
16821682
public static constexpr auto kJavaDescriptor;
16831683
}
16841684

1685-
class facebook::react::JavaInteropTurboModule : public facebook::react::JavaTurboModule {
1686-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
1687-
public JavaInteropTurboModule(const facebook::react::JavaTurboModule::InitParams& params, const std::vector<facebook::react::JavaInteropTurboModule::MethodDescriptor>& methodDescriptors);
1688-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
1689-
}
1690-
1691-
struct facebook::react::JavaInteropTurboModule::MethodDescriptor {
1692-
public facebook::react::TurboModuleMethodValueKind jsiReturnKind;
1693-
public int jsArgCount;
1694-
public std::string jniSignature;
1695-
public std::string methodName;
1696-
}
1697-
16981685
class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass<facebook::react::JavaMessageQueueThread> {
16991686
public static constexpr auto kJavaDescriptor;
17001687
}
@@ -2477,12 +2464,6 @@ struct facebook::react::TurboModule::MethodMetadata {
24772464
public size_t argCount;
24782465
}
24792466

2480-
class facebook::react::TurboModuleBinding {
2481-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2482-
public static void install(facebook::jsi::Runtime& runtime, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& moduleProvider, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2483-
public ~TurboModuleBinding();
2484-
}
2485-
24862467
class facebook::react::TurboModuleManager : public jni::HybridClass<facebook::react::TurboModuleManager> {
24872468
public static constexpr auto kJavaDescriptor;
24882469
public static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject>, jni::alias_ref<CallInvokerHolder::javaobject> jsCallInvokerHolder, jni::alias_ref<NativeMethodCallInvokerHolder::javaobject> nativeMethodCallInvokerHolder, jni::alias_ref<TurboModuleManagerDelegate::javaobject> delegate);

‎scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api‎

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4359,22 +4359,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob
43594359
public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params);
43604360
}
43614361

4362-
class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule {
4363-
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override;
4364-
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override;
4365-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
4366-
protected virtual void setInvocationArg(facebook::jsi::Runtime& runtime, const char* methodName, const std::string& objCArgType, const facebook::jsi::Value& arg, size_t i, NSInvocation* inv, NSMutableArray* retainedObjectsForInvocation, bool mustCopyBytes) override;
4367-
public ObjCInteropTurboModule(const facebook::react::ObjCTurboModule::InitParams& params);
4368-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
4369-
}
4370-
4371-
struct facebook::react::ObjCInteropTurboModule::MethodDescriptor {
4372-
public SEL selector;
4373-
public facebook::react::TurboModuleMethodValueKind jsReturnKind;
4374-
public size_t jsArgCount;
4375-
public std::string methodName;
4376-
}
4377-
43784362
class facebook::react::ObjCTurboModule : public facebook::react::TurboModule {
43794363
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex);
43804364
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result);
@@ -4718,12 +4702,6 @@ struct facebook::react::TurboModule::MethodMetadata {
47184702
public size_t argCount;
47194703
}
47204704

4721-
class facebook::react::TurboModuleBinding {
4722-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
4723-
public static void install(facebook::jsi::Runtime& runtime, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& moduleProvider, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
4724-
public ~TurboModuleBinding();
4725-
}
4726-
47274705
class facebook::react::TurboModuleWithJSIBindings {
47284706
public static void installJSIBindings(const std::shared_ptr<facebook::react::TurboModule>& cxxModule, facebook::jsi::Runtime& runtime);
47294707
public virtual ~TurboModuleWithJSIBindings() = default;

‎scripts/cxx-api/api-snapshots/ReactAppleNewarchCxx.api‎

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4350,22 +4350,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob
43504350
public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params);
43514351
}
43524352

4353-
class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule {
4354-
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override;
4355-
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override;
4356-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
4357-
protected virtual void setInvocationArg(facebook::jsi::Runtime& runtime, const char* methodName, const std::string& objCArgType, const facebook::jsi::Value& arg, size_t i, NSInvocation* inv, NSMutableArray* retainedObjectsForInvocation, bool mustCopyBytes) override;
4358-
public ObjCInteropTurboModule(const facebook::react::ObjCTurboModule::InitParams& params);
4359-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
4360-
}
4361-
4362-
struct facebook::react::ObjCInteropTurboModule::MethodDescriptor {
4363-
public SEL selector;
4364-
public facebook::react::TurboModuleMethodValueKind jsReturnKind;
4365-
public size_t jsArgCount;
4366-
public std::string methodName;
4367-
}
4368-
43694353
class facebook::react::ObjCTurboModule : public facebook::react::TurboModule {
43704354
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex);
43714355
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result);
@@ -4703,12 +4687,6 @@ struct facebook::react::TurboModule::MethodMetadata {
47034687
public size_t argCount;
47044688
}
47054689

4706-
class facebook::react::TurboModuleBinding {
4707-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
4708-
public static void install(facebook::jsi::Runtime& runtime, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& moduleProvider, facebook::react::TurboModuleProviderFunctionTypeWithRuntime&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
4709-
public ~TurboModuleBinding();
4710-
}
4711-
47124690
class facebook::react::TurboModuleWithJSIBindings {
47134691
public static void installJSIBindings(const std::shared_ptr<facebook::react::TurboModule>& cxxModule, facebook::jsi::Runtime& runtime);
47144692
public virtual ~TurboModuleWithJSIBindings() = default;

0 commit comments

Comments
 (0)