Skip to content

Commit 9cabe72

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 b377a27 commit 9cabe72

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
@@ -1689,19 +1689,6 @@ class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass<face
16891689
public static constexpr auto kJavaDescriptor;
16901690
}
16911691

1692-
class facebook::react::JavaInteropTurboModule : public facebook::react::JavaTurboModule {
1693-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
1694-
public JavaInteropTurboModule(const facebook::react::JavaTurboModule::InitParams& params, const std::vector<facebook::react::JavaInteropTurboModule::MethodDescriptor>& methodDescriptors);
1695-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
1696-
}
1697-
1698-
struct facebook::react::JavaInteropTurboModule::MethodDescriptor {
1699-
public facebook::react::TurboModuleMethodValueKind jsiReturnKind;
1700-
public int jsArgCount;
1701-
public std::string jniSignature;
1702-
public std::string methodName;
1703-
}
1704-
17051692
class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass<facebook::react::JavaMessageQueueThread> {
17061693
public static constexpr auto kJavaDescriptor;
17071694
}
@@ -2490,12 +2477,6 @@ struct facebook::react::TurboModule::MethodMetadata {
24902477
public size_t argCount;
24912478
}
24922479

2493-
class facebook::react::TurboModuleBinding {
2494-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2495-
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);
2496-
public ~TurboModuleBinding();
2497-
}
2498-
24992480
class facebook::react::TurboModuleManager : public jni::HybridClass<facebook::react::TurboModuleManager> {
25002481
public static constexpr auto kJavaDescriptor;
25012482
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
@@ -1688,19 +1688,6 @@ class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass<face
16881688
public static constexpr auto kJavaDescriptor;
16891689
}
16901690

1691-
class facebook::react::JavaInteropTurboModule : public facebook::react::JavaTurboModule {
1692-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
1693-
public JavaInteropTurboModule(const facebook::react::JavaTurboModule::InitParams& params, const std::vector<facebook::react::JavaInteropTurboModule::MethodDescriptor>& methodDescriptors);
1694-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
1695-
}
1696-
1697-
struct facebook::react::JavaInteropTurboModule::MethodDescriptor {
1698-
public facebook::react::TurboModuleMethodValueKind jsiReturnKind;
1699-
public int jsArgCount;
1700-
public std::string jniSignature;
1701-
public std::string methodName;
1702-
}
1703-
17041691
class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass<facebook::react::JavaMessageQueueThread> {
17051692
public static constexpr auto kJavaDescriptor;
17061693
}
@@ -2483,12 +2470,6 @@ struct facebook::react::TurboModule::MethodMetadata {
24832470
public size_t argCount;
24842471
}
24852472

2486-
class facebook::react::TurboModuleBinding {
2487-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2488-
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);
2489-
public ~TurboModuleBinding();
2490-
}
2491-
24922473
class facebook::react::TurboModuleManager : public jni::HybridClass<facebook::react::TurboModuleManager> {
24932474
public static constexpr auto kJavaDescriptor;
24942475
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
@@ -1688,19 +1688,6 @@ class facebook::react::JWritableMapBuffer : public facebook::jni::JavaClass<face
16881688
public static constexpr auto kJavaDescriptor;
16891689
}
16901690

1691-
class facebook::react::JavaInteropTurboModule : public facebook::react::JavaTurboModule {
1692-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
1693-
public JavaInteropTurboModule(const facebook::react::JavaTurboModule::InitParams& params, const std::vector<facebook::react::JavaInteropTurboModule::MethodDescriptor>& methodDescriptors);
1694-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
1695-
}
1696-
1697-
struct facebook::react::JavaInteropTurboModule::MethodDescriptor {
1698-
public facebook::react::TurboModuleMethodValueKind jsiReturnKind;
1699-
public int jsArgCount;
1700-
public std::string jniSignature;
1701-
public std::string methodName;
1702-
}
1703-
17041691
class facebook::react::JavaMessageQueueThread : public facebook::jni::JavaClass<facebook::react::JavaMessageQueueThread> {
17051692
public static constexpr auto kJavaDescriptor;
17061693
}
@@ -2483,12 +2470,6 @@ struct facebook::react::TurboModule::MethodMetadata {
24832470
public size_t argCount;
24842471
}
24852472

2486-
class facebook::react::TurboModuleBinding {
2487-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
2488-
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);
2489-
public ~TurboModuleBinding();
2490-
}
2491-
24922473
class facebook::react::TurboModuleManager : public jni::HybridClass<facebook::react::TurboModuleManager> {
24932474
public static constexpr auto kJavaDescriptor;
24942475
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
@@ -4367,22 +4367,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob
43674367
public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params);
43684368
}
43694369

4370-
class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule {
4371-
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override;
4372-
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override;
4373-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
4374-
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;
4375-
public ObjCInteropTurboModule(const facebook::react::ObjCTurboModule::InitParams& params);
4376-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
4377-
}
4378-
4379-
struct facebook::react::ObjCInteropTurboModule::MethodDescriptor {
4380-
public SEL selector;
4381-
public facebook::react::TurboModuleMethodValueKind jsReturnKind;
4382-
public size_t jsArgCount;
4383-
public std::string methodName;
4384-
}
4385-
43864370
class facebook::react::ObjCTurboModule : public facebook::react::TurboModule {
43874371
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex);
43884372
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result);
@@ -4726,12 +4710,6 @@ struct facebook::react::TurboModule::MethodMetadata {
47264710
public size_t argCount;
47274711
}
47284712

4729-
class facebook::react::TurboModuleBinding {
4730-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
4731-
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);
4732-
public ~TurboModuleBinding();
4733-
}
4734-
47354713
class facebook::react::TurboModuleWithJSIBindings {
47364714
public static void installJSIBindings(const std::shared_ptr<facebook::react::TurboModule>& cxxModule, facebook::jsi::Runtime& runtime);
47374715
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
@@ -4358,22 +4358,6 @@ class facebook::react::NativeWebSocketModuleSpecJSI : public facebook::react::Ob
43584358
public NativeWebSocketModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params);
43594359
}
43604360

4361-
class facebook::react::ObjCInteropTurboModule : public facebook::react::ObjCTurboModule {
4362-
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex) override;
4363-
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result) override;
4364-
protected virtual facebook::jsi::Value create(facebook::jsi::Runtime& runtime, const facebook::jsi::PropNameID& propName) override;
4365-
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;
4366-
public ObjCInteropTurboModule(const facebook::react::ObjCTurboModule::InitParams& params);
4367-
public virtual std::vector<facebook::jsi::PropNameID> getPropertyNames(facebook::jsi::Runtime& runtime) override;
4368-
}
4369-
4370-
struct facebook::react::ObjCInteropTurboModule::MethodDescriptor {
4371-
public SEL selector;
4372-
public facebook::react::TurboModuleMethodValueKind jsReturnKind;
4373-
public size_t jsArgCount;
4374-
public std::string methodName;
4375-
}
4376-
43774361
class facebook::react::ObjCTurboModule : public facebook::react::TurboModule {
43784362
protected virtual NSString* getArgumentTypeName(facebook::jsi::Runtime& runtime, NSString* methodName, int argIndex);
43794363
protected virtual facebook::jsi::Value convertReturnIdToJSIValue(facebook::jsi::Runtime& runtime, const char* methodName, facebook::react::TurboModuleMethodValueKind returnType, id result);
@@ -4711,12 +4695,6 @@ struct facebook::react::TurboModule::MethodMetadata {
47114695
public size_t argCount;
47124696
}
47134697

4714-
class facebook::react::TurboModuleBinding {
4715-
public static void install(facebook::jsi::Runtime& runtime, TurboModuleProviderFunctionType&& moduleProvider, TurboModuleProviderFunctionType&& legacyModuleProvider = nullptr, std::shared_ptr<facebook::react::LongLivedObjectCollection> longLivedObjectCollection = nullptr);
4716-
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);
4717-
public ~TurboModuleBinding();
4718-
}
4719-
47204698
class facebook::react::TurboModuleWithJSIBindings {
47214699
public static void installJSIBindings(const std::shared_ptr<facebook::react::TurboModule>& cxxModule, facebook::jsi::Runtime& runtime);
47224700
public virtual ~TurboModuleWithJSIBindings() = default;

0 commit comments

Comments
 (0)