react-native-windows 0.84.0 → 0.85.0-preview.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1347) hide show
  1. package/.flowconfig +1 -5
  2. package/Directory.Build.props +2 -17
  3. package/Directory.Build.targets +12 -4
  4. package/Folly/ThreadNameStub.cpp +4 -6
  5. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +3 -3
  6. package/Libraries/Animated/Animated.d.ts +8 -1
  7. package/Libraries/Animated/AnimatedEvent.js +4 -4
  8. package/Libraries/Animated/AnimatedImplementation.js +2 -2
  9. package/Libraries/Animated/animations/Animation.js +3 -3
  10. package/Libraries/Animated/animations/DecayAnimation.js +4 -4
  11. package/Libraries/Animated/animations/SpringAnimation.js +5 -5
  12. package/Libraries/Animated/animations/TimingAnimation.js +5 -5
  13. package/Libraries/Animated/createAnimatedComponent.js +7 -7
  14. package/Libraries/Animated/nodes/AnimatedColor.js +2 -2
  15. package/Libraries/Animated/nodes/AnimatedInterpolation.js +12 -12
  16. package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
  17. package/Libraries/Animated/nodes/AnimatedObject.js +3 -3
  18. package/Libraries/Animated/nodes/AnimatedProps.js +6 -6
  19. package/Libraries/Animated/nodes/AnimatedStyle.js +7 -7
  20. package/Libraries/Animated/nodes/AnimatedTransform.js +13 -13
  21. package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
  22. package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
  23. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
  24. package/Libraries/Animated/useAnimatedColor.d.ts +15 -0
  25. package/Libraries/Animated/useAnimatedColor.js +25 -0
  26. package/Libraries/Animated/useAnimatedValueXY.d.ts +15 -0
  27. package/Libraries/Animated/useAnimatedValueXY.js +26 -0
  28. package/Libraries/AppState/AppState.js +1 -1
  29. package/Libraries/BatchedBridge/MessageQueue.js +3 -3
  30. package/Libraries/BatchedBridge/NativeModules.js +12 -10
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -26
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +34 -30
  33. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +2 -2
  34. package/Libraries/Components/Button.js +2 -2
  35. package/Libraries/Components/Button.windows.js +2 -2
  36. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +2 -2
  37. package/Libraries/Components/Keyboard/Keyboard.js +6 -6
  38. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
  39. package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -1
  40. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
  41. package/Libraries/Components/Pressable/Pressable.d.ts +5 -0
  42. package/Libraries/Components/Pressable/Pressable.js +3 -3
  43. package/Libraries/Components/Pressable/Pressable.windows.js +3 -3
  44. package/Libraries/Components/Pressable/useAndroidRippleForView.js +4 -4
  45. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
  46. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +3 -3
  47. package/Libraries/Components/RefreshControl/RefreshControl.js +5 -5
  48. package/Libraries/Components/RefreshControl/RefreshControl.windows.js +5 -5
  49. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +8 -12
  50. package/Libraries/Components/ScrollView/ScrollView.d.ts +9 -0
  51. package/Libraries/Components/ScrollView/ScrollView.js +19 -9
  52. package/Libraries/Components/ScrollView/ScrollView.windows.js +19 -9
  53. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +8 -18
  54. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +8 -18
  55. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +4 -3
  56. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  57. package/Libraries/Components/StaticRenderer.js +1 -1
  58. package/Libraries/Components/StatusBar/StatusBar.js +8 -8
  59. package/Libraries/Components/Switch/Switch.js +3 -3
  60. package/Libraries/Components/Switch/Switch.windows.js +3 -3
  61. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +33 -48
  62. package/Libraries/Components/TextInput/InputAccessoryView.js +1 -1
  63. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +6 -11
  64. package/Libraries/Components/TextInput/TextInput.flow.js +21 -20
  65. package/Libraries/Components/TextInput/TextInput.flow.windows.js +23 -22
  66. package/Libraries/Components/TextInput/TextInput.js +8 -4
  67. package/Libraries/Components/TextInput/TextInput.windows.js +3 -4
  68. package/Libraries/Components/TextInput/WindowsTextInputNativeComponent.js +33 -48
  69. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  70. package/Libraries/Components/Touchable/Touchable.js +2 -2
  71. package/Libraries/Components/Touchable/Touchable.windows.js +2 -2
  72. package/Libraries/Components/Touchable/TouchableBounce.js +4 -4
  73. package/Libraries/Components/Touchable/TouchableBounce.windows.js +4 -4
  74. package/Libraries/Components/Touchable/TouchableHighlight.js +8 -8
  75. package/Libraries/Components/Touchable/TouchableHighlight.windows.js +9 -9
  76. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +7 -7
  77. package/Libraries/Components/Touchable/TouchableNativeFeedback.windows.js +7 -7
  78. package/Libraries/Components/Touchable/TouchableOpacity.js +4 -4
  79. package/Libraries/Components/Touchable/TouchableOpacity.windows.js +4 -4
  80. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
  81. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
  82. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
  83. package/Libraries/Components/View/ReactNativeStyleAttributes.js +68 -31
  84. package/Libraries/Components/View/View.windows.js +1 -1
  85. package/Libraries/Components/View/ViewAccessibility.js +7 -7
  86. package/Libraries/Components/View/ViewAccessibility.windows.js +7 -7
  87. package/Libraries/Components/View/ViewPropTypes.js +14 -14
  88. package/Libraries/Components/View/ViewPropTypes.windows.js +18 -16
  89. package/Libraries/Core/Devtools/parseHermesStack.js +8 -8
  90. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
  91. package/Libraries/Core/ExceptionsManager.js +2 -2
  92. package/Libraries/Core/ExtendedError.js +3 -3
  93. package/Libraries/Core/RawEventEmitter.js +1 -1
  94. package/Libraries/Core/ReactNativeVersion.js +2 -2
  95. package/Libraries/Core/Timers/JSTimers.js +3 -2
  96. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  97. package/Libraries/Core/setUpErrorHandling.js +4 -2
  98. package/Libraries/Core/setUpReactDevTools.js +23 -6
  99. package/Libraries/Core/setUpSegmentFetcher.js +1 -1
  100. package/Libraries/Debugging/DebuggingOverlay.js +2 -2
  101. package/Libraries/EventEmitter/NativeEventEmitter.js +7 -9
  102. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +1 -1
  103. package/Libraries/Image/AssetSourceResolver.js +1 -1
  104. package/Libraries/Image/AssetSourceResolver.windows.js +1 -1
  105. package/Libraries/Image/Image.android.js +172 -306
  106. package/Libraries/Image/ImageProps.js +9 -11
  107. package/Libraries/Image/ImageSource.js +2 -2
  108. package/Libraries/Image/ImageSourceUtils.js +8 -4
  109. package/Libraries/Image/ImageTypes.flow.js +2 -2
  110. package/Libraries/Image/ImageViewNativeComponent.js +7 -16
  111. package/Libraries/Image/nativeImageSource.js +1 -1
  112. package/Libraries/Interaction/InteractionManager.js +5 -4
  113. package/Libraries/Interaction/PanResponder.js +1 -1
  114. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  115. package/Libraries/Linking/Linking.js +1 -1
  116. package/Libraries/Lists/FlatList.js +3 -3
  117. package/Libraries/Lists/SectionList.js +1 -1
  118. package/Libraries/Lists/SectionListModern.js +2 -2
  119. package/Libraries/LogBox/Data/LogBoxData.js +38 -24
  120. package/Libraries/LogBox/Data/LogBoxLog.js +43 -112
  121. package/Libraries/LogBox/Data/parseLogBoxLog.js +21 -117
  122. package/Libraries/LogBox/LogBox.js +42 -19
  123. package/Libraries/LogBox/LogBoxInspectorContainer.js +2 -2
  124. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  125. package/Libraries/LogBox/UI/LogBoxButton.js +14 -16
  126. package/Libraries/LogBox/UI/LogBoxInspector.js +2 -2
  127. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +6 -9
  128. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.windows.js +6 -9
  129. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -1
  130. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +1 -1
  131. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +1 -1
  132. package/Libraries/LogBox/UI/LogBoxInspectorHeader.windows.js +1 -1
  133. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +1 -1
  134. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +10 -15
  135. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +25 -18
  136. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.windows.js +15 -16
  137. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +5 -7
  138. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +8 -10
  139. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +8 -6
  140. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.windows.js +3 -5
  141. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +17 -29
  142. package/Libraries/LogBox/UI/LogBoxMessage.js +28 -37
  143. package/Libraries/LogBox/UI/LogBoxNotification.js +1 -1
  144. package/Libraries/Modal/Modal.d.ts +4 -0
  145. package/Libraries/Modal/Modal.js +3 -3
  146. package/Libraries/Modal/Modal.windows.js +7 -3
  147. package/Libraries/NativeComponent/BaseViewConfig.android.js +28 -52
  148. package/Libraries/NativeComponent/BaseViewConfig.ios.js +19 -21
  149. package/Libraries/NativeComponent/BaseViewConfig.windows.js +26 -17
  150. package/Libraries/Network/RCTNetworking.android.js +1 -1
  151. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  152. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  153. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  154. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +1 -1
  155. package/Libraries/Network/XMLHttpRequest.js +1 -1
  156. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +3 -3
  157. package/Libraries/Pressability/Pressability.js +5 -5
  158. package/Libraries/Pressability/Pressability.windows.js +5 -5
  159. package/Libraries/Pressability/PressabilityDebug.js +1 -1
  160. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -1
  161. package/Libraries/Pressability/usePressability.js +3 -14
  162. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
  163. package/Libraries/ReactNative/AppContainer-dev.js +18 -1
  164. package/Libraries/ReactNative/AppContainer.js +1 -1
  165. package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
  166. package/Libraries/ReactNative/AppRegistryImpl.js +2 -2
  167. package/Libraries/ReactNative/FabricUIManager.js +1 -1
  168. package/Libraries/ReactNative/RendererImplementation.js +4 -4
  169. package/Libraries/ReactNative/UIManagerProperties.js +1 -1
  170. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +3 -2
  171. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +3 -2
  172. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +3 -2
  173. package/Libraries/Renderer/shims/ReactFabric.js +1 -3
  174. package/Libraries/Renderer/shims/ReactFeatureFlags.js +1 -3
  175. package/Libraries/Renderer/shims/ReactNative.js +3 -2
  176. package/Libraries/Renderer/shims/ReactNativeTypes.js +1 -3
  177. package/Libraries/Renderer/shims/ReactNativeTypes.windows.js +1 -3
  178. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +1 -3
  179. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +1 -3
  180. package/Libraries/StyleSheet/PointPropType.js +1 -1
  181. package/Libraries/StyleSheet/Rect.js +1 -1
  182. package/Libraries/StyleSheet/StyleSheet.d.ts +0 -5
  183. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  184. package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
  185. package/Libraries/StyleSheet/StyleSheetExports.js +16 -25
  186. package/Libraries/StyleSheet/StyleSheetExports.js.flow +2 -7
  187. package/Libraries/StyleSheet/StyleSheetTypes.js +33 -35
  188. package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +5 -5
  189. package/Libraries/StyleSheet/private/_TransformStyle.js +7 -7
  190. package/Libraries/StyleSheet/processBackgroundImage.js +7 -7
  191. package/Libraries/StyleSheet/processBackgroundPosition.js +4 -4
  192. package/Libraries/StyleSheet/processBackgroundRepeat.js +4 -4
  193. package/Libraries/StyleSheet/processBackgroundSize.js +4 -4
  194. package/Libraries/StyleSheet/processBoxShadow.js +44 -4
  195. package/Libraries/StyleSheet/processColorArray.js +2 -2
  196. package/Libraries/StyleSheet/processFilter.js +2 -2
  197. package/Libraries/Text/Text.js +295 -627
  198. package/Libraries/Text/Text.windows.js +342 -717
  199. package/Libraries/Text/TextNativeComponent.js +14 -7
  200. package/Libraries/Text/TextProps.js +4 -4
  201. package/Libraries/Text/TextProps.windows.js +4 -4
  202. package/Libraries/Types/CodegenTypes.js +1 -1
  203. package/Libraries/Types/CoreEventTypes.js +21 -21
  204. package/Libraries/Types/CoreEventTypes.windows.js +21 -21
  205. package/Libraries/Types/ReactDevToolsTypes.js +2 -2
  206. package/Libraries/Utilities/Appearance.js +6 -1
  207. package/Libraries/Utilities/Dimensions.js +1 -1
  208. package/Libraries/Utilities/HMRClient.js +32 -5
  209. package/Libraries/Utilities/IPerformanceLogger.js +4 -4
  210. package/Libraries/Utilities/codegenNativeCommands.js +4 -4
  211. package/Libraries/Utilities/codegenNativeComponent.d.ts +2 -0
  212. package/Libraries/Utilities/codegenNativeComponent.js +2 -2
  213. package/Libraries/Utilities/logError.js +1 -1
  214. package/Libraries/Utilities/stringifySafe.js +3 -3
  215. package/Libraries/Utilities/useMergeRefs.js +2 -2
  216. package/Libraries/vendor/core/ErrorUtils.js +4 -4
  217. package/Libraries/vendor/emitter/EventEmitter.js +16 -20
  218. package/Microsoft.ReactNative/CallInvoker.cpp +14 -4
  219. package/Microsoft.ReactNative/Fabric/AbiComponentDescriptor.cpp +1 -1
  220. package/Microsoft.ReactNative/Fabric/AbiPortalShadowNode.cpp +2 -2
  221. package/Microsoft.ReactNative/Fabric/AbiViewComponentDescriptor.h +1 -1
  222. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.cpp +73 -97
  223. package/Microsoft.ReactNative/Fabric/Composition/BorderPrimitive.h +4 -1
  224. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -1
  225. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.cpp +28 -46
  226. package/Microsoft.ReactNative/Fabric/Composition/CompositionDynamicAutomationProvider.h +0 -3
  227. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +4 -4
  228. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +154 -31
  229. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.h +10 -0
  230. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +7 -2
  231. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +2 -0
  232. package/Microsoft.ReactNative/Fabric/Composition/Modal/WindowsModalHostViewComponentView.cpp +170 -15
  233. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +3 -1
  234. package/Microsoft.ReactNative/Fabric/Composition/SelectionItemAutomationEvent.h +73 -0
  235. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +1 -1
  236. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputState.cpp +1 -1
  237. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +105 -32
  238. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.h +7 -2
  239. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +11 -0
  240. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +1 -0
  241. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +3 -0
  242. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -3
  243. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.cpp +2 -7
  244. package/Microsoft.ReactNative/IReactPackageBuilder.idl +6 -0
  245. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +1 -61
  246. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +1 -26
  247. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -1
  248. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +2 -17
  249. package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -4
  250. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +0 -2
  251. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +16 -15
  252. package/Microsoft.ReactNative/Modules/AppearanceModule.h +5 -1
  253. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +2 -7
  254. package/Microsoft.ReactNative/Modules/DeviceInfoModule.h +0 -1
  255. package/Microsoft.ReactNative/Modules/I18nManagerModule.h +4 -4
  256. package/Microsoft.ReactNative/QuirkSettings.cpp +0 -133
  257. package/Microsoft.ReactNative/QuirkSettings.h +0 -43
  258. package/Microsoft.ReactNative/QuirkSettings.idl +0 -41
  259. package/Microsoft.ReactNative/ReactHost/CrashManager.cpp +0 -4
  260. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -2
  261. package/Microsoft.ReactNative/ReactHost/React.h +0 -5
  262. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +0 -1
  263. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +3 -26
  264. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +0 -5
  265. package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -2
  266. package/Microsoft.ReactNative/ReactNativeAppBuilder.idl +3 -0
  267. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +7 -0
  268. package/Microsoft.ReactNative/ReactPackageBuilder.h +1 -0
  269. package/Microsoft.ReactNative/RedBox.cpp +0 -9
  270. package/Microsoft.ReactNative/RedBoxHandler.cpp +0 -4
  271. package/Microsoft.ReactNative/TurboModulesProvider.cpp +5 -10
  272. package/Microsoft.ReactNative/TurboModulesProvider.h +2 -0
  273. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +1 -1
  274. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -7
  275. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +0 -22
  276. package/Microsoft.ReactNative.Cxx/ModuleRegistration.cpp +8 -2
  277. package/Microsoft.ReactNative.Cxx/ModuleRegistration.h +36 -20
  278. package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -3
  279. package/Microsoft.ReactNative.Cxx/NativeModules.h +8 -2
  280. package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -9
  281. package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -9
  282. package/PropertySheets/Autolink.props +1 -1
  283. package/PropertySheets/Bundle.props +1 -1
  284. package/PropertySheets/CIBuildOptimizations.props +2 -2
  285. package/PropertySheets/Codegen.props +1 -1
  286. package/PropertySheets/Generated/PackageVersion.g.props +3 -3
  287. package/PropertySheets/JSEngine.props +1 -1
  288. package/PropertySheets/NuGet.LockFile.props +2 -1
  289. package/PropertySheets/React.Cpp.props +4 -4
  290. package/PropertySheets/ReactNativeArchitecture.props +6 -24
  291. package/ReactCommon/ReactCommon.vcxproj +5 -6
  292. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +1 -1
  293. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +15 -4
  294. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.h +13 -0
  295. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/defaults/DefaultTurboModules.cpp +69 -0
  296. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/animationbackend/AnimatedPropSerializer.cpp +717 -0
  297. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +10 -10
  298. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +2 -21
  299. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.cpp +151 -0
  300. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/TouchEventEmitter.h +50 -0
  301. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/mapbuffer/MapBuffer.cpp +178 -0
  302. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/uimanager/UIManager.cpp +69 -39
  303. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +54 -5
  304. package/Scripts/OfficeReact.Win32.nuspec +0 -1
  305. package/Scripts/Tfs/Layout-Desktop-Headers.ps1 +4 -39
  306. package/Scripts/UpdateNightlyDependencies.ps1 +47 -0
  307. package/Scripts/creaternwapp.cmd +29 -17
  308. package/Scripts/creaternwlib.cmd +31 -35
  309. package/Shared/DevSettings.h +0 -3
  310. package/Shared/Networking/WinRTWebSocketResource.cpp +23 -408
  311. package/Shared/Networking/WinRTWebSocketResource.h +3 -119
  312. package/Shared/Shared.vcxitems +63 -38
  313. package/Shared/Shared.vcxitems.filters +54 -0
  314. package/Shared/Utils.cpp +0 -88
  315. package/Shared/Utils.h +0 -14
  316. package/Shared/WebSocketResourceFactory.cpp +28 -0
  317. package/Shared/tracing/fbsystrace.h +1 -0
  318. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +172 -160
  319. package/codegen/react/components/rnwcore/ModalHostView.g.h +8 -0
  320. package/codegen/react/components/rnwcore/Props.cpp +17 -7
  321. package/codegen/react/components/rnwcore/Props.h +3 -1
  322. package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +4 -4
  323. package/codegen/rnwcoreJSI.h +93 -77
  324. package/{Folly → external}/.clang-format +0 -1
  325. package/external/External.vcxitems +10 -0
  326. package/external/fast-float/.syncignore +10 -0
  327. package/external/fast-float/LICENSE-APACHE +190 -0
  328. package/external/fast-float/LICENSE-BOOST +23 -0
  329. package/external/fast-float/LICENSE-MIT +27 -0
  330. package/external/fast-float/README.md +545 -0
  331. package/external/fast-float/cgmanifest.json +15 -0
  332. package/external/fast-float/fast-float.vcxitems +14 -0
  333. package/external/fast-float/include/fast_float/ascii_number.h +588 -0
  334. package/external/fast-float/include/fast_float/bigint.h +638 -0
  335. package/external/fast-float/include/fast_float/constexpr_feature_detect.h +46 -0
  336. package/external/fast-float/include/fast_float/decimal_to_binary.h +212 -0
  337. package/external/fast-float/include/fast_float/digit_comparison.h +457 -0
  338. package/external/fast-float/include/fast_float/fast_float.h +59 -0
  339. package/external/fast-float/include/fast_float/fast_table.h +708 -0
  340. package/external/fast-float/include/fast_float/float_common.h +1240 -0
  341. package/external/fast-float/include/fast_float/parse_number.h +399 -0
  342. package/external/fast-float/sync-config.json +8 -0
  343. package/external/fmt/.syncignore +10 -0
  344. package/external/fmt/CONTRIBUTING.md +20 -0
  345. package/external/fmt/LICENSE +27 -0
  346. package/external/fmt/README.md +484 -0
  347. package/external/fmt/doc/ChangeLog-old.md +3290 -0
  348. package/external/fmt/doc/api.md +650 -0
  349. package/external/fmt/doc/fmt.css +61 -0
  350. package/external/fmt/doc/fmt.js +4 -0
  351. package/external/fmt/doc/get-started.md +222 -0
  352. package/external/fmt/doc/index.md +151 -0
  353. package/external/fmt/doc/perf.svg +1 -0
  354. package/external/fmt/doc/python-license.txt +290 -0
  355. package/external/fmt/doc/syntax.md +887 -0
  356. package/external/fmt/fmt.vcxitems +28 -0
  357. package/external/fmt/include/fmt/args.h +228 -0
  358. package/external/fmt/include/fmt/base.h +3077 -0
  359. package/external/fmt/include/fmt/chrono.h +2432 -0
  360. package/external/fmt/include/fmt/color.h +612 -0
  361. package/external/fmt/include/fmt/compile.h +529 -0
  362. package/external/fmt/include/fmt/core.h +5 -0
  363. package/external/fmt/include/fmt/format-inl.h +1928 -0
  364. package/external/fmt/include/fmt/format.h +4427 -0
  365. package/external/fmt/include/fmt/os.h +439 -0
  366. package/external/fmt/include/fmt/ostream.h +211 -0
  367. package/external/fmt/include/fmt/printf.h +656 -0
  368. package/external/fmt/include/fmt/ranges.h +882 -0
  369. package/external/fmt/include/fmt/std.h +699 -0
  370. package/external/fmt/include/fmt/xchar.h +322 -0
  371. package/external/fmt/src/fmt.cc +135 -0
  372. package/external/fmt/src/format.cc +43 -0
  373. package/external/fmt/src/os.cc +403 -0
  374. package/external/fmt/sync-config.json +8 -0
  375. package/external/folly/.syncignore +60 -0
  376. package/external/folly/LICENSE +200 -0
  377. package/external/folly/README.md +263 -0
  378. package/{fmt → external/folly/folly}/.clang-format +0 -1
  379. package/external/folly/folly/AtomicHashArray-inl.h +546 -0
  380. package/external/folly/folly/AtomicHashArray.h +431 -0
  381. package/external/folly/folly/AtomicHashMap-inl.h +653 -0
  382. package/external/folly/folly/AtomicHashMap.h +484 -0
  383. package/external/folly/folly/AtomicIntrusiveLinkedList.h +206 -0
  384. package/external/folly/folly/AtomicLinkedList.h +110 -0
  385. package/external/folly/folly/AtomicUnorderedMap.h +522 -0
  386. package/external/folly/folly/BUCK +1631 -0
  387. package/external/folly/folly/BUILD_MODE.bzl +72 -0
  388. package/external/folly/folly/Benchmark.cpp +986 -0
  389. package/external/folly/folly/Benchmark.h +680 -0
  390. package/external/folly/folly/BenchmarkUtil.h +47 -0
  391. package/external/folly/folly/Bits.h +17 -0
  392. package/external/folly/folly/CMakeLists.txt +110 -0
  393. package/external/folly/folly/CPortability.h +338 -0
  394. package/external/folly/folly/CancellationToken-inl.h +449 -0
  395. package/external/folly/folly/CancellationToken.cpp +250 -0
  396. package/external/folly/folly/CancellationToken.h +365 -0
  397. package/external/folly/folly/Chrono.h +132 -0
  398. package/external/folly/folly/ClockGettimeWrappers.cpp +93 -0
  399. package/external/folly/folly/ClockGettimeWrappers.h +29 -0
  400. package/external/folly/folly/ConcurrentBitSet.h +157 -0
  401. package/external/folly/folly/ConcurrentLazy.h +74 -0
  402. package/external/folly/folly/ConcurrentSkipList-inl.h +341 -0
  403. package/external/folly/folly/ConcurrentSkipList.h +824 -0
  404. package/external/folly/folly/ConstructorCallbackList.h +158 -0
  405. package/external/folly/folly/Conv.h +2026 -0
  406. package/external/folly/folly/CppAttributes.h +170 -0
  407. package/external/folly/folly/CpuId.h +297 -0
  408. package/external/folly/folly/DefaultKeepAliveExecutor.h +172 -0
  409. package/external/folly/folly/Demangle.cpp +255 -0
  410. package/external/folly/folly/Demangle.h +73 -0
  411. package/external/folly/folly/DiscriminatedPtr.h +236 -0
  412. package/external/folly/folly/DynamicConverter.h +17 -0
  413. package/external/folly/folly/Exception.h +150 -0
  414. package/external/folly/folly/ExceptionString.cpp +51 -0
  415. package/external/folly/folly/ExceptionString.h +33 -0
  416. package/external/folly/folly/ExceptionWrapper-inl.h +264 -0
  417. package/external/folly/folly/ExceptionWrapper.cpp +37 -0
  418. package/external/folly/folly/ExceptionWrapper.h +377 -0
  419. package/external/folly/folly/Executor.cpp +111 -0
  420. package/external/folly/folly/Executor.h +351 -0
  421. package/external/folly/folly/Expected.h +1725 -0
  422. package/external/folly/folly/FBString.h +2888 -0
  423. package/external/folly/folly/FBVector.h +17 -0
  424. package/external/folly/folly/File.cpp +180 -0
  425. package/external/folly/folly/File.h +177 -0
  426. package/external/folly/folly/FileUtil.cpp +378 -0
  427. package/external/folly/folly/FileUtil.h +332 -0
  428. package/external/folly/folly/Fingerprint.cpp +135 -0
  429. package/external/folly/folly/Fingerprint.h +289 -0
  430. package/external/folly/folly/FixedString.h +2965 -0
  431. package/external/folly/folly/FollyMemcpy.cpp +30 -0
  432. package/external/folly/folly/FollyMemcpy.h +23 -0
  433. package/external/folly/folly/FollyMemset.cpp +29 -0
  434. package/external/folly/folly/FollyMemset.h +25 -0
  435. package/external/folly/folly/Format-inl.h +1152 -0
  436. package/external/folly/folly/Format.cpp +429 -0
  437. package/external/folly/folly/Format.h +463 -0
  438. package/external/folly/folly/FormatArg.h +285 -0
  439. package/external/folly/folly/FormatTraits.h +65 -0
  440. package/external/folly/folly/Function.h +1159 -0
  441. package/external/folly/folly/GLog.h +85 -0
  442. package/external/folly/folly/GroupVarint.cpp +153 -0
  443. package/external/folly/folly/GroupVarint.h +630 -0
  444. package/external/folly/folly/Hash.h +20 -0
  445. package/external/folly/folly/IPAddress.cpp +490 -0
  446. package/external/folly/folly/IPAddress.h +667 -0
  447. package/external/folly/folly/IPAddressException.h +82 -0
  448. package/external/folly/folly/IPAddressV4.cpp +305 -0
  449. package/external/folly/folly/IPAddressV4.h +495 -0
  450. package/external/folly/folly/IPAddressV6.cpp +541 -0
  451. package/external/folly/folly/IPAddressV6.h +627 -0
  452. package/external/folly/folly/Indestructible.h +164 -0
  453. package/external/folly/folly/IndexedMemPool.h +550 -0
  454. package/external/folly/folly/IntrusiveList.h +17 -0
  455. package/external/folly/folly/Lazy.h +142 -0
  456. package/external/folly/folly/Likely.h +76 -0
  457. package/external/folly/folly/MPMCPipeline.h +280 -0
  458. package/external/folly/folly/MPMCQueue.h +1556 -0
  459. package/external/folly/folly/MacAddress.cpp +188 -0
  460. package/external/folly/folly/MacAddress.h +260 -0
  461. package/external/folly/folly/MapUtil.h +17 -0
  462. package/external/folly/folly/Math.h +258 -0
  463. package/external/folly/folly/MaybeManagedPtr.h +120 -0
  464. package/external/folly/folly/Memory.h +900 -0
  465. package/external/folly/folly/MicroLock.cpp +76 -0
  466. package/external/folly/folly/MicroLock.h +354 -0
  467. package/external/folly/folly/MicroSpinLock.h +17 -0
  468. package/external/folly/folly/MoveWrapper.h +76 -0
  469. package/external/folly/folly/ObserverContainer.h +1026 -0
  470. package/external/folly/folly/Optional.h +743 -0
  471. package/external/folly/folly/Overload.h +325 -0
  472. package/external/folly/folly/PackedSyncPtr.h +147 -0
  473. package/external/folly/folly/Padded.h +464 -0
  474. package/external/folly/folly/Poly-inl.h +230 -0
  475. package/external/folly/folly/Poly.h +1095 -0
  476. package/external/folly/folly/PolyException.h +43 -0
  477. package/external/folly/folly/Portability.h +644 -0
  478. package/external/folly/folly/Preprocessor.h +236 -0
  479. package/external/folly/folly/ProducerConsumerQueue.h +182 -0
  480. package/external/folly/folly/RWSpinLock.h +17 -0
  481. package/external/folly/folly/Random-inl.h +86 -0
  482. package/external/folly/folly/Random.cpp +184 -0
  483. package/external/folly/folly/Random.h +434 -0
  484. package/external/folly/folly/Range.h +1772 -0
  485. package/external/folly/folly/Replaceable.h +636 -0
  486. package/external/folly/folly/ScopeGuard.cpp +29 -0
  487. package/external/folly/folly/ScopeGuard.h +420 -0
  488. package/external/folly/folly/SharedMutex.cpp +81 -0
  489. package/external/folly/folly/SharedMutex.h +1751 -0
  490. package/external/folly/folly/Singleton-inl.h +332 -0
  491. package/external/folly/folly/Singleton.cpp +512 -0
  492. package/external/folly/folly/Singleton.h +891 -0
  493. package/external/folly/folly/SingletonThreadLocal.cpp +53 -0
  494. package/external/folly/folly/SingletonThreadLocal.h +263 -0
  495. package/external/folly/folly/SocketAddress.cpp +786 -0
  496. package/external/folly/folly/SocketAddress.h +768 -0
  497. package/external/folly/folly/SpinLock.h +55 -0
  498. package/external/folly/folly/String-inl.h +668 -0
  499. package/external/folly/folly/String.cpp +777 -0
  500. package/external/folly/folly/String.h +767 -0
  501. package/external/folly/folly/Subprocess.cpp +1142 -0
  502. package/external/folly/folly/Subprocess.h +1055 -0
  503. package/external/folly/folly/Synchronized.h +1833 -0
  504. package/external/folly/folly/SynchronizedPtr.h +106 -0
  505. package/external/folly/folly/ThreadCachedInt.h +175 -0
  506. package/external/folly/folly/ThreadLocal.h +478 -0
  507. package/external/folly/folly/TimeoutQueue.cpp +78 -0
  508. package/external/folly/folly/TimeoutQueue.h +123 -0
  509. package/external/folly/folly/TokenBucket.h +673 -0
  510. package/external/folly/folly/Traits.h +1442 -0
  511. package/external/folly/folly/Try-inl.h +372 -0
  512. package/external/folly/folly/Try.cpp +23 -0
  513. package/external/folly/folly/Try.h +728 -0
  514. package/external/folly/folly/UTF8String.h +56 -0
  515. package/external/folly/folly/Unicode.cpp +201 -0
  516. package/external/folly/folly/Unicode.h +94 -0
  517. package/external/folly/folly/Unit.h +65 -0
  518. package/external/folly/folly/Uri-inl.h +101 -0
  519. package/external/folly/folly/Uri.cpp +190 -0
  520. package/external/folly/folly/Uri.h +142 -0
  521. package/external/folly/folly/Utility.h +932 -0
  522. package/external/folly/folly/VERSION +1 -0
  523. package/external/folly/folly/Varint.h +230 -0
  524. package/external/folly/folly/VirtualExecutor.h +17 -0
  525. package/external/folly/folly/algorithm/simd/BUCK +47 -0
  526. package/external/folly/folly/algorithm/simd/Contains.cpp +42 -0
  527. package/external/folly/folly/algorithm/simd/Contains.h +116 -0
  528. package/external/folly/folly/algorithm/simd/FindFixed.h +301 -0
  529. package/external/folly/folly/algorithm/simd/Ignore.h +52 -0
  530. package/external/folly/folly/algorithm/simd/Movemask.h +207 -0
  531. package/external/folly/folly/algorithm/simd/detail/BUCK +70 -0
  532. package/external/folly/folly/algorithm/simd/detail/ContainsImpl.h +91 -0
  533. package/external/folly/folly/algorithm/simd/detail/SimdAnyOf.h +83 -0
  534. package/external/folly/folly/algorithm/simd/detail/SimdForEach.h +209 -0
  535. package/external/folly/folly/algorithm/simd/detail/SimdPlatform.h +445 -0
  536. package/external/folly/folly/algorithm/simd/detail/Traits.h +125 -0
  537. package/external/folly/folly/algorithm/simd/detail/UnrollUtils.h +126 -0
  538. package/external/folly/folly/base64.h +264 -0
  539. package/external/folly/folly/chrono/BUCK +29 -0
  540. package/external/folly/folly/chrono/Clock.h +65 -0
  541. package/external/folly/folly/chrono/Conv.h +712 -0
  542. package/external/folly/folly/chrono/test/BUCK +26 -0
  543. package/external/folly/folly/chrono/test/ClockTest.cpp +68 -0
  544. package/external/folly/folly/chrono/test/ConvTest.cpp +652 -0
  545. package/external/folly/folly/concurrency/AtomicSharedPtr.h +387 -0
  546. package/external/folly/folly/concurrency/BUCK +170 -0
  547. package/external/folly/folly/concurrency/CacheLocality.h +460 -0
  548. package/external/folly/folly/concurrency/ConcurrentHashMap.h +822 -0
  549. package/external/folly/folly/concurrency/CoreCachedSharedPtr.h +232 -0
  550. package/external/folly/folly/concurrency/DeadlockDetector.cpp +27 -0
  551. package/external/folly/folly/concurrency/DeadlockDetector.h +44 -0
  552. package/external/folly/folly/concurrency/DynamicBoundedQueue.h +751 -0
  553. package/external/folly/folly/concurrency/PriorityUnboundedQueueSet.h +207 -0
  554. package/external/folly/folly/concurrency/ProcessLocalUniqueId.cpp +46 -0
  555. package/external/folly/folly/concurrency/ProcessLocalUniqueId.h +38 -0
  556. package/external/folly/folly/concurrency/SingletonRelaxedCounter.h +325 -0
  557. package/external/folly/folly/concurrency/ThreadCachedSynchronized.h +227 -0
  558. package/external/folly/folly/concurrency/UnboundedQueue.h +891 -0
  559. package/external/folly/folly/concurrency/container/BUCK +77 -0
  560. package/external/folly/folly/concurrency/container/FlatCombiningPriorityQueue.h +426 -0
  561. package/external/folly/folly/concurrency/container/LockFreeRingBuffer.h +306 -0
  562. package/external/folly/folly/concurrency/container/RelaxedConcurrentPriorityQueue.h +1212 -0
  563. package/external/folly/folly/concurrency/container/SingleWriterFixedHashMap.h +322 -0
  564. package/external/folly/folly/concurrency/container/atomic_grow_array.h +564 -0
  565. package/external/folly/folly/concurrency/container/test/BUCK +75 -0
  566. package/external/folly/folly/concurrency/container/test/FlatCombiningPriorityQueueTest.cpp +570 -0
  567. package/external/folly/folly/concurrency/container/test/LockFreeRingBufferTest.cpp +276 -0
  568. package/external/folly/folly/concurrency/container/test/RelaxedConcurrentPriorityQueueTest.cpp +1570 -0
  569. package/external/folly/folly/concurrency/container/test/SingleWriterFixedHashMapTest.cpp +401 -0
  570. package/external/folly/folly/concurrency/container/test/atomic_grow_array_test.cpp +187 -0
  571. package/external/folly/folly/concurrency/detail/AtomicSharedPtr-detail.h +212 -0
  572. package/external/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h +1911 -0
  573. package/external/folly/folly/concurrency/memory/AtomicReadMostlyMainPtr.cpp +43 -0
  574. package/external/folly/folly/concurrency/memory/AtomicReadMostlyMainPtr.h +190 -0
  575. package/external/folly/folly/concurrency/memory/BUCK +53 -0
  576. package/external/folly/folly/concurrency/memory/PrimaryPtr.h +338 -0
  577. package/external/folly/folly/concurrency/memory/ReadMostlySharedPtr.h +511 -0
  578. package/external/folly/folly/concurrency/memory/TLRefCount.h +228 -0
  579. package/external/folly/folly/concurrency/memory/test/AtomicReadMostlyMainPtrBenchmark.cpp +56 -0
  580. package/external/folly/folly/concurrency/memory/test/AtomicReadMostlyMainPtrTest.cpp +454 -0
  581. package/external/folly/folly/concurrency/memory/test/BUCK +95 -0
  582. package/external/folly/folly/concurrency/memory/test/PrimaryPtrTest.cpp +303 -0
  583. package/external/folly/folly/concurrency/memory/test/ReadMostlySharedPtrBenchmark.cpp +138 -0
  584. package/external/folly/folly/concurrency/memory/test/ReadMostlySharedPtrStressTest.cpp +75 -0
  585. package/external/folly/folly/concurrency/memory/test/ReadMostlySharedPtrTest.cpp +378 -0
  586. package/external/folly/folly/concurrency/memory/test/RefCountBenchmark.cpp +90 -0
  587. package/external/folly/folly/concurrency/memory/test/RefCountTest.cpp +168 -0
  588. package/external/folly/folly/concurrency/test/AtomicSharedPtrCounted.h +156 -0
  589. package/external/folly/folly/concurrency/test/AtomicSharedPtrPerformance.cpp +255 -0
  590. package/external/folly/folly/concurrency/test/AtomicSharedPtrTest.cpp +257 -0
  591. package/external/folly/folly/concurrency/test/BUCK +229 -0
  592. package/external/folly/folly/concurrency/test/CacheLocalityBenchmark.cpp +392 -0
  593. package/external/folly/folly/concurrency/test/CacheLocalityTest.cpp +1229 -0
  594. package/external/folly/folly/concurrency/test/ConcurrentHashMapBench.cpp +260 -0
  595. package/external/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp +1242 -0
  596. package/external/folly/folly/concurrency/test/CoreCachedSharedPtrTest.cpp +408 -0
  597. package/external/folly/folly/concurrency/test/DynamicBoundedQueueTest.cpp +984 -0
  598. package/external/folly/folly/concurrency/test/PriorityUnboundedQueueSetTest.cpp +73 -0
  599. package/external/folly/folly/concurrency/test/ProcessLocalUniqueIdTest.cpp +66 -0
  600. package/external/folly/folly/concurrency/test/SingletonRelaxedCounterBench.cpp +101 -0
  601. package/external/folly/folly/concurrency/test/SingletonRelaxedCounterTest.cpp +185 -0
  602. package/external/folly/folly/concurrency/test/ThreadCachedSynchronizedBench.cpp +76 -0
  603. package/external/folly/folly/concurrency/test/ThreadCachedSynchronizedTest.cpp +93 -0
  604. package/external/folly/folly/concurrency/test/UnboundedQueueTest.cpp +1302 -0
  605. package/external/folly/folly/container/Access.h +57 -0
  606. package/external/folly/folly/container/Array.h +87 -0
  607. package/external/folly/folly/container/BUCK +353 -0
  608. package/external/folly/folly/container/BitIterator.h +203 -0
  609. package/external/folly/folly/container/Enumerate.h +162 -0
  610. package/external/folly/folly/container/EvictingCacheMap.h +730 -0
  611. package/external/folly/folly/container/F14.md +300 -0
  612. package/external/folly/folly/container/F14Map-fwd.h +113 -0
  613. package/external/folly/folly/container/F14Map.h +2108 -0
  614. package/external/folly/folly/container/F14Set-fwd.h +95 -0
  615. package/external/folly/folly/container/F14Set.h +1603 -0
  616. package/external/folly/folly/container/FBVector.h +1711 -0
  617. package/external/folly/folly/container/Foreach-inl.h +316 -0
  618. package/external/folly/folly/container/Foreach.h +209 -0
  619. package/external/folly/folly/container/HeterogeneousAccess-fwd.h +33 -0
  620. package/external/folly/folly/container/HeterogeneousAccess.h +171 -0
  621. package/external/folly/folly/container/IntrusiveHeap.h +268 -0
  622. package/external/folly/folly/container/IntrusiveList.h +131 -0
  623. package/external/folly/folly/container/Iterator.h +843 -0
  624. package/external/folly/folly/container/MapUtil.h +376 -0
  625. package/external/folly/folly/container/Merge.h +90 -0
  626. package/external/folly/folly/container/RegexMatchCache.cpp +521 -0
  627. package/external/folly/folly/container/RegexMatchCache.h +699 -0
  628. package/external/folly/folly/container/Reserve.h +109 -0
  629. package/external/folly/folly/container/SparseByteSet.h +123 -0
  630. package/external/folly/folly/container/View.h +81 -0
  631. package/external/folly/folly/container/WeightedEvictingCacheMap.h +651 -0
  632. package/external/folly/folly/container/detail/BUCK +115 -0
  633. package/external/folly/folly/container/detail/BitIteratorDetail.h +87 -0
  634. package/external/folly/folly/container/detail/F14Defaults.h +34 -0
  635. package/external/folly/folly/container/detail/F14IntrinsicsAvailability.h +67 -0
  636. package/external/folly/folly/container/detail/F14MapFallback.h +717 -0
  637. package/external/folly/folly/container/detail/F14Mask.h +235 -0
  638. package/external/folly/folly/container/detail/F14Policy.h +1523 -0
  639. package/external/folly/folly/container/detail/F14SetFallback.h +528 -0
  640. package/external/folly/folly/container/detail/F14Table.cpp +71 -0
  641. package/external/folly/folly/container/detail/F14Table.h +2680 -0
  642. package/external/folly/folly/container/detail/Util.h +303 -0
  643. package/external/folly/folly/container/detail/tape_detail.h +135 -0
  644. package/external/folly/folly/container/detail/test/BUCK +14 -0
  645. package/external/folly/folly/container/detail/test/F14DetailTest.cpp +47 -0
  646. package/external/folly/folly/container/heap_vector_types.h +1683 -0
  647. package/external/folly/folly/container/range_traits.h +81 -0
  648. package/external/folly/folly/container/small_vector.h +1476 -0
  649. package/external/folly/folly/container/sorted_vector_types.h +1652 -0
  650. package/external/folly/folly/container/span.h +408 -0
  651. package/external/folly/folly/container/tape.h +608 -0
  652. package/external/folly/folly/container/test/.clang-tidy +12 -0
  653. package/external/folly/folly/container/test/AccessTest.cpp +138 -0
  654. package/external/folly/folly/container/test/ArrayTest.cpp +84 -0
  655. package/external/folly/folly/container/test/BUCK +568 -0
  656. package/external/folly/folly/container/test/BitIteratorBench.cpp +112 -0
  657. package/external/folly/folly/container/test/BitIteratorTest.cpp +109 -0
  658. package/external/folly/folly/container/test/EnumerateTest.cpp +294 -0
  659. package/external/folly/folly/container/test/EvictingCacheMapBench.cpp +80 -0
  660. package/external/folly/folly/container/test/EvictingCacheMapTest.cpp +842 -0
  661. package/external/folly/folly/container/test/F14AsanSupportTest.cpp +143 -0
  662. package/external/folly/folly/container/test/F14FwdTest.cpp +37 -0
  663. package/external/folly/folly/container/test/F14InterprocessTest.cpp +404 -0
  664. package/external/folly/folly/container/test/F14MapTest.cpp +2543 -0
  665. package/external/folly/folly/container/test/F14PolicyTest.cpp +49 -0
  666. package/external/folly/folly/container/test/F14SetTest.cpp +1738 -0
  667. package/external/folly/folly/container/test/F14SmallOverheads.cpp +215 -0
  668. package/external/folly/folly/container/test/F14TestUtil.h +117 -0
  669. package/external/folly/folly/container/test/FBVectorBenchmark.cpp +380 -0
  670. package/external/folly/folly/container/test/FBVectorBenchmarks.cpp.h +100 -0
  671. package/external/folly/folly/container/test/FBVectorTest.cpp +326 -0
  672. package/external/folly/folly/container/test/FBVectorTests.cpp.h +304 -0
  673. package/external/folly/folly/container/test/ForeachBenchmark.cpp +388 -0
  674. package/external/folly/folly/container/test/ForeachTest.cpp +338 -0
  675. package/external/folly/folly/container/test/HashMapsBench.cpp +458 -0
  676. package/external/folly/folly/container/test/HeterogeneousAccessTest.cpp +242 -0
  677. package/external/folly/folly/container/test/IntrusiveHeapTest.cpp +262 -0
  678. package/external/folly/folly/container/test/IteratorTest.cpp +989 -0
  679. package/external/folly/folly/container/test/MapUtilTest.cpp +365 -0
  680. package/external/folly/folly/container/test/MergeTest.cpp +66 -0
  681. package/external/folly/folly/container/test/RegexMatchCacheTest.cpp +634 -0
  682. package/external/folly/folly/container/test/ReserveTest.cpp +173 -0
  683. package/external/folly/folly/container/test/SparseByteSetBenchmark.cpp +153 -0
  684. package/external/folly/folly/container/test/SparseByteSetTest.cpp +117 -0
  685. package/external/folly/folly/container/test/TrackingTypes.h +584 -0
  686. package/external/folly/folly/container/test/UtilTest.cpp +609 -0
  687. package/external/folly/folly/container/test/WeightedEvictingCacheMapTest.cpp +800 -0
  688. package/external/folly/folly/container/test/heap_vector_types_test.cpp +1774 -0
  689. package/external/folly/folly/container/test/range_traits_test.cpp +59 -0
  690. package/external/folly/folly/container/test/small_vector_test.cpp +1571 -0
  691. package/external/folly/folly/container/test/sorted_vector_test.cpp +1589 -0
  692. package/external/folly/folly/container/test/span_test.cpp +520 -0
  693. package/external/folly/folly/container/test/tape_bench.cpp +200 -0
  694. package/external/folly/folly/container/test/tape_test.cpp +590 -0
  695. package/external/folly/folly/defs.bzl +238 -0
  696. package/external/folly/folly/detail/AsyncTrace.cpp +36 -0
  697. package/external/folly/folly/detail/AsyncTrace.h +44 -0
  698. package/external/folly/folly/detail/AtomicHashUtils.h +42 -0
  699. package/external/folly/folly/detail/AtomicUnorderedMapUtils.h +80 -0
  700. package/external/folly/folly/detail/BUCK +406 -0
  701. package/external/folly/folly/detail/DiscriminatedPtrDetail.h +172 -0
  702. package/external/folly/folly/detail/FileUtilDetail.cpp +63 -0
  703. package/external/folly/folly/detail/FileUtilDetail.h +85 -0
  704. package/external/folly/folly/detail/FileUtilVectorDetail.h +81 -0
  705. package/external/folly/folly/detail/FingerprintPolynomial.h +132 -0
  706. package/external/folly/folly/detail/Futex-inl.h +123 -0
  707. package/external/folly/folly/detail/Futex.cpp +273 -0
  708. package/external/folly/folly/detail/Futex.h +109 -0
  709. package/external/folly/folly/detail/GroupVarintDetail.h +101 -0
  710. package/external/folly/folly/detail/IPAddress.cpp +37 -0
  711. package/external/folly/folly/detail/IPAddress.h +57 -0
  712. package/external/folly/folly/detail/IPAddressSource.h +278 -0
  713. package/external/folly/folly/detail/Iterators.h +156 -0
  714. package/external/folly/folly/detail/MPMCPipelineDetail.h +122 -0
  715. package/external/folly/folly/detail/MemoryIdler.cpp +233 -0
  716. package/external/folly/folly/detail/MemoryIdler.h +216 -0
  717. package/external/folly/folly/detail/PerfScoped.cpp +112 -0
  718. package/external/folly/folly/detail/PerfScoped.h +70 -0
  719. package/external/folly/folly/detail/PolyDetail.h +921 -0
  720. package/external/folly/folly/detail/RangeCommon.cpp +55 -0
  721. package/external/folly/folly/detail/RangeCommon.h +93 -0
  722. package/external/folly/folly/detail/RangeSse42.cpp +198 -0
  723. package/external/folly/folly/detail/RangeSse42.h +30 -0
  724. package/external/folly/folly/detail/SimpleSimdStringUtils.cpp +31 -0
  725. package/external/folly/folly/detail/SimpleSimdStringUtils.h +27 -0
  726. package/external/folly/folly/detail/SimpleSimdStringUtilsImpl.h +63 -0
  727. package/external/folly/folly/detail/Singleton.h +34 -0
  728. package/external/folly/folly/detail/SlowFingerprint.h +90 -0
  729. package/external/folly/folly/detail/SocketFastOpen.cpp +175 -0
  730. package/external/folly/folly/detail/SocketFastOpen.h +89 -0
  731. package/external/folly/folly/detail/SplitStringSimd.cpp +84 -0
  732. package/external/folly/folly/detail/SplitStringSimd.h +151 -0
  733. package/external/folly/folly/detail/SplitStringSimdImpl.h +149 -0
  734. package/external/folly/folly/detail/Sse.cpp +35 -0
  735. package/external/folly/folly/detail/Sse.h +45 -0
  736. package/external/folly/folly/detail/StaticSingletonManager.cpp +119 -0
  737. package/external/folly/folly/detail/StaticSingletonManager.h +298 -0
  738. package/external/folly/folly/detail/ThreadLocalDetail.cpp +492 -0
  739. package/external/folly/folly/detail/ThreadLocalDetail.h +800 -0
  740. package/external/folly/folly/detail/TrapOnAvx512.cpp +41 -0
  741. package/external/folly/folly/detail/TrapOnAvx512.h +21 -0
  742. package/external/folly/folly/detail/TurnSequencer.h +295 -0
  743. package/external/folly/folly/detail/TypeList.h +551 -0
  744. package/external/folly/folly/detail/UniqueInstance.cpp +136 -0
  745. package/external/folly/folly/detail/UniqueInstance.h +68 -0
  746. package/external/folly/folly/detail/base64_detail/BUCK +102 -0
  747. package/external/folly/folly/detail/base64_detail/Base64Api.cpp +40 -0
  748. package/external/folly/folly/detail/base64_detail/Base64Api.h +101 -0
  749. package/external/folly/folly/detail/base64_detail/Base64Common.h +80 -0
  750. package/external/folly/folly/detail/base64_detail/Base64Constants.h +79 -0
  751. package/external/folly/folly/detail/base64_detail/Base64HiddenConstants.h +129 -0
  752. package/external/folly/folly/detail/base64_detail/Base64SWAR.cpp +161 -0
  753. package/external/folly/folly/detail/base64_detail/Base64SWAR.h +32 -0
  754. package/external/folly/folly/detail/base64_detail/Base64Scalar.h +262 -0
  755. package/external/folly/folly/detail/base64_detail/Base64Simd.h +102 -0
  756. package/external/folly/folly/detail/base64_detail/Base64_SSE4_2.cpp +42 -0
  757. package/external/folly/folly/detail/base64_detail/Base64_SSE4_2.h +33 -0
  758. package/external/folly/folly/detail/base64_detail/Base64_SSE4_2_Platform.h +167 -0
  759. package/external/folly/folly/detail/base64_detail/README.md +392 -0
  760. package/external/folly/folly/detail/base64_detail/tests/BUCK +36 -0
  761. package/external/folly/folly/detail/base64_detail/tests/Base64AgainstScalarTest.cpp +141 -0
  762. package/external/folly/folly/detail/base64_detail/tests/Base64PlatformTest.cpp +273 -0
  763. package/external/folly/folly/detail/base64_detail/tests/Base64SpecialCasesTest.cpp +555 -0
  764. package/external/folly/folly/detail/test/AsyncTraceTest.cpp +43 -0
  765. package/external/folly/folly/detail/test/BUCK +118 -0
  766. package/external/folly/folly/detail/test/FileUtilDetailTest.cpp +56 -0
  767. package/external/folly/folly/detail/test/PerfScopedTest.cpp +107 -0
  768. package/external/folly/folly/detail/test/SimpleSimdStringUtilsTest.cpp +92 -0
  769. package/external/folly/folly/detail/test/SplitStringSimdTest.cpp +242 -0
  770. package/external/folly/folly/detail/test/StaticSingletonManagerTest.cpp +121 -0
  771. package/external/folly/folly/detail/test/ThreadLocalBenchmark.cpp +116 -0
  772. package/external/folly/folly/detail/test/ThreadLocalDetailTest.cpp +194 -0
  773. package/external/folly/folly/detail/test/TrapOnAvx512TestNegative.cpp +29 -0
  774. package/external/folly/folly/detail/test/UniqueInstanceTest.cpp +60 -0
  775. package/external/folly/folly/detail/thread_local_globals.cpp +69 -0
  776. package/external/folly/folly/detail/thread_local_globals.h +36 -0
  777. package/external/folly/folly/docs/AtomicHashMap.md +134 -0
  778. package/external/folly/folly/docs/Benchmark.md +310 -0
  779. package/external/folly/folly/docs/Conv.md +291 -0
  780. package/external/folly/folly/docs/Dynamic.md +220 -0
  781. package/external/folly/folly/docs/DynamicConverter.md +71 -0
  782. package/external/folly/folly/docs/Executors.md +63 -0
  783. package/external/folly/folly/docs/FBString.md +46 -0
  784. package/external/folly/folly/docs/FBVector.md +200 -0
  785. package/external/folly/folly/docs/Fbvector--graphical_solutions.png +0 -0
  786. package/external/folly/folly/docs/Format.md +177 -0
  787. package/external/folly/folly/docs/Function.md +92 -0
  788. package/external/folly/folly/docs/Futures.md +263 -0
  789. package/external/folly/folly/docs/GroupVarint.md +46 -0
  790. package/external/folly/folly/docs/Histogram.md +104 -0
  791. package/external/folly/folly/docs/MapUtils.md +80 -0
  792. package/external/folly/folly/docs/Overview.md +263 -0
  793. package/external/folly/folly/docs/PackedSyncPtr.md +77 -0
  794. package/external/folly/folly/docs/Poly.md +500 -0
  795. package/external/folly/folly/docs/ProducerConsumerQueue.md +82 -0
  796. package/external/folly/folly/docs/Rcu.md +218 -0
  797. package/external/folly/folly/docs/SmallLocks.md +24 -0
  798. package/external/folly/folly/docs/Synchronized.md +793 -0
  799. package/external/folly/folly/docs/ThreadCachedInt.md +98 -0
  800. package/external/folly/folly/docs/ThreadLocal.md +105 -0
  801. package/external/folly/folly/docs/Traits.md +161 -0
  802. package/external/folly/folly/docs/small_vector.md +64 -0
  803. package/external/folly/folly/docs/style.css +23 -0
  804. package/external/folly/folly/dynamic-inl.h +17 -0
  805. package/external/folly/folly/dynamic.h +17 -0
  806. package/external/folly/folly/folly_extended_library.bzl +28 -0
  807. package/external/folly/folly/functional/ApplyTuple.h +204 -0
  808. package/external/folly/folly/functional/BUCK +57 -0
  809. package/external/folly/folly/functional/Invoke.h +880 -0
  810. package/external/folly/folly/functional/Partial.h +130 -0
  811. package/external/folly/folly/functional/protocol.h +203 -0
  812. package/external/folly/folly/functional/test/ApplyTupleTest.cpp +549 -0
  813. package/external/folly/folly/functional/test/BUCK +57 -0
  814. package/external/folly/folly/functional/test/InvokeTest.cpp +483 -0
  815. package/external/folly/folly/functional/test/PartialTest.cpp +141 -0
  816. package/external/folly/folly/functional/test/protocol_test.cpp +177 -0
  817. package/external/folly/folly/functional/test/traits_test.cpp +551 -0
  818. package/external/folly/folly/functional/traits.h +675 -0
  819. package/external/folly/folly/hash/BUCK +86 -0
  820. package/external/folly/folly/hash/Checksum.cpp +275 -0
  821. package/external/folly/folly/hash/Checksum.h +94 -0
  822. package/external/folly/folly/hash/FarmHash.h +46 -0
  823. package/external/folly/folly/hash/Hash.h +1045 -0
  824. package/external/folly/folly/hash/MurmurHash.h +86 -0
  825. package/external/folly/folly/hash/SpookyHashV1.cpp +391 -0
  826. package/external/folly/folly/hash/SpookyHashV1.h +307 -0
  827. package/external/folly/folly/hash/SpookyHashV2.cpp +392 -0
  828. package/external/folly/folly/hash/SpookyHashV2.h +339 -0
  829. package/external/folly/folly/hash/detail/BUCK +26 -0
  830. package/external/folly/folly/hash/detail/ChecksumDetail.cpp +296 -0
  831. package/external/folly/folly/hash/detail/ChecksumDetail.h +137 -0
  832. package/external/folly/folly/hash/detail/Crc32CombineDetail.cpp +191 -0
  833. package/external/folly/folly/hash/detail/Crc32cDetail.cpp +303 -0
  834. package/external/folly/folly/hash/test/BUCK +132 -0
  835. package/external/folly/folly/hash/test/ChecksumBenchmark.cpp +91 -0
  836. package/external/folly/folly/hash/test/ChecksumTest.cpp +587 -0
  837. package/external/folly/folly/hash/test/FarmHashTest.cpp +41 -0
  838. package/external/folly/folly/hash/test/HashBenchmark.cpp +238 -0
  839. package/external/folly/folly/hash/test/HashTest.cpp +997 -0
  840. package/external/folly/folly/hash/test/MurmurHashTest.cpp +76 -0
  841. package/external/folly/folly/hash/test/SpookyHashV1Test.cpp +559 -0
  842. package/external/folly/folly/hash/test/SpookyHashV2Test.cpp +549 -0
  843. package/external/folly/folly/hash/test/traits_test.cpp +69 -0
  844. package/external/folly/folly/hash/traits.h +115 -0
  845. package/external/folly/folly/json/BUCK +155 -0
  846. package/external/folly/folly/json/DynamicConverter.h +464 -0
  847. package/external/folly/folly/json/DynamicParser-inl.h +316 -0
  848. package/external/folly/folly/json/DynamicParser.cpp +198 -0
  849. package/external/folly/folly/json/DynamicParser.h +394 -0
  850. package/external/folly/folly/json/JSONSchema.cpp +1030 -0
  851. package/external/folly/folly/json/JSONSchema.h +73 -0
  852. package/external/folly/folly/json/JsonMockUtil.h +73 -0
  853. package/external/folly/folly/json/JsonTestUtil.cpp +167 -0
  854. package/external/folly/folly/json/JsonTestUtil.h +88 -0
  855. package/external/folly/folly/json/bser/BUCK +24 -0
  856. package/external/folly/folly/json/bser/Bser.h +107 -0
  857. package/external/folly/folly/json/bser/Dump.cpp +253 -0
  858. package/external/folly/folly/json/bser/Load.cpp +246 -0
  859. package/external/folly/folly/json/bser/test/BUCK +14 -0
  860. package/external/folly/folly/json/bser/test/BserTest.cpp +149 -0
  861. package/external/folly/folly/json/dynamic.cpp +552 -0
  862. package/external/folly/folly/json/dynamic.h +1346 -0
  863. package/external/folly/folly/json/json.h +238 -0
  864. package/external/folly/folly/json/json_patch.cpp +325 -0
  865. package/external/folly/folly/json/json_patch.h +126 -0
  866. package/external/folly/folly/json/json_pointer.cpp +114 -0
  867. package/external/folly/folly/json/json_pointer.h +87 -0
  868. package/external/folly/folly/json/test/BUCK +147 -0
  869. package/external/folly/folly/json/test/DynamicBenchmark.cpp +146 -0
  870. package/external/folly/folly/json/test/DynamicConverterTest.cpp +518 -0
  871. package/external/folly/folly/json/test/DynamicOtherTest.cpp +344 -0
  872. package/external/folly/folly/json/test/DynamicParserTest.cpp +443 -0
  873. package/external/folly/folly/json/test/DynamicTest.cpp +1647 -0
  874. package/external/folly/folly/json/test/JSONSchemaTest.cpp +450 -0
  875. package/external/folly/folly/json/test/JsonBenchmark.cpp +264 -0
  876. package/external/folly/folly/json/test/JsonOtherTest.cpp +51 -0
  877. package/external/folly/folly/json/test/JsonTest.cpp +1153 -0
  878. package/external/folly/folly/json/test/JsonTestUtilTest.cpp +97 -0
  879. package/external/folly/folly/json/test/json_patch_test.cpp +361 -0
  880. package/external/folly/folly/json/test/json_pointer_test.cpp +58 -0
  881. package/external/folly/folly/json/tool/BUCK +13 -0
  882. package/external/folly/folly/json/tool/JSONSchemaTester.cpp +58 -0
  883. package/external/folly/folly/json.h +17 -0
  884. package/external/folly/folly/json_patch.h +17 -0
  885. package/external/folly/folly/json_pointer.h +17 -0
  886. package/external/folly/folly/lang/Access.h +29 -0
  887. package/external/folly/folly/lang/Align.h +240 -0
  888. package/external/folly/folly/lang/Aligned.h +92 -0
  889. package/external/folly/folly/lang/Assume.h +82 -0
  890. package/external/folly/folly/lang/BUCK +287 -0
  891. package/external/folly/folly/lang/Badge.h +108 -0
  892. package/external/folly/folly/lang/Bits.h +570 -0
  893. package/external/folly/folly/lang/BitsClass.h +312 -0
  894. package/external/folly/folly/lang/Builtin.h +74 -0
  895. package/external/folly/folly/lang/CArray.h +34 -0
  896. package/external/folly/folly/lang/CString.cpp +86 -0
  897. package/external/folly/folly/lang/CString.h +55 -0
  898. package/external/folly/folly/lang/Cast.h +51 -0
  899. package/external/folly/folly/lang/CheckedMath.h +253 -0
  900. package/external/folly/folly/lang/CustomizationPoint.h +58 -0
  901. package/external/folly/folly/lang/Exception.cpp +822 -0
  902. package/external/folly/folly/lang/Exception.h +716 -0
  903. package/external/folly/folly/lang/Extern.h +55 -0
  904. package/external/folly/folly/lang/Hint-inl.h +144 -0
  905. package/external/folly/folly/lang/Hint.h +238 -0
  906. package/external/folly/folly/lang/Keep.h +98 -0
  907. package/external/folly/folly/lang/New.h +124 -0
  908. package/external/folly/folly/lang/Ordering.h +140 -0
  909. package/external/folly/folly/lang/Pretty.h +159 -0
  910. package/external/folly/folly/lang/PropagateConst.h +413 -0
  911. package/external/folly/folly/lang/RValueReferenceWrapper.h +152 -0
  912. package/external/folly/folly/lang/SafeAssert.cpp +589 -0
  913. package/external/folly/folly/lang/StaticConst.h +33 -0
  914. package/external/folly/folly/lang/Thunk.h +100 -0
  915. package/external/folly/folly/lang/TypeInfo.h +58 -0
  916. package/external/folly/folly/lang/UncaughtExceptions.cpp +17 -0
  917. package/external/folly/folly/lang/UncaughtExceptions.h +19 -0
  918. package/external/folly/folly/lang/test/AlignTest.cpp +87 -0
  919. package/external/folly/folly/lang/test/AlignedTest.cpp +130 -0
  920. package/external/folly/folly/lang/test/BUCK +258 -0
  921. package/external/folly/folly/lang/test/BadgeTest.cpp +89 -0
  922. package/external/folly/folly/lang/test/BitsBenchmark.cpp +164 -0
  923. package/external/folly/folly/lang/test/BitsClassBenchmark.cpp +122 -0
  924. package/external/folly/folly/lang/test/BitsClassTest.cpp +379 -0
  925. package/external/folly/folly/lang/test/BitsTest.cpp +577 -0
  926. package/external/folly/folly/lang/test/CStringTest.cpp +60 -0
  927. package/external/folly/folly/lang/test/CastTest.cpp +47 -0
  928. package/external/folly/folly/lang/test/CheckedMathTest.cpp +394 -0
  929. package/external/folly/folly/lang/test/ExceptionBench.cpp +427 -0
  930. package/external/folly/folly/lang/test/ExceptionTest.cpp +413 -0
  931. package/external/folly/folly/lang/test/ExternTest.cpp +39 -0
  932. package/external/folly/folly/lang/test/HintTest.cpp +100 -0
  933. package/external/folly/folly/lang/test/NewTest.cpp +38 -0
  934. package/external/folly/folly/lang/test/OrderingTest.cpp +105 -0
  935. package/external/folly/folly/lang/test/PrettyTest.cpp +44 -0
  936. package/external/folly/folly/lang/test/PropagateConstTest.cpp +356 -0
  937. package/external/folly/folly/lang/test/RValueReferenceWrapperTest.cpp +85 -0
  938. package/external/folly/folly/lang/test/SafeAssertTest.cpp +75 -0
  939. package/external/folly/folly/lang/test/ThunkTest.cpp +105 -0
  940. package/external/folly/folly/lang/test/ToAsciiBench.cpp +466 -0
  941. package/external/folly/folly/lang/test/ToAsciiTest.cpp +266 -0
  942. package/external/folly/folly/lang/test/TypeInfoTest.cpp +56 -0
  943. package/external/folly/folly/memcpy.S +292 -0
  944. package/external/folly/folly/memcpy_select_aarch64.cpp +145 -0
  945. package/external/folly/folly/memory/Arena-inl.h +83 -0
  946. package/external/folly/folly/memory/Arena.h +325 -0
  947. package/external/folly/folly/memory/BUCK +191 -0
  948. package/external/folly/folly/memory/JemallocHugePageAllocator.cpp +449 -0
  949. package/external/folly/folly/memory/JemallocHugePageAllocator.h +105 -0
  950. package/external/folly/folly/memory/JemallocHugePageAllocatorTest.cpp +341 -0
  951. package/external/folly/folly/memory/JemallocNodumpAllocator.cpp +176 -0
  952. package/external/folly/folly/memory/JemallocNodumpAllocator.h +119 -0
  953. package/external/folly/folly/memory/JemallocNodumpAllocatorTest.cpp +61 -0
  954. package/external/folly/folly/memory/MallctlHelper.cpp +37 -0
  955. package/external/folly/folly/memory/MallctlHelper.h +167 -0
  956. package/external/folly/folly/memory/Malloc.h +551 -0
  957. package/external/folly/folly/memory/MemoryResource.h +57 -0
  958. package/external/folly/folly/memory/ReentrantAllocator.cpp +162 -0
  959. package/external/folly/folly/memory/ReentrantAllocator.h +261 -0
  960. package/external/folly/folly/memory/SanitizeAddress.cpp +75 -0
  961. package/external/folly/folly/memory/SanitizeAddress.h +117 -0
  962. package/external/folly/folly/memory/SanitizeLeak.cpp +119 -0
  963. package/external/folly/folly/memory/SanitizeLeak.h +108 -0
  964. package/external/folly/folly/memory/ThreadCachedArena.cpp +53 -0
  965. package/external/folly/folly/memory/ThreadCachedArena.h +90 -0
  966. package/external/folly/folly/memory/UninitializedMemoryHacks.h +426 -0
  967. package/external/folly/folly/memory/detail/BUCK +10 -0
  968. package/external/folly/folly/memory/detail/MallocImpl.cpp +52 -0
  969. package/external/folly/folly/memory/detail/MallocImpl.h +97 -0
  970. package/external/folly/folly/memory/not_null-inl.h +522 -0
  971. package/external/folly/folly/memory/not_null.h +449 -0
  972. package/external/folly/folly/memory/test/ArenaTest.cpp +354 -0
  973. package/external/folly/folly/memory/test/BUCK +146 -0
  974. package/external/folly/folly/memory/test/MallctlHelperTest.cpp +169 -0
  975. package/external/folly/folly/memory/test/MallocBenchmark.cpp +91 -0
  976. package/external/folly/folly/memory/test/MallocTest.cpp +78 -0
  977. package/external/folly/folly/memory/test/MemoryResourceTest.cpp +31 -0
  978. package/external/folly/folly/memory/test/ReentrantAllocatorTest.cpp +144 -0
  979. package/external/folly/folly/memory/test/SanitizeAddressTest.cpp +67 -0
  980. package/external/folly/folly/memory/test/SanitizeLeakTest.cpp +139 -0
  981. package/external/folly/folly/memory/test/ThreadCachedArenaTest.cpp +276 -0
  982. package/external/folly/folly/memory/test/UninitializedMemoryHacksODR.cpp +21 -0
  983. package/external/folly/folly/memory/test/UninitializedMemoryHacksTest.cpp +327 -0
  984. package/external/folly/folly/memory/test/not_null_test.cpp +608 -0
  985. package/external/folly/folly/memset.S +245 -0
  986. package/external/folly/folly/memset_select_aarch64.cpp +72 -0
  987. package/external/folly/folly/portability/Asm.h +50 -0
  988. package/external/folly/folly/portability/Atomic.h +31 -0
  989. package/external/folly/folly/portability/BUCK +456 -0
  990. package/external/folly/folly/portability/Builtins.cpp +31 -0
  991. package/external/folly/folly/portability/Builtins.h +161 -0
  992. package/external/folly/folly/portability/Config.h +43 -0
  993. package/external/folly/folly/portability/Constexpr.h +145 -0
  994. package/external/folly/folly/portability/Dirent.cpp +140 -0
  995. package/external/folly/folly/portability/Dirent.h +41 -0
  996. package/external/folly/folly/portability/Event.h +44 -0
  997. package/external/folly/folly/portability/Fcntl.cpp +120 -0
  998. package/external/folly/folly/portability/Fcntl.h +67 -0
  999. package/external/folly/folly/portability/Filesystem.cpp +67 -0
  1000. package/external/folly/folly/portability/Filesystem.h +114 -0
  1001. package/external/folly/folly/portability/FmtCompile.h +40 -0
  1002. package/external/folly/folly/portability/GFlags.h +139 -0
  1003. package/external/folly/folly/portability/GMock.h +35 -0
  1004. package/external/folly/folly/portability/GTest.h +35 -0
  1005. package/external/folly/folly/portability/IOVec.h +34 -0
  1006. package/external/folly/folly/portability/Libgen.cpp +59 -0
  1007. package/external/folly/folly/portability/Libgen.h +29 -0
  1008. package/external/folly/folly/portability/Libunwind.h +21 -0
  1009. package/external/folly/folly/portability/Malloc.cpp +31 -0
  1010. package/external/folly/folly/portability/Malloc.h +53 -0
  1011. package/external/folly/folly/portability/Math.h +90 -0
  1012. package/external/folly/folly/portability/Memory.h +26 -0
  1013. package/external/folly/folly/portability/OpenSSL.cpp +17 -0
  1014. package/external/folly/folly/portability/OpenSSL.h +102 -0
  1015. package/external/folly/folly/portability/PThread.cpp +697 -0
  1016. package/external/folly/folly/portability/PThread.h +148 -0
  1017. package/external/folly/folly/portability/README.md +21 -0
  1018. package/external/folly/folly/portability/Sched.cpp +41 -0
  1019. package/external/folly/folly/portability/Sched.h +45 -0
  1020. package/external/folly/folly/portability/Sockets.cpp +245 -0
  1021. package/external/folly/folly/portability/Sockets.h +155 -0
  1022. package/external/folly/folly/portability/SourceLocation.h +49 -0
  1023. package/external/folly/folly/portability/Stdio.cpp +77 -0
  1024. package/external/folly/folly/portability/Stdio.h +32 -0
  1025. package/external/folly/folly/portability/Stdlib.cpp +172 -0
  1026. package/external/folly/folly/portability/Stdlib.h +64 -0
  1027. package/external/folly/folly/portability/String.cpp +53 -0
  1028. package/external/folly/folly/portability/String.h +39 -0
  1029. package/external/folly/folly/portability/SysFile.cpp +46 -0
  1030. package/external/folly/folly/portability/SysFile.h +27 -0
  1031. package/external/folly/folly/portability/SysMembarrier.cpp +104 -0
  1032. package/external/folly/folly/portability/SysMembarrier.h +26 -0
  1033. package/external/folly/folly/portability/SysMman.cpp +242 -0
  1034. package/external/folly/folly/portability/SysMman.h +68 -0
  1035. package/external/folly/folly/portability/SysResource.cpp +108 -0
  1036. package/external/folly/folly/portability/SysResource.h +71 -0
  1037. package/external/folly/folly/portability/SysStat.cpp +66 -0
  1038. package/external/folly/folly/portability/SysStat.h +52 -0
  1039. package/external/folly/folly/portability/SysSyscall.h +73 -0
  1040. package/external/folly/folly/portability/SysTime.cpp +62 -0
  1041. package/external/folly/folly/portability/SysTime.h +50 -0
  1042. package/external/folly/folly/portability/SysTypes.h +44 -0
  1043. package/external/folly/folly/portability/SysUio.cpp +179 -0
  1044. package/external/folly/folly/portability/SysUio.h +51 -0
  1045. package/external/folly/folly/portability/Syslog.h +39 -0
  1046. package/external/folly/folly/portability/Time.cpp +357 -0
  1047. package/external/folly/folly/portability/Time.h +74 -0
  1048. package/external/folly/folly/portability/Unistd.h +111 -0
  1049. package/external/folly/folly/portability/Windows.h +108 -0
  1050. package/external/folly/folly/portability/openat2.c +30 -0
  1051. package/external/folly/folly/portability/openat2.h +39 -0
  1052. package/external/folly/folly/portability/test/BUCK +59 -0
  1053. package/external/folly/folly/portability/test/ConstexprTest.cpp +102 -0
  1054. package/external/folly/folly/portability/test/FilesystemTest.cpp +35 -0
  1055. package/external/folly/folly/portability/test/LibgenTest.cpp +35 -0
  1056. package/external/folly/folly/portability/test/OpenSSLPortabilityTest.cpp +108 -0
  1057. package/external/folly/folly/portability/test/PThreadTest.cpp +80 -0
  1058. package/external/folly/folly/portability/test/TimeTest.cpp +90 -0
  1059. package/external/folly/folly/small_vector.h +17 -0
  1060. package/external/folly/folly/somerge_defs.bzl +399 -0
  1061. package/external/folly/folly/sorted_vector_types.h +17 -0
  1062. package/external/folly/folly/stop_watch.h +317 -0
  1063. package/external/folly/folly/synchronization/AsymmetricThreadFence.cpp +91 -0
  1064. package/external/folly/folly/synchronization/AsymmetricThreadFence.h +60 -0
  1065. package/external/folly/folly/synchronization/AtomicNotification-inl.h +146 -0
  1066. package/external/folly/folly/synchronization/AtomicNotification.cpp +34 -0
  1067. package/external/folly/folly/synchronization/AtomicNotification.h +117 -0
  1068. package/external/folly/folly/synchronization/AtomicRef.h +181 -0
  1069. package/external/folly/folly/synchronization/AtomicStruct.h +150 -0
  1070. package/external/folly/folly/synchronization/AtomicUtil-inl.h +482 -0
  1071. package/external/folly/folly/synchronization/AtomicUtil.h +179 -0
  1072. package/external/folly/folly/synchronization/BUCK +418 -0
  1073. package/external/folly/folly/synchronization/Baton.h +419 -0
  1074. package/external/folly/folly/synchronization/CallOnce.h +263 -0
  1075. package/external/folly/folly/synchronization/DelayedInit.h +179 -0
  1076. package/external/folly/folly/synchronization/DistributedMutex-inl.h +1744 -0
  1077. package/external/folly/folly/synchronization/DistributedMutex.cpp +27 -0
  1078. package/external/folly/folly/synchronization/DistributedMutex.h +342 -0
  1079. package/external/folly/folly/synchronization/EventCount.h +200 -0
  1080. package/external/folly/folly/synchronization/FlatCombining.h +629 -0
  1081. package/external/folly/folly/synchronization/Hazptr-fwd.h +217 -0
  1082. package/external/folly/folly/synchronization/Hazptr.cpp +36 -0
  1083. package/external/folly/folly/synchronization/Hazptr.h +209 -0
  1084. package/external/folly/folly/synchronization/HazptrDomain.cpp +68 -0
  1085. package/external/folly/folly/synchronization/HazptrDomain.h +832 -0
  1086. package/external/folly/folly/synchronization/HazptrHolder.h +431 -0
  1087. package/external/folly/folly/synchronization/HazptrObj.h +533 -0
  1088. package/external/folly/folly/synchronization/HazptrObjLinked.h +315 -0
  1089. package/external/folly/folly/synchronization/HazptrRec.h +68 -0
  1090. package/external/folly/folly/synchronization/HazptrThrLocal.h +180 -0
  1091. package/external/folly/folly/synchronization/HazptrThreadPoolExecutor.cpp +46 -0
  1092. package/external/folly/folly/synchronization/HazptrThreadPoolExecutor.h +25 -0
  1093. package/external/folly/folly/synchronization/Latch.h +160 -0
  1094. package/external/folly/folly/synchronization/LifoSem.h +767 -0
  1095. package/external/folly/folly/synchronization/Lock.h +887 -0
  1096. package/external/folly/folly/synchronization/MicroSpinLock.h +154 -0
  1097. package/external/folly/folly/synchronization/NativeSemaphore.h +187 -0
  1098. package/external/folly/folly/synchronization/ParkingLot.cpp +37 -0
  1099. package/external/folly/folly/synchronization/ParkingLot.h +330 -0
  1100. package/external/folly/folly/synchronization/PicoSpinLock.h +167 -0
  1101. package/external/folly/folly/synchronization/RWSpinLock.h +549 -0
  1102. package/external/folly/folly/synchronization/Rcu.cpp +26 -0
  1103. package/external/folly/folly/synchronization/Rcu.h +553 -0
  1104. package/external/folly/folly/synchronization/RelaxedAtomic.h +336 -0
  1105. package/external/folly/folly/synchronization/SanitizeThread.cpp +141 -0
  1106. package/external/folly/folly/synchronization/SanitizeThread.h +166 -0
  1107. package/external/folly/folly/synchronization/SaturatingSemaphore.h +324 -0
  1108. package/external/folly/folly/synchronization/SmallLocks.h +36 -0
  1109. package/external/folly/folly/synchronization/ThrottledLifoSem.h +362 -0
  1110. package/external/folly/folly/synchronization/WaitOptions.cpp +25 -0
  1111. package/external/folly/folly/synchronization/WaitOptions.h +75 -0
  1112. package/external/folly/folly/synchronization/detail/AtomicUtils.h +59 -0
  1113. package/external/folly/folly/synchronization/detail/BUCK +104 -0
  1114. package/external/folly/folly/synchronization/detail/Hardware.cpp +192 -0
  1115. package/external/folly/folly/synchronization/detail/Hardware.h +75 -0
  1116. package/external/folly/folly/synchronization/detail/HazptrUtils.h +339 -0
  1117. package/external/folly/folly/synchronization/detail/InlineFunctionRef.h +229 -0
  1118. package/external/folly/folly/synchronization/detail/Sleeper.cpp +27 -0
  1119. package/external/folly/folly/synchronization/detail/Sleeper.h +62 -0
  1120. package/external/folly/folly/synchronization/detail/Spin.h +96 -0
  1121. package/external/folly/folly/synchronization/detail/ThreadCachedLists.h +174 -0
  1122. package/external/folly/folly/synchronization/detail/ThreadCachedReaders.h +189 -0
  1123. package/external/folly/folly/synchronization/detail/ThreadCachedTag.h +26 -0
  1124. package/external/folly/folly/synchronization/detail/test/BUCK +28 -0
  1125. package/external/folly/folly/synchronization/detail/test/HardwareTest.cpp +74 -0
  1126. package/external/folly/folly/synchronization/detail/test/InlineFunctionRefTest.cpp +286 -0
  1127. package/external/folly/folly/synchronization/example/BUCK +27 -0
  1128. package/external/folly/folly/synchronization/example/HazptrLockFreeLIFO.h +88 -0
  1129. package/external/folly/folly/synchronization/example/HazptrSWMRSet.h +133 -0
  1130. package/external/folly/folly/synchronization/example/HazptrWideCAS.h +62 -0
  1131. package/external/folly/folly/synchronization/test/AtomicNotificationTest.cpp +236 -0
  1132. package/external/folly/folly/synchronization/test/AtomicRefTest.cpp +170 -0
  1133. package/external/folly/folly/synchronization/test/AtomicStructTest.cpp +65 -0
  1134. package/external/folly/folly/synchronization/test/AtomicUtilBench.cpp +457 -0
  1135. package/external/folly/folly/synchronization/test/AtomicUtilTest.cpp +650 -0
  1136. package/external/folly/folly/synchronization/test/BUCK +495 -0
  1137. package/external/folly/folly/synchronization/test/Barrier.h +52 -0
  1138. package/external/folly/folly/synchronization/test/BarrierTest.cpp +56 -0
  1139. package/external/folly/folly/synchronization/test/BatonBenchmark.cpp +77 -0
  1140. package/external/folly/folly/synchronization/test/BatonTest.cpp +164 -0
  1141. package/external/folly/folly/synchronization/test/BatonTestHelpers.h +118 -0
  1142. package/external/folly/folly/synchronization/test/CallOnceBenchmark.cpp +72 -0
  1143. package/external/folly/folly/synchronization/test/CallOnceTest.cpp +153 -0
  1144. package/external/folly/folly/synchronization/test/DelayedInitTest.cpp +281 -0
  1145. package/external/folly/folly/synchronization/test/DistributedMutexTest.cpp +2074 -0
  1146. package/external/folly/folly/synchronization/test/EventCountTest.cpp +124 -0
  1147. package/external/folly/folly/synchronization/test/FlatCombiningBenchmark.cpp +1789 -0
  1148. package/external/folly/folly/synchronization/test/FlatCombiningExamples.h +222 -0
  1149. package/external/folly/folly/synchronization/test/FlatCombiningTest.cpp +121 -0
  1150. package/external/folly/folly/synchronization/test/FlatCombiningTestHelpers.h +227 -0
  1151. package/external/folly/folly/synchronization/test/HazptrTest.cpp +1689 -0
  1152. package/external/folly/folly/synchronization/test/LatchTest.cpp +224 -0
  1153. package/external/folly/folly/synchronization/test/LifoSemBench.cpp +185 -0
  1154. package/external/folly/folly/synchronization/test/LifoSemTests.cpp +353 -0
  1155. package/external/folly/folly/synchronization/test/LockTest.cpp +1239 -0
  1156. package/external/folly/folly/synchronization/test/NativeSemaphoreTest.cpp +37 -0
  1157. package/external/folly/folly/synchronization/test/ParkingLotBenchmark.cpp +239 -0
  1158. package/external/folly/folly/synchronization/test/ParkingLotTest.cpp +170 -0
  1159. package/external/folly/folly/synchronization/test/RWSpinLockTest.cpp +235 -0
  1160. package/external/folly/folly/synchronization/test/RcuBench.cpp +66 -0
  1161. package/external/folly/folly/synchronization/test/RcuTest.cpp +330 -0
  1162. package/external/folly/folly/synchronization/test/RelaxedAtomicTest.cpp +389 -0
  1163. package/external/folly/folly/synchronization/test/SaturatingSemaphoreTest.cpp +166 -0
  1164. package/external/folly/folly/synchronization/test/Semaphore.h +242 -0
  1165. package/external/folly/folly/synchronization/test/SemaphoreTest.cpp +271 -0
  1166. package/external/folly/folly/synchronization/test/SmallLocksBenchmark.cpp +1296 -0
  1167. package/external/folly/folly/synchronization/test/SmallLocksTest.cpp +510 -0
  1168. package/external/folly/folly/synchronization/test/ThreadCachedEpochBench.h +67 -0
  1169. package/external/folly/folly/synchronization/test/ThreadCachedReadersBench.cpp +42 -0
  1170. package/external/folly/folly/synchronization/test/ThreadCachedReadersTest.cpp +52 -0
  1171. package/external/folly/folly/synchronization/test/ThrottledLifoSemTest.cpp +243 -0
  1172. package/external/folly/folly/system/AtFork.cpp +205 -0
  1173. package/external/folly/folly/system/AtFork.h +116 -0
  1174. package/external/folly/folly/system/AuxVector.h +198 -0
  1175. package/external/folly/folly/system/BUCK +144 -0
  1176. package/external/folly/folly/system/EnvUtil.cpp +93 -0
  1177. package/external/folly/folly/system/EnvUtil.h +113 -0
  1178. package/external/folly/folly/system/HardwareConcurrency.cpp +39 -0
  1179. package/external/folly/folly/system/HardwareConcurrency.h +23 -0
  1180. package/external/folly/folly/system/MemoryMapping.cpp +477 -0
  1181. package/external/folly/folly/system/MemoryMapping.h +287 -0
  1182. package/external/folly/folly/system/Pid.cpp +87 -0
  1183. package/external/folly/folly/system/Pid.h +34 -0
  1184. package/external/folly/folly/system/Shell.cpp +33 -0
  1185. package/external/folly/folly/system/Shell.h +93 -0
  1186. package/external/folly/folly/system/ThreadId.cpp +89 -0
  1187. package/external/folly/folly/system/ThreadId.h +62 -0
  1188. package/external/folly/folly/system/ThreadName.cpp +330 -0
  1189. package/external/folly/folly/system/ThreadName.h +72 -0
  1190. package/external/folly/folly/system/test/AtForkTest.cpp +309 -0
  1191. package/external/folly/folly/system/test/AuxVectorTest.cpp +55 -0
  1192. package/external/folly/folly/system/test/BUCK +120 -0
  1193. package/external/folly/folly/system/test/EnvUtilSubprocess.cpp +26 -0
  1194. package/external/folly/folly/system/test/EnvUtilTest.cpp +197 -0
  1195. package/external/folly/folly/system/test/MemoryMappingTest.cpp +179 -0
  1196. package/external/folly/folly/system/test/PidTest.cpp +46 -0
  1197. package/external/folly/folly/system/test/ShellTest.cpp +66 -0
  1198. package/external/folly/folly/system/test/ThreadIdTest.cpp +114 -0
  1199. package/external/folly/folly/system/test/ThreadNameTest.cpp +85 -0
  1200. package/external/folly/folly.vcxitems +164 -0
  1201. package/external/folly/static/logo.svg +1 -0
  1202. package/external/folly/sync-config.json +8 -0
  1203. package/index.js +9 -0
  1204. package/index.windows.js +9 -0
  1205. package/jest/RefreshControlMock.js +2 -2
  1206. package/jest/assetFileTransformer.js +8 -3
  1207. package/jest/mockComponent.js +3 -4
  1208. package/jest/mockNativeComponent.js +1 -1
  1209. package/jest/mocks/ActivityIndicator.js +2 -2
  1210. package/jest/mocks/Image.js +2 -2
  1211. package/jest/mocks/Modal.js +2 -2
  1212. package/jest/mocks/RefreshControl.js +3 -3
  1213. package/jest/mocks/RendererProxy.js +2 -2
  1214. package/jest/mocks/ScrollView.js +5 -5
  1215. package/jest/mocks/Text.js +2 -2
  1216. package/jest/mocks/TextInput.js +2 -2
  1217. package/jest/mocks/View.js +2 -2
  1218. package/jest/mocks/ViewNativeComponent.js +1 -1
  1219. package/jest/mocks/requireNativeComponent.js +1 -1
  1220. package/jest/mocks/useColorScheme.js +1 -1
  1221. package/jest/setup.js +68 -31
  1222. package/package.json +28 -23
  1223. package/src/private/animated/NativeAnimatedHelper.js +2 -2
  1224. package/src/private/animated/createAnimatedPropsMemoHook.js +19 -19
  1225. package/src/private/components/virtualview/VirtualView.js +14 -21
  1226. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +11 -10
  1227. package/src/private/components/virtualview/VirtualViewNativeComponent.js +4 -4
  1228. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +2 -2
  1229. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +3 -3
  1230. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +4 -4
  1231. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  1232. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +39 -17
  1233. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +15 -3
  1234. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +2 -2
  1235. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -8
  1236. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
  1237. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
  1238. package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +102 -0
  1239. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +12 -25
  1240. package/src/private/devsupport/rndevtools/GlobalStateObserver.js +56 -0
  1241. package/src/private/devsupport/rndevtools/TracingStateObserver.js +28 -0
  1242. package/src/private/featureflags/ReactNativeFeatureFlags.js +71 -79
  1243. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -2
  1244. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +14 -12
  1245. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
  1246. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +1 -1
  1247. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +3 -3
  1248. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +1 -1
  1249. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  1250. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
  1251. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +3 -3
  1252. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +1 -1
  1253. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +1 -1
  1254. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +1 -1
  1255. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +7 -3
  1256. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +1 -1
  1257. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
  1258. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +1 -1
  1259. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
  1260. package/src/private/styles/composeStyles.js +1 -1
  1261. package/src/private/utilities/toError.js +27 -0
  1262. package/src/private/utilities/toExtendedError.js +30 -0
  1263. package/src/private/webapis/dom/events/Event.js +1 -1
  1264. package/src/private/webapis/dom/events/EventHandlerAttributes.js +2 -2
  1265. package/src/private/webapis/dom/events/EventTarget.js +3 -3
  1266. package/src/private/webapis/dom/events/internals/EventInternals.js +2 -2
  1267. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
  1268. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +2 -2
  1269. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +14 -14
  1270. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +2 -2
  1271. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  1272. package/src/private/webapis/geometry/DOMRectList.js +2 -2
  1273. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +8 -8
  1274. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +6 -6
  1275. package/src/private/webapis/mutationobserver/MutationObserver.js +2 -2
  1276. package/src/private/webapis/mutationobserver/MutationRecord.js +2 -2
  1277. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
  1278. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +3 -3
  1279. package/src/private/webapis/performance/LongTasks.js +3 -3
  1280. package/src/private/webapis/performance/Performance.js +4 -4
  1281. package/src/private/webapis/performance/PerformanceEntry.js +1 -1
  1282. package/src/private/webapis/performance/PerformanceObserver.js +2 -2
  1283. package/src/private/webapis/performance/specs/NativePerformance.js +8 -8
  1284. package/src/private/webapis/structuredClone/structuredClone.js +2 -2
  1285. package/src/types/globals.d.ts +4 -4
  1286. package/template/cpp-lib/proj/MyLib.sln +0 -33
  1287. package/template/cpp-lib/proj/MyLib.vcxproj +1 -1
  1288. package/template/cs-lib/proj/MyLib.sln +0 -33
  1289. package/template/metro.config.js +12 -2
  1290. package/templates/cpp-app/metro.config.js +12 -2
  1291. package/templates/cpp-app/windows/MyApp/MyApp.cpp +9 -6
  1292. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +1 -1
  1293. package/templates/cpp-app/windows/MyApp.sln +0 -33
  1294. package/templates/cpp-lib/example/metro.config.js +30 -4
  1295. package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +1 -1
  1296. package/templates/cpp-lib/windows/MyLib.sln +0 -33
  1297. package/types/index.d.ts +2 -0
  1298. package/Folly/Folly.vcxproj +0 -378
  1299. package/Folly/Folly.vcxproj.filters +0 -558
  1300. package/Libraries/Components/View/ReactNativeViewAttributes.js +0 -60
  1301. package/Libraries/Components/View/ReactNativeViewAttributes.windows.js +0 -64
  1302. package/Libraries/Image/TextInlineImageNativeComponent.js +0 -49
  1303. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -75
  1304. package/Microsoft.ReactNative/Fabric/Composition/CompositionUIService_emptyimpl.cpp +0 -27
  1305. package/Microsoft.ReactNative/Fabric/Composition/Theme_emptyimpl.cpp +0 -81
  1306. package/Microsoft.ReactNative/Modules/CreateModules.cpp +0 -24
  1307. package/Microsoft.ReactNative/ReactSupport.cpp +0 -221
  1308. package/Microsoft.ReactNative/ReactSupport.h +0 -13
  1309. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.cpp +0 -107
  1310. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -62
  1311. package/Microsoft.ReactNative/Utils/UwpScriptStore.cpp +0 -56
  1312. package/Microsoft.ReactNative/Utils/UwpScriptStore.h +0 -23
  1313. package/Microsoft.ReactNative/XamlUIService.cpp +0 -68
  1314. package/Microsoft.ReactNative/XamlUIService.h +0 -37
  1315. package/Microsoft.ReactNative/XamlUIService.idl +0 -53
  1316. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +0 -259
  1317. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/Instance.cpp +0 -381
  1318. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/JSIndexedRAMBundle.cpp +0 -145
  1319. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/MethodCall.cpp +0 -100
  1320. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ModuleRegistry.cpp +0 -256
  1321. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +0 -363
  1322. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/RAMBundleRegistry.cpp +0 -93
  1323. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/ReactMarker.cpp +0 -148
  1324. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +0 -190
  1325. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsiexecutor/jsireact/JSINativeModules.cpp +0 -123
  1326. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.cpp +0 -27
  1327. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/webperformance/NativePerformance.cpp +0 -414
  1328. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +0 -91
  1329. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventDispatcher.cpp +0 -80
  1330. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/EventQueueProcessor.cpp +0 -138
  1331. package/fmt/fmt.vcxproj +0 -153
  1332. package/fmt/fmt.vcxproj.filters +0 -59
  1333. package/fmt/pch.cpp +0 -4
  1334. package/fmt/pch.h +0 -2
  1335. /package/{fmt → external/fmt}/cgmanifest.json +0 -0
  1336. /package/{Folly → external/folly}/Folly.natvis +0 -0
  1337. /package/{Folly → external/folly}/cgmanifest.json +0 -0
  1338. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/ConstexprMath.h +0 -0
  1339. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/Conv.cpp +0 -0
  1340. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/chrono/Hardware.h +0 -0
  1341. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/concurrency/CacheLocality.cpp +0 -0
  1342. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/json/dynamic-inl.h +0 -0
  1343. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/json/json.cpp +0 -0
  1344. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/lang/SafeAssert.h +0 -0
  1345. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/lang/ToAscii.cpp +0 -0
  1346. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/lang/ToAscii.h +0 -0
  1347. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/portability/Unistd.cpp +0 -0
@@ -0,0 +1,932 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ #pragma once
18
+
19
+ #include <cstdint>
20
+ #include <limits>
21
+ #include <type_traits>
22
+ #include <utility>
23
+
24
+ #include <folly/CPortability.h>
25
+ #include <folly/Portability.h>
26
+ #include <folly/Traits.h>
27
+
28
+ namespace folly {
29
+
30
+ /*
31
+ * FOLLY_DECLVAL(T)
32
+ *
33
+ * This macro works like std::declval<T>() but does the same thing in a way
34
+ * that does not require instantiating a function template.
35
+ *
36
+ * Use this macro instead of std::declval<T>() in places that are widely
37
+ * instantiated to reduce compile-time overhead of instantiating function
38
+ * templates.
39
+ *
40
+ * Note that, like std::declval<T>(), this macro can only be used in
41
+ * unevaluated contexts.
42
+ *
43
+ * There are some small differences between this macro and std::declval<T>().
44
+ * - This macro results in a value of type 'T' instead of 'T&&'.
45
+ * - This macro requires the type T to be a complete type at the
46
+ * point of use.
47
+ * If this is a problem then use FOLLY_DECLVAL(T&&) instead, or if T might
48
+ * be 'void', then use FOLLY_DECLVAL(std::add_rvalue_reference_t<T>).
49
+ */
50
+ #define FOLLY_DECLVAL(...) static_cast<__VA_ARGS__ (*)() noexcept>(nullptr)()
51
+
52
+ namespace detail {
53
+ template <typename T>
54
+ T decay_1_(T const volatile&&);
55
+ template <typename T>
56
+ T decay_1_(T const&);
57
+ template <typename T>
58
+ T* decay_1_(T*);
59
+
60
+ template <typename T>
61
+ auto decay_0_(int) -> decltype(detail::decay_1_(FOLLY_DECLVAL(T&&)));
62
+ template <typename T>
63
+ auto decay_0_(short) -> void;
64
+
65
+ template <typename T>
66
+ using decay_t = decltype(detail::decay_0_<T>(0));
67
+ } // namespace detail
68
+
69
+ // decay_t
70
+ //
71
+ // Like std::decay_t but possibly faster to compile.
72
+ //
73
+ // mimic: std::decay_t, C++14
74
+ using detail::decay_t;
75
+
76
+ /**
77
+ * copy
78
+ *
79
+ * Usable when you have a function with two overloads:
80
+ *
81
+ * class MyData;
82
+ * void something(MyData&&);
83
+ * void something(const MyData&);
84
+ *
85
+ * Where the purpose is to make copies and moves explicit without having to
86
+ * spell out the full type names - in this case, for copies, to invoke copy
87
+ * constructors.
88
+ *
89
+ * When the caller wants to pass a copy of an lvalue, the caller may:
90
+ *
91
+ * void foo() {
92
+ * MyData data;
93
+ * something(folly::copy(data)); // explicit copy
94
+ * something(std::move(data)); // explicit move
95
+ * something(data); // const& - neither move nor copy
96
+ * }
97
+ *
98
+ * Note: If passed an rvalue, invokes the move-ctor, not the copy-ctor. This
99
+ * can be used to to force a move, where just using std::move would not:
100
+ *
101
+ * folly::copy(std::move(data)); // force-move, not just a cast to &&
102
+ *
103
+ * Note: The following text appears in the standard:
104
+ *
105
+ * In several places in this Clause the operation //DECAY_COPY(x)// is
106
+ * used. All such uses mean call the function `decay_copy(x)` and use the
107
+ * result, where `decay_copy` is defined as follows:
108
+ *
109
+ * template <class T> decay_t<T> decay_copy(T&& v)
110
+ * { return std::forward<T>(v); }
111
+ *
112
+ * http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4296.pdf
113
+ * 30.2.6 `decay_copy` [thread.decaycopy].
114
+ *
115
+ * We mimic it, with a `noexcept` specifier for good measure.
116
+ */
117
+
118
+ template <typename T>
119
+ constexpr detail::decay_t<T> copy(T&& value) noexcept(
120
+ noexcept(detail::decay_t<T>(static_cast<T&&>(value)))) {
121
+ return static_cast<T&&>(value);
122
+ }
123
+
124
+ // mimic: forward_like, p0847r0
125
+ template <typename Src, typename Dst>
126
+ constexpr like_t<Src, Dst>&& forward_like(Dst&& dst) noexcept {
127
+ return std::forward<like_t<Src, Dst>>(static_cast<Dst&&>(dst));
128
+ }
129
+
130
+ /**
131
+ * Initializer lists are a powerful compile time syntax introduced in C++11
132
+ * but due to their often conflicting syntax they are not used by APIs for
133
+ * construction.
134
+ *
135
+ * Further standard conforming compilers *strongly* favor an
136
+ * std::initializer_list overload for construction if one exists. The
137
+ * following is a simple tag used to disambiguate construction with
138
+ * initializer lists and regular uniform initialization.
139
+ *
140
+ * For example consider the following case
141
+ *
142
+ * class Something {
143
+ * public:
144
+ * explicit Something(int);
145
+ * Something(std::initializer_list<int>);
146
+ *
147
+ * operator int();
148
+ * };
149
+ *
150
+ * ...
151
+ * Something something{1}; // SURPRISE!!
152
+ *
153
+ * The last call to instantiate the Something object will go to the
154
+ * initializer_list overload. Which may be surprising to users.
155
+ *
156
+ * If however this tag was used to disambiguate such construction it would be
157
+ * easy for users to see which construction overload their code was referring
158
+ * to. For example
159
+ *
160
+ * class Something {
161
+ * public:
162
+ * explicit Something(int);
163
+ * Something(folly::initlist_construct_t, std::initializer_list<int>);
164
+ *
165
+ * operator int();
166
+ * };
167
+ *
168
+ * ...
169
+ * Something something_one{1}; // not the initializer_list overload
170
+ * Something something_two{folly::initlist_construct, {1}}; // correct
171
+ */
172
+ struct initlist_construct_t {};
173
+ constexpr initlist_construct_t initlist_construct{};
174
+
175
+ // sorted_unique_t, sorted_unique
176
+ //
177
+ // A generic tag type and value to indicate that some constructor or method
178
+ // accepts a container in which the values are sorted and unique.
179
+ //
180
+ // Example:
181
+ //
182
+ // void takes_numbers(folly::sorted_unique_t, std::vector<int> alist) {
183
+ // assert(std::is_sorted(alist.begin(), alist.end()));
184
+ // assert(std::unique(alist.begin(), alist.end()) == alist.end());
185
+ // for (i : alist) {
186
+ // // some behavior which safe only when alist is sorted and unique
187
+ // }
188
+ // }
189
+ // void takes_numbers(std::vector<int> alist) {
190
+ // std::sort(alist.begin(), alist.end());
191
+ // alist.erase(std::unique(alist.begin(), alist.end()), alist.end());
192
+ // takes_numbers(folly::sorted_unique, alist);
193
+ // }
194
+ //
195
+ // mimic: std::sorted_unique_t, std::sorted_unique, p0429r6
196
+ struct sorted_unique_t {};
197
+ constexpr sorted_unique_t sorted_unique{};
198
+
199
+ // sorted_equivalent_t, sorted_equivalent
200
+ //
201
+ // A generic tag type and value to indicate that some constructor or method
202
+ // accepts a container in which the values are sorted but not necessarily
203
+ // unique.
204
+ //
205
+ // Example:
206
+ //
207
+ // void takes_numbers(folly::sorted_equivalent_t, std::vector<int> alist) {
208
+ // assert(std::is_sorted(alist.begin(), alist.end()));
209
+ // for (i : alist) {
210
+ // // some behavior which safe only when alist is sorted
211
+ // }
212
+ // }
213
+ // void takes_numbers(std::vector<int> alist) {
214
+ // std::sort(alist.begin(), alist.end());
215
+ // takes_numbers(folly::sorted_equivalent, alist);
216
+ // }
217
+ //
218
+ // mimic: std::sorted_equivalent_t, std::sorted_equivalent, p0429r6
219
+ struct sorted_equivalent_t {};
220
+ constexpr sorted_equivalent_t sorted_equivalent{};
221
+
222
+ template <typename T>
223
+ struct transparent : T {
224
+ using is_transparent = void;
225
+ using T::T;
226
+ };
227
+
228
+ /**
229
+ * A simple function object that passes its argument through unchanged.
230
+ *
231
+ * Example:
232
+ *
233
+ * int i = 42;
234
+ * int &j = identity(i);
235
+ * assert(&i == &j);
236
+ *
237
+ * Warning: passing a prvalue through identity turns it into an xvalue,
238
+ * which can effect whether lifetime extension occurs or not. For instance:
239
+ *
240
+ * auto&& x = std::make_unique<int>(42);
241
+ * cout << *x ; // OK, x refers to a valid unique_ptr.
242
+ *
243
+ * auto&& y = identity(std::make_unique<int>(42));
244
+ * cout << *y ; // ERROR: y did not lifetime-extend the unique_ptr. It
245
+ * // is no longer valid
246
+ */
247
+ struct identity_fn {
248
+ template <class T>
249
+ constexpr T&& operator()(T&& x) const noexcept {
250
+ return static_cast<T&&>(x);
251
+ }
252
+ };
253
+ using Identity = identity_fn;
254
+ inline constexpr identity_fn identity{};
255
+
256
+ /// literal_string
257
+ ///
258
+ /// A structural type representing a literal string. A structural type may be
259
+ /// a non-type template argument.
260
+ ///
261
+ /// May at times be useful since language-level literal strings are not allowed
262
+ /// as non-type template arguments.
263
+ ///
264
+ /// This may typically be used with vtag for passing the literal string as a
265
+ /// constant-expression via a non-type template argument.
266
+ ///
267
+ /// Example:
268
+ ///
269
+ /// template <size_t N, literal_string<char, N> Str>
270
+ /// void do_something_with_literal_string(vtag_t<Str>);
271
+ ///
272
+ /// void do_something() {
273
+ /// do_something_with_literal_string(vtag<literal_string{"foobar"}>);
274
+ /// }
275
+ template <typename C, std::size_t N>
276
+ struct literal_string {
277
+ C buffer[N] = {};
278
+
279
+ FOLLY_CONSTEVAL /* implicit */ literal_string(C const (&buf)[N]) noexcept {
280
+ for (std::size_t i = 0; i < N; ++i) {
281
+ buffer[i] = buf[i];
282
+ }
283
+ }
284
+
285
+ constexpr std::size_t size() const noexcept { return N - 1; }
286
+ constexpr C const* data() const noexcept { return buffer; }
287
+ constexpr C const* c_str() const noexcept { return buffer; }
288
+
289
+ template <
290
+ typename String,
291
+ decltype((void(String(FOLLY_DECLVAL(C const*), N - 1)), 0)) = 0>
292
+ constexpr explicit operator String() const //
293
+ noexcept(noexcept(String(FOLLY_DECLVAL(C const*), N - 1))) {
294
+ return String(data(), N - 1);
295
+ }
296
+ };
297
+
298
+ inline namespace literals {
299
+ inline namespace string_literals {
300
+
301
+ #if FOLLY_CPLUSPLUS >= 202002 && !defined(__NVCC__)
302
+ template <literal_string Str>
303
+ FOLLY_CONSTEVAL decltype(Str) operator""_lit() noexcept {
304
+ return Str;
305
+ }
306
+ template <literal_string Str>
307
+ FOLLY_CONSTEVAL vtag_t<Str> operator""_litv() noexcept {
308
+ return vtag<Str>;
309
+ }
310
+ #endif
311
+
312
+ } // namespace string_literals
313
+ } // namespace literals
314
+
315
+ namespace detail {
316
+
317
+ template <typename T>
318
+ struct inheritable_inherit_ : T {
319
+ using T::T;
320
+ template <
321
+ typename... A,
322
+ std::enable_if_t<std::is_constructible<T, A...>::value, int> = 0>
323
+ /* implicit */ FOLLY_ERASE inheritable_inherit_(A&&... a) noexcept(
324
+ noexcept(T(static_cast<A&&>(a)...)))
325
+ : T(static_cast<A&&>(a)...) {}
326
+ };
327
+
328
+ template <typename T>
329
+ struct inheritable_contain_ {
330
+ T v;
331
+ template <
332
+ typename... A,
333
+ std::enable_if_t<std::is_constructible<T, A...>::value, int> = 0>
334
+ /* implicit */ FOLLY_ERASE inheritable_contain_(A&&... a) noexcept(
335
+ noexcept(T(static_cast<A&&>(a)...)))
336
+ : v(static_cast<A&&>(a)...) {}
337
+ FOLLY_ERASE operator T&() & noexcept { return v; }
338
+ FOLLY_ERASE operator T&&() && noexcept { return static_cast<T&&>(v); }
339
+ FOLLY_ERASE operator T const&() const& noexcept { return v; }
340
+ FOLLY_ERASE operator T const&&() const&& noexcept {
341
+ return static_cast<T const&&>(v);
342
+ }
343
+ };
344
+
345
+ template <bool>
346
+ struct inheritable_;
347
+ template <>
348
+ struct inheritable_<false> {
349
+ template <typename T>
350
+ using apply = inheritable_inherit_<T>;
351
+ };
352
+ template <>
353
+ struct inheritable_<true> {
354
+ template <typename T>
355
+ using apply = inheritable_contain_<T>;
356
+ };
357
+
358
+ // inheritable
359
+ //
360
+ // A class wrapping an arbitrary type T which is always inheritable, and which
361
+ // enables empty-base-optimization when possible.
362
+ template <typename T>
363
+ using inheritable =
364
+ typename inheritable_<std::is_final<T>::value>::template apply<T>;
365
+
366
+ } // namespace detail
367
+
368
+ // Prevent child classes from finding anything in folly:: by ADL.
369
+ namespace moveonly_ {
370
+
371
+ /**
372
+ * Disallow copy but not move in derived types. This is essentially
373
+ * boost::noncopyable (the implementation is almost identical), except:
374
+ * 1) It doesn't delete move constructor and move assignment.
375
+ * 2) It has public methods, enabling aggregate initialization.
376
+ */
377
+ struct MoveOnly {
378
+ constexpr MoveOnly() noexcept = default;
379
+ ~MoveOnly() noexcept = default;
380
+
381
+ MoveOnly(MoveOnly&&) noexcept = default;
382
+ MoveOnly& operator=(MoveOnly&&) noexcept = default;
383
+ MoveOnly(const MoveOnly&) = delete;
384
+ MoveOnly& operator=(const MoveOnly&) = delete;
385
+ };
386
+
387
+ /**
388
+ * Disallow copy and move for derived types. This is essentially
389
+ * boost::noncopyable (the implementation is almost identical), except it has
390
+ * public methods, enabling aggregate initialization.
391
+ */
392
+ struct NonCopyableNonMovable {
393
+ constexpr NonCopyableNonMovable() noexcept = default;
394
+ ~NonCopyableNonMovable() noexcept = default;
395
+
396
+ NonCopyableNonMovable(NonCopyableNonMovable&&) = delete;
397
+ NonCopyableNonMovable& operator=(NonCopyableNonMovable&&) = delete;
398
+ NonCopyableNonMovable(const NonCopyableNonMovable&) = delete;
399
+ NonCopyableNonMovable& operator=(const NonCopyableNonMovable&) = delete;
400
+ };
401
+
402
+ struct Default {};
403
+
404
+ template <bool Copy, bool Move>
405
+ using EnableCopyMove = std::conditional_t<
406
+ Copy,
407
+ Default,
408
+ std::conditional_t<Move, MoveOnly, NonCopyableNonMovable>>;
409
+
410
+ } // namespace moveonly_
411
+
412
+ using moveonly_::MoveOnly;
413
+ using moveonly_::NonCopyableNonMovable;
414
+
415
+ /// variadic_noop
416
+ /// variadic_noop_fn
417
+ ///
418
+ /// An invocable object and type that has no side-effects - that does nothing
419
+ /// when invoked regardless of the arguments with which it is invoked - and that
420
+ /// returns void.
421
+ ///
422
+ /// May be invoked with any arguments. Returns void.
423
+ struct variadic_noop_fn {
424
+ template <typename... A>
425
+ constexpr void operator()(A&&...) const noexcept {}
426
+ };
427
+ inline constexpr variadic_noop_fn variadic_noop;
428
+
429
+ /// variadic_constant_of
430
+ /// variadic_constant_of_fn
431
+ ///
432
+ /// An invocable object and type that has no side-effects - that does nothing
433
+ /// when invoked regardless of the arguments with which it is invoked - and that
434
+ /// returns a constant value.
435
+ template <auto Value>
436
+ struct variadic_constant_of_fn {
437
+ using value_type = decltype(Value);
438
+ static inline constexpr value_type value = Value;
439
+ template <typename... A>
440
+ constexpr value_type operator()(A&&...) const noexcept {
441
+ return value;
442
+ }
443
+ };
444
+ template <auto Value>
445
+ inline constexpr variadic_constant_of_fn<Value> variadic_constant_of;
446
+
447
+ // unsafe_default_initialized
448
+ // unsafe_default_initialized_cv
449
+ //
450
+ // An object which is explicitly convertible to any default-constructible type
451
+ // and which, upon conversion, yields a default-initialized value of that type.
452
+ //
453
+ // https://en.cppreference.com/w/cpp/language/default_initialization
454
+ //
455
+ // For fundamental types, a default-initialized instance may have indeterminate
456
+ // value. Reading an indeterminate value is undefined behavior but may offer a
457
+ // performance optimization. When using an indeterminate value as a performance
458
+ // optimization, it is best to be explicit.
459
+ //
460
+ // Useful as an escape hatch when enabling warnings or errors:
461
+ // * gcc:
462
+ // * uninitialized
463
+ // * maybe-uninitialized
464
+ // * clang:
465
+ // * uninitialized
466
+ // * conditional-uninitialized
467
+ // * sometimes-uninitialized
468
+ // * uninitialized-const-reference
469
+ // * msvc:
470
+ // * C4701: potentially uninitialized local variable used
471
+ // * C4703: potentially uninitialized local pointer variable used
472
+ //
473
+ // Example:
474
+ //
475
+ // int local = folly::unsafe_default_initialized;
476
+ // store_value_into_int_ptr(&value); // suppresses possible warning
477
+ // use_value(value); // suppresses possible warning
478
+ struct unsafe_default_initialized_cv {
479
+ FOLLY_PUSH_WARNING
480
+ // MSVC requires warning disables to be outside of function definition
481
+ // Uninitialized local variable 'uninit' used
482
+ FOLLY_MSVC_DISABLE_WARNING(4700)
483
+ // Potentially uninitialized local variable 'uninit' used
484
+ FOLLY_MSVC_DISABLE_WARNING(4701)
485
+ // Potentially uninitialized local pointer variable 'uninit' used
486
+ FOLLY_MSVC_DISABLE_WARNING(4703)
487
+ FOLLY_GNU_DISABLE_WARNING("-Wuninitialized")
488
+ // Clang doesn't implement -Wmaybe-uninitialized and warns about it
489
+ FOLLY_GCC_DISABLE_WARNING("-Wmaybe-uninitialized")
490
+ template <typename T>
491
+ FOLLY_ERASE constexpr /* implicit */ operator T() const noexcept {
492
+ #if defined(__cpp_lib_is_constant_evaluated)
493
+ #if __cpp_lib_is_constant_evaluated >= 201811L
494
+ #if (defined(_MSC_VER) && !defined(__MSVC_RUNTIME_CHECKS)) || \
495
+ (defined(__clang__) && !defined(__GNUC__))
496
+ if (!std::is_constant_evaluated()) {
497
+ T uninit;
498
+ return uninit;
499
+ }
500
+ #endif
501
+ #endif
502
+ #endif
503
+ return T();
504
+ }
505
+ FOLLY_POP_WARNING
506
+ };
507
+ inline constexpr unsafe_default_initialized_cv unsafe_default_initialized{};
508
+
509
+ /// to_bool
510
+ /// to_bool_fn
511
+ ///
512
+ /// Constructs a boolean from the argument.
513
+ ///
514
+ /// Particularly useful for testing sometimes-weak function declarations. They
515
+ /// may be declared weak on some platforms but not on others. GCC likes to warn
516
+ /// about them but the warning is unhelpful.
517
+ struct to_bool_fn {
518
+ template <typename..., typename T>
519
+ FOLLY_ERASE constexpr auto operator()(T const& t) const noexcept
520
+ -> decltype(static_cast<bool>(t)) {
521
+ FOLLY_PUSH_WARNING
522
+ FOLLY_GCC_DISABLE_WARNING("-Waddress")
523
+ FOLLY_GCC_DISABLE_WARNING("-Wnonnull-compare")
524
+ return static_cast<bool>(t);
525
+ FOLLY_POP_WARNING
526
+ }
527
+ };
528
+ inline constexpr to_bool_fn to_bool{};
529
+
530
+ struct to_signed_fn {
531
+ template <typename..., typename T>
532
+ constexpr auto operator()(T const& t) const noexcept ->
533
+ typename std::make_signed<T>::type {
534
+ using S = typename std::make_signed<T>::type;
535
+ // note: static_cast<S>(t) would be more straightforward, but it would also
536
+ // be implementation-defined behavior and that is typically to be avoided;
537
+ // the following code optimized into the same thing, though
538
+ constexpr auto m = static_cast<T>(std::numeric_limits<S>::max());
539
+ return m < t ? -static_cast<S>(~t) + S{-1} : static_cast<S>(t);
540
+ }
541
+ };
542
+ inline constexpr to_signed_fn to_signed{};
543
+
544
+ struct to_unsigned_fn {
545
+ template <typename..., typename T>
546
+ constexpr auto operator()(T const& t) const noexcept ->
547
+ typename std::make_unsigned<T>::type {
548
+ using U = typename std::make_unsigned<T>::type;
549
+ return static_cast<U>(t);
550
+ }
551
+ };
552
+ inline constexpr to_unsigned_fn to_unsigned{};
553
+
554
+ namespace detail {
555
+ template <typename Src, typename Dst>
556
+ inline constexpr bool is_to_narrow_convertible_v =
557
+ (std::is_integral<Dst>::value) &&
558
+ (std::is_signed<Dst>::value == std::is_signed<Src>::value);
559
+ }
560
+
561
+ template <typename Src>
562
+ class to_narrow_convertible {
563
+ static_assert(std::is_integral<Src>::value, "not an integer");
564
+
565
+ template <typename Dst>
566
+ struct to_
567
+ : std::bool_constant<detail::is_to_narrow_convertible_v<Src, Dst>> {};
568
+
569
+ public:
570
+ explicit constexpr to_narrow_convertible(Src const& value) noexcept
571
+ : value_(value) {}
572
+ explicit to_narrow_convertible(to_narrow_convertible const&) = default;
573
+ explicit to_narrow_convertible(to_narrow_convertible&&) = default;
574
+ to_narrow_convertible& operator=(to_narrow_convertible const&) = default;
575
+ to_narrow_convertible& operator=(to_narrow_convertible&&) = default;
576
+
577
+ template <typename Dst, std::enable_if_t<to_<Dst>::value, int> = 0>
578
+ /* implicit */ constexpr operator Dst() const noexcept {
579
+ FOLLY_PUSH_WARNING
580
+ FOLLY_MSVC_DISABLE_WARNING(4244) // lossy conversion: arguments
581
+ FOLLY_MSVC_DISABLE_WARNING(4267) // lossy conversion: variables
582
+ FOLLY_GNU_DISABLE_WARNING("-Wconversion")
583
+ return value_;
584
+ FOLLY_POP_WARNING
585
+ }
586
+
587
+ private:
588
+ Src value_;
589
+ };
590
+
591
+ // to_narrow
592
+ //
593
+ // A utility for performing explicit possibly-narrowing integral conversion
594
+ // without specifying the destination type. Does not permit changing signs.
595
+ // Sometimes preferable to static_cast<Dst>(src) to document the intended
596
+ // semantics of the cast.
597
+ //
598
+ // Models explicit conversion with an elided destination type. Sits in between
599
+ // a stricter explicit conversion with a named destination type and a more
600
+ // lenient implicit conversion. Implemented with implicit conversion in order
601
+ // to take advantage of the undefined-behavior sanitizer's inspection of all
602
+ // implicit conversions - it checks for truncation, with suppressions in place
603
+ // for warnings which guard against narrowing implicit conversions.
604
+ struct to_narrow_fn {
605
+ template <typename..., typename Src>
606
+ constexpr auto operator()(Src const& src) const noexcept
607
+ -> to_narrow_convertible<Src> {
608
+ return to_narrow_convertible<Src>{src};
609
+ }
610
+ };
611
+ inline constexpr to_narrow_fn to_narrow{};
612
+
613
+ template <typename Src>
614
+ class to_integral_convertible {
615
+ static_assert(std::is_floating_point<Src>::value, "not a floating-point");
616
+
617
+ template <typename Dst>
618
+ static constexpr bool to_ = std::is_integral<Dst>::value;
619
+
620
+ public:
621
+ explicit constexpr to_integral_convertible(Src const& value) noexcept
622
+ : value_(value) {}
623
+
624
+ explicit to_integral_convertible(to_integral_convertible const&) = default;
625
+ explicit to_integral_convertible(to_integral_convertible&&) = default;
626
+ to_integral_convertible& operator=(to_integral_convertible const&) = default;
627
+ to_integral_convertible& operator=(to_integral_convertible&&) = default;
628
+
629
+ template <typename Dst, std::enable_if_t<to_<Dst>, int> = 0>
630
+ /* implicit */ constexpr operator Dst() const noexcept {
631
+ FOLLY_PUSH_WARNING
632
+ FOLLY_MSVC_DISABLE_WARNING(4244) // lossy conversion: arguments
633
+ FOLLY_MSVC_DISABLE_WARNING(4267) // lossy conversion: variables
634
+ FOLLY_GNU_DISABLE_WARNING("-Wconversion")
635
+ return value_;
636
+ FOLLY_POP_WARNING
637
+ }
638
+
639
+ private:
640
+ Src value_;
641
+ };
642
+
643
+ // to_integral
644
+ //
645
+ // A utility for performing explicit floating-point-to-integral conversion
646
+ // without specifying the destination type. Sometimes preferable to
647
+ // static_cast<Dst>(src) to document the intended semantics of the cast.
648
+ //
649
+ // Models explicit conversion with an elided destination type. Sits in between
650
+ // a stricter explicit conversion with a named destination type and a more
651
+ // lenient implicit conversion. Implemented with implicit conversion in order
652
+ // to take advantage of the undefined-behavior sanitizer's inspection of all
653
+ // implicit conversions.
654
+ struct to_integral_fn {
655
+ template <typename..., typename Src>
656
+ constexpr auto operator()(Src const& src) const noexcept
657
+ -> to_integral_convertible<Src> {
658
+ return to_integral_convertible<Src>{src};
659
+ }
660
+ };
661
+ inline constexpr to_integral_fn to_integral{};
662
+
663
+ template <typename Src>
664
+ class to_floating_point_convertible {
665
+ static_assert(std::is_integral<Src>::value, "not a floating-point");
666
+
667
+ template <typename Dst>
668
+ static constexpr bool to_ = std::is_floating_point<Dst>::value;
669
+
670
+ public:
671
+ explicit constexpr to_floating_point_convertible(Src const& value) noexcept
672
+ : value_(value) {}
673
+
674
+ explicit to_floating_point_convertible(to_floating_point_convertible const&) =
675
+ default;
676
+ explicit to_floating_point_convertible(to_floating_point_convertible&&) =
677
+ default;
678
+ to_floating_point_convertible& operator=(
679
+ to_floating_point_convertible const&) = default;
680
+ to_floating_point_convertible& operator=(to_floating_point_convertible&&) =
681
+ default;
682
+
683
+ template <typename Dst, std::enable_if_t<to_<Dst>, int> = 0>
684
+ /* implicit */ constexpr operator Dst() const noexcept {
685
+ FOLLY_PUSH_WARNING
686
+ FOLLY_GNU_DISABLE_WARNING("-Wconversion")
687
+ return value_;
688
+ FOLLY_POP_WARNING
689
+ }
690
+
691
+ private:
692
+ Src value_;
693
+ };
694
+
695
+ // to_floating_point
696
+ //
697
+ // A utility for performing explicit integral-to-floating-point conversion
698
+ // without specifying the destination type. Sometimes preferable to
699
+ // static_cast<Dst>(src) to document the intended semantics of the cast.
700
+ //
701
+ // Models explicit conversion with an elided destination type. Sits in between
702
+ // a stricter explicit conversion with a named destination type and a more
703
+ // lenient implicit conversion. Implemented with implicit conversion in order
704
+ // to take advantage of the undefined-behavior sanitizer's inspection of all
705
+ // implicit conversions.
706
+ struct to_floating_point_fn {
707
+ template <typename..., typename Src>
708
+ constexpr auto operator()(Src const& src) const noexcept
709
+ -> to_floating_point_convertible<Src> {
710
+ return to_floating_point_convertible<Src>{src};
711
+ }
712
+ };
713
+ inline constexpr to_floating_point_fn to_floating_point{};
714
+
715
+ struct to_underlying_fn {
716
+ template <typename..., class E>
717
+ constexpr std::underlying_type_t<E> operator()(E e) const noexcept {
718
+ static_assert(std::is_enum<E>::value, "not an enum type");
719
+ return static_cast<std::underlying_type_t<E>>(e);
720
+ }
721
+ };
722
+ inline constexpr to_underlying_fn to_underlying{};
723
+
724
+ namespace detail {
725
+ template <typename R>
726
+ using invocable_to_detect = decltype(FOLLY_DECLVAL(R)());
727
+
728
+ template <
729
+ typename F,
730
+ // MSVC 14.16.27023 does not permit these to be in the class body:
731
+ // error C2833: 'operator decltype' is not a recognized operator or type
732
+ // TODO: return these to the class body and remove the static assertions
733
+ typename TML = detected_t<invocable_to_detect, F&>,
734
+ typename TCL = detected_t<invocable_to_detect, F const&>,
735
+ typename TMR = detected_t<invocable_to_detect, F&&>,
736
+ typename TCR = detected_t<invocable_to_detect, F const&&>>
737
+ class invocable_to_convertible : private inheritable<F> {
738
+ private:
739
+ static_assert(std::is_same<F, decay_t<F>>::value, "mismatch");
740
+
741
+ template <typename R>
742
+ using result_t = detected_t<invocable_to_detect, R>;
743
+ template <typename R>
744
+ static constexpr bool detected_v = is_detected_v<invocable_to_detect, R>;
745
+ template <typename R>
746
+ using if_invocable_as_v = std::enable_if_t<detected_v<R>, int>;
747
+ template <typename R>
748
+ static constexpr bool nx_v = noexcept(FOLLY_DECLVAL(R)());
749
+ template <typename G>
750
+ static constexpr bool constructible_v = std::is_constructible<F, G&&>::value;
751
+
752
+ using FML = F&;
753
+ using FCL = F const&;
754
+ using FMR = F&&;
755
+ using FCR = F const&&;
756
+ static_assert(std::is_same<TML, result_t<FML>>::value, "mismatch");
757
+ static_assert(std::is_same<TCL, result_t<FCL>>::value, "mismatch");
758
+ static_assert(std::is_same<TMR, result_t<FMR>>::value, "mismatch");
759
+ static_assert(std::is_same<TCR, result_t<FCR>>::value, "mismatch");
760
+
761
+ public:
762
+ template <typename G, std::enable_if_t<constructible_v<G&&>, int> = 0>
763
+ FOLLY_ERASE explicit constexpr invocable_to_convertible(G&& g) noexcept(
764
+ noexcept(F(static_cast<G&&>(g))))
765
+ : inheritable<F>(static_cast<G&&>(g)) {}
766
+
767
+ template <typename..., typename R = FML, if_invocable_as_v<R> = 0>
768
+ FOLLY_ERASE constexpr operator TML() & noexcept(nx_v<R>) {
769
+ return static_cast<FML>(*this)();
770
+ }
771
+ template <typename..., typename R = FCL, if_invocable_as_v<R> = 0>
772
+ FOLLY_ERASE constexpr operator TCL() const& noexcept(nx_v<R>) {
773
+ return static_cast<FCL>(*this)();
774
+ }
775
+ template <typename..., typename R = FMR, if_invocable_as_v<R> = 0>
776
+ FOLLY_ERASE constexpr operator TMR() && noexcept(nx_v<R>) {
777
+ return static_cast<FMR>(*this)();
778
+ }
779
+ template <typename..., typename R = FCR, if_invocable_as_v<R> = 0>
780
+ FOLLY_ERASE constexpr operator TCR() const&& noexcept(nx_v<R>) {
781
+ return static_cast<FCR>(*this)();
782
+ }
783
+ };
784
+ } // namespace detail
785
+
786
+ // invocable_to
787
+ // invocable_to_fn
788
+ //
789
+ // Given an invocable, returns an object which is implicitly convertible to the
790
+ // type which the invocable returns when invoked with no arguments. Conversion
791
+ // invokes the invocables and returns the value.
792
+ //
793
+ // The return object has unspecified type with the following semantics:
794
+ // * It stores a decay-copy of the passed invocable.
795
+ // * It defines four-way conversion operators. Each conversion operator purely
796
+ // forwards to the invocable as forwarded-like the convertible, and has the
797
+ // same exception specification and the same participation in overload
798
+ // resolution as invocation of the invocable.
799
+ //
800
+ // Example:
801
+ //
802
+ // Given a setup:
803
+ //
804
+ // struct stable {
805
+ // int value = 0;
806
+ // stable() = default;
807
+ // stable(stable const&); // expensive!
808
+ // };
809
+ // std::list<stable const> list;
810
+ //
811
+ // The goal is to insert a stable with a value of 7 to the back of the list.
812
+ //
813
+ // The obvious ways are expensive:
814
+ //
815
+ // stable obj;
816
+ // obj.value = 7;
817
+ // list.push_back(obj); // or variations with emplace_back or std::move
818
+ //
819
+ // With a lambda and copy elision optimization (NRVO), the expense remains:
820
+ //
821
+ // list.push_back(std::invoke([] {
822
+ // stable obj;
823
+ // obj.value = 7;
824
+ // return obj;
825
+ // }));
826
+ //
827
+ // But conversion, as done with this utility, makes this goal achievable.
828
+ //
829
+ // list.emplace_back(folly::invocable_to([] {
830
+ // stable obj;
831
+ // obj.value = 7;
832
+ // return obj;
833
+ // }));
834
+ struct invocable_to_fn {
835
+ template <
836
+ typename F,
837
+ typename...,
838
+ typename D = detail::decay_t<F>,
839
+ typename R = detail::invocable_to_convertible<D>,
840
+ std::enable_if_t<std::is_constructible<D, F&&>::value, int> = 0>
841
+ FOLLY_ERASE constexpr R operator()(F&& f) const
842
+ noexcept(noexcept(R(static_cast<F&&>(f)))) {
843
+ return R(static_cast<F&&>(f));
844
+ }
845
+ };
846
+ inline constexpr invocable_to_fn invocable_to{};
847
+
848
+ #define FOLLY_DETAIL_FORWARD_BODY(...) \
849
+ noexcept(noexcept(__VA_ARGS__))->decltype(__VA_ARGS__) { \
850
+ return __VA_ARGS__; \
851
+ }
852
+
853
+ /// FOLLY_FOR_EACH_THIS_OVERLOAD_IN_CLASS_BODY_DELEGATE
854
+ ///
855
+ /// Helper macro to add 4 delegated, qualifier-overloaded methods to a class
856
+ ///
857
+ /// Example:
858
+ ///
859
+ /// template <typename T>
860
+ /// class optional {
861
+ /// public:
862
+ /// bool has_value() const;
863
+ ///
864
+ /// T& value() & {
865
+ /// if (!has_value()) { throw std::bad_optional_access(); }
866
+ /// return m_value;
867
+ /// }
868
+ ///
869
+ /// const T& value() const& {
870
+ /// if (!has_value()) { throw std::bad_optional_access(); }
871
+ /// return m_value;
872
+ /// }
873
+ ///
874
+ /// T&& value() && {
875
+ /// if (!has_value()) { throw std::bad_optional_access(); }
876
+ /// return std::move(m_value);
877
+ /// }
878
+ ///
879
+ /// const T&& value() const&& {
880
+ /// if (!has_value()) { throw std::bad_optional_access(); }
881
+ /// return std::move(m_value);
882
+ /// }
883
+ /// };
884
+ ///
885
+ /// This is equivalent to
886
+ ///
887
+ /// template <typename T>
888
+ /// class optional {
889
+ /// template <typename Self>
890
+ /// decltype(auto) value_impl(Self&& self) {
891
+ /// if (!self.has_value()) {
892
+ /// throw std::bad_optional_access();
893
+ /// }
894
+ /// return std::forward<Self>(self).m_value;
895
+ /// }
896
+ /// // ...
897
+ ///
898
+ /// public:
899
+ /// bool has_value() const;
900
+ ///
901
+ /// FOLLY_FOR_EACH_THIS_OVERLOAD_IN_CLASS_BODY_DELEGATE(value,
902
+ /// value_impl);
903
+ /// };
904
+ ///
905
+ /// Note: This can be migrated to C++23's deducing this:
906
+ /// https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p0847r7.html
907
+ ///
908
+ // clang-format off
909
+ #define FOLLY_FOR_EACH_THIS_OVERLOAD_IN_CLASS_BODY_DELEGATE(MEMBER, DELEGATE) \
910
+ template <class... Args> \
911
+ [[maybe_unused]] FOLLY_ERASE_HACK_GCC \
912
+ constexpr auto MEMBER(Args&&... args) & FOLLY_DETAIL_FORWARD_BODY( \
913
+ ::folly::remove_cvref_t<decltype(*this)>::DELEGATE( \
914
+ *this, static_cast<Args&&>(args)...)) \
915
+ template <class... Args> \
916
+ [[maybe_unused]] FOLLY_ERASE_HACK_GCC \
917
+ constexpr auto MEMBER(Args&&... args) const& FOLLY_DETAIL_FORWARD_BODY( \
918
+ ::folly::remove_cvref_t<decltype(*this)>::DELEGATE( \
919
+ *this, static_cast<Args&&>(args)...)) \
920
+ template <class... Args> \
921
+ [[maybe_unused]] FOLLY_ERASE_HACK_GCC \
922
+ constexpr auto MEMBER(Args&&... args) && FOLLY_DETAIL_FORWARD_BODY( \
923
+ ::folly::remove_cvref_t<decltype(*this)>::DELEGATE( \
924
+ std::move(*this), static_cast<Args&&>(args)...)) \
925
+ template <class... Args> \
926
+ [[maybe_unused]] FOLLY_ERASE_HACK_GCC \
927
+ constexpr auto MEMBER(Args&&... args) const&& FOLLY_DETAIL_FORWARD_BODY( \
928
+ ::folly::remove_cvref_t<decltype(*this)>::DELEGATE( \
929
+ std::move(*this), static_cast<Args&&>(args)...)) \
930
+ /* enforce semicolon after macro */ static_assert(true)
931
+ // clang-format on
932
+ } // namespace folly