Introduce NativeFrameRateLogger

Summary: This diff introduces `NativeFrameRateLogger` and eliminates all usages of `NativeModules.FrameRateLogger` from our codebase.

Reviewed By: ejanzer

Differential Revision: D16718105

fbshipit-source-id: caf903162bab978ee1b3faef56aedef6ada75b89
This commit is contained in:
Ramanpreet Nara
2019-08-08 16:03:41 -07:00
committed by Facebook Github Bot
parent b1b5bd4418
commit aecdee0ab0
4 changed files with 127 additions and 9 deletions
@@ -925,6 +925,54 @@ namespace facebook {
}
} // namespace react
} // namespace facebook
@implementation RCTCxxConvert (NativeFrameRateLogger_SpecSetGlobalOptionsOptions)
+ (RCTManagedPointer *)JS_NativeFrameRateLogger_SpecSetGlobalOptionsOptions:(id)json
{
return facebook::react::managedPointer<JS::NativeFrameRateLogger::SpecSetGlobalOptionsOptions>(json);
}
@end
namespace facebook {
namespace react {
static facebook::jsi::Value __hostFunction_NativeFrameRateLoggerSpecJSI_setGlobalOptions(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "setGlobalOptions", @selector(setGlobalOptions:), args, count);
}
static facebook::jsi::Value __hostFunction_NativeFrameRateLoggerSpecJSI_setContext(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "setContext", @selector(setContext:), args, count);
}
static facebook::jsi::Value __hostFunction_NativeFrameRateLoggerSpecJSI_beginScroll(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "beginScroll", @selector(beginScroll), args, count);
}
static facebook::jsi::Value __hostFunction_NativeFrameRateLoggerSpecJSI_endScroll(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "endScroll", @selector(endScroll), args, count);
}
NativeFrameRateLoggerSpecJSI::NativeFrameRateLoggerSpecJSI(id<RCTTurboModule> instance, std::shared_ptr<JSCallInvoker> jsInvoker)
: ObjCTurboModule("FrameRateLogger", instance, jsInvoker) {
methodMap_["setGlobalOptions"] = MethodMetadata {1, __hostFunction_NativeFrameRateLoggerSpecJSI_setGlobalOptions};
setMethodArgConversionSelector(@"setGlobalOptions", 0, @"JS_NativeFrameRateLogger_SpecSetGlobalOptionsOptions:");
methodMap_["setContext"] = MethodMetadata {1, __hostFunction_NativeFrameRateLoggerSpecJSI_setContext};
methodMap_["beginScroll"] = MethodMetadata {0, __hostFunction_NativeFrameRateLoggerSpecJSI_beginScroll};
methodMap_["endScroll"] = MethodMetadata {0, __hostFunction_NativeFrameRateLoggerSpecJSI_endScroll};
}
} // namespace react
@@ -941,6 +941,44 @@ namespace facebook {
};
} // namespace react
} // namespace facebook
namespace JS {
namespace NativeFrameRateLogger {
struct SpecSetGlobalOptionsOptions {
folly::Optional<bool> debug() const;
folly::Optional<bool> reportStackTraces() const;
SpecSetGlobalOptionsOptions(NSDictionary *const v) : _v(v) {}
private:
NSDictionary *_v;
};
}
}
@interface RCTCxxConvert (NativeFrameRateLogger_SpecSetGlobalOptionsOptions)
+ (RCTManagedPointer *)JS_NativeFrameRateLogger_SpecSetGlobalOptionsOptions:(id)json;
@end
@protocol NativeFrameRateLoggerSpec <RCTBridgeModule, RCTTurboModule>
- (void)setGlobalOptions:(JS::NativeFrameRateLogger::SpecSetGlobalOptionsOptions &)options;
- (void)setContext:(NSString *)context;
- (void)beginScroll;
- (void)endScroll;
@end
namespace facebook {
namespace react {
/**
* ObjC++ class for module 'FrameRateLogger'
*/
class JSI_EXPORT NativeFrameRateLoggerSpecJSI : public ObjCTurboModule {
public:
NativeFrameRateLoggerSpecJSI(id<RCTTurboModule> instance, std::shared_ptr<JSCallInvoker> jsInvoker);
};
} // namespace react
} // namespace facebook
@protocol NativeHeadlessJsTaskSupportSpec <RCTBridgeModule, RCTTurboModule>
- (void)notifyTaskFinished:(double)taskId;
@@ -2597,6 +2635,16 @@ inline folly::Optional<JS::NativeExceptionsManager::ExceptionDataExtraData> JS::
id const p = _v[@"extraData"];
return (p == nil ? folly::none : folly::make_optional(JS::NativeExceptionsManager::ExceptionDataExtraData(p)));
}
inline folly::Optional<bool> JS::NativeFrameRateLogger::SpecSetGlobalOptionsOptions::debug() const
{
id const p = _v[@"debug"];
return RCTBridgingToOptionalBool(p);
}
inline folly::Optional<bool> JS::NativeFrameRateLogger::SpecSetGlobalOptionsOptions::reportStackTraces() const
{
id const p = _v[@"reportStackTraces"];
return RCTBridgingToOptionalBool(p);
}
inline JS::NativeI18nManager::Constants::Builder::Builder(const Input i) : _factory(^{
NSMutableDictionary *d = [NSMutableDictionary new];
auto isRTL = i.isRTL.get();