/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #include #import #import #import @class RCTBridge; @class RCTModuleData; namespace facebook { namespace react { class Instance; std::vector> createNativeModules(NSArray *modules, RCTBridge *bridge, const std::shared_ptr &instance); JSContext *contextForGlobalContextRef(JSGlobalContextRef contextRef); template<> struct JSCValueEncoder { static Value toJSCValue(JSGlobalContextRef ctx, id obj) { JSValue *value = [JSC_JSValue(ctx) valueWithObject:obj inContext:contextForGlobalContextRef(ctx)]; return {ctx, [value JSValueRef]}; } }; NSError *tryAndReturnError(const std::function& func); NSString *deriveSourceURL(NSURL *url); } }