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,484 @@
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
+ /*
18
+ * AtomicHashMap --
19
+ *
20
+ * A high-performance concurrent hash map with int32_t or int64_t keys. Supports
21
+ * insert, find(key), findAt(index), erase(key), size, and more. Memory cannot
22
+ * be freed or reclaimed by erase. Can grow to a maximum of about 18 times the
23
+ * initial capacity, but performance degrades linearly with growth. Can also be
24
+ * used as an object store with unique 32-bit references directly into the
25
+ * internal storage (retrieved with iterator::getIndex()).
26
+ *
27
+ * Advantages:
28
+ * - High-performance (~2-4x tbb::concurrent_hash_map in heavily
29
+ * multi-threaded environments).
30
+ * - Efficient memory usage if initial capacity is not over estimated
31
+ * (especially for small keys and values).
32
+ * - Good fragmentation properties (only allocates in large slabs which can
33
+ * be reused with clear() and never move).
34
+ * - Can generate unique, long-lived 32-bit references for efficient lookup
35
+ * (see findAt()).
36
+ *
37
+ * Disadvantages:
38
+ * - Keys must be native int32_t or int64_t, or explicitly converted.
39
+ * - Must be able to specify unique empty, locked, and erased keys
40
+ * - Performance degrades linearly as size grows beyond initialization
41
+ * capacity.
42
+ * - Max size limit of ~18x initial size (dependent on max load factor).
43
+ * - Memory is not freed or reclaimed by erase.
44
+ *
45
+ * Usage and Operation Details:
46
+ * Simple performance/memory tradeoff with maxLoadFactor. Higher load factors
47
+ * give better memory utilization but probe lengths increase, reducing
48
+ * performance.
49
+ *
50
+ * Implementation and Performance Details:
51
+ * AHArray is a fixed size contiguous block of value_type cells. When
52
+ * writing a cell, the key is locked while the rest of the record is
53
+ * written. Once done, the cell is unlocked by setting the key. find()
54
+ * is completely wait-free and doesn't require any non-relaxed atomic
55
+ * operations. AHA cannot grow beyond initialization capacity, but is
56
+ * faster because of reduced data indirection.
57
+ *
58
+ * AHMap is a wrapper around AHArray sub-maps that allows growth and provides
59
+ * an interface closer to the STL UnorderedAssociativeContainer concept. These
60
+ * sub-maps are allocated on the fly and are processed in series, so the more
61
+ * there are (from growing past initial capacity), the worse the performance.
62
+ *
63
+ * Insert returns false if there is a key collision and throws if the max size
64
+ * of the map is exceeded.
65
+ *
66
+ * Benchmark performance with 8 simultaneous threads processing 1 million
67
+ * unique <int64_t, int64_t> entries on a 4-core, 2.5 GHz machine:
68
+ *
69
+ * Load Factor Mem Efficiency usec/Insert usec/Find
70
+ * 50% 50% 0.19 0.05
71
+ * 85% 85% 0.20 0.06
72
+ * 90% 90% 0.23 0.08
73
+ * 95% 95% 0.27 0.10
74
+ *
75
+ * See folly/tests/AtomicHashMapTest.cpp for more benchmarks.
76
+ */
77
+
78
+ #pragma once
79
+ #define FOLLY_ATOMICHASHMAP_H_
80
+
81
+ #include <atomic>
82
+ #include <functional>
83
+ #include <stdexcept>
84
+
85
+ #include <folly/AtomicHashArray.h>
86
+ #include <folly/CPortability.h>
87
+ #include <folly/Likely.h>
88
+ #include <folly/ThreadCachedInt.h>
89
+ #include <folly/container/Foreach.h>
90
+ #include <folly/hash/Hash.h>
91
+
92
+ namespace folly {
93
+
94
+ /*
95
+ * AtomicHashMap provides an interface somewhat similar to the
96
+ * UnorderedAssociativeContainer concept in C++. This does not
97
+ * exactly match this concept (or even the basic Container concept),
98
+ * because of some restrictions imposed by our datastructure.
99
+ *
100
+ * Specific differences (there are quite a few):
101
+ *
102
+ * - Efficiently thread safe for inserts (main point of this stuff),
103
+ * wait-free for lookups.
104
+ *
105
+ * - You can erase from this container, but the cell containing the key will
106
+ * not be free or reclaimed.
107
+ *
108
+ * - You can erase everything by calling clear() (and you must guarantee only
109
+ * one thread can be using the container to do that).
110
+ *
111
+ * - We aren't DefaultConstructible, CopyConstructible, Assignable, or
112
+ * EqualityComparable. (Most of these are probably not something
113
+ * you actually want to do with this anyway.)
114
+ *
115
+ * - We don't support the various bucket functions, rehash(),
116
+ * reserve(), or equal_range(). Also no constructors taking
117
+ * iterators, although this could change.
118
+ *
119
+ * - Several insertion functions, notably operator[], are not
120
+ * implemented. It is a little too easy to misuse these functions
121
+ * with this container, where part of the point is that when an
122
+ * insertion happens for a new key, it will atomically have the
123
+ * desired value.
124
+ *
125
+ * - The map has no templated insert() taking an iterator range, but
126
+ * we do provide an insert(key, value). The latter seems more
127
+ * frequently useful for this container (to avoid sprinkling
128
+ * make_pair everywhere), and providing both can lead to some gross
129
+ * template error messages.
130
+ *
131
+ * - The Allocator must not be stateful (a new instance will be spun up for
132
+ * each allocation), and its allocate() method must take a raw number of
133
+ * bytes.
134
+ *
135
+ * - KeyT must be a 32 bit or 64 bit atomic integer type, and you must
136
+ * define special 'locked' and 'empty' key values in the ctor
137
+ *
138
+ * - We don't take the Hash function object as an instance in the
139
+ * constructor.
140
+ *
141
+ */
142
+
143
+ // Thrown when insertion fails due to running out of space for
144
+ // submaps.
145
+ struct FOLLY_EXPORT AtomicHashMapFullError : std::runtime_error {
146
+ explicit AtomicHashMapFullError()
147
+ : std::runtime_error("AtomicHashMap is full") {}
148
+ };
149
+
150
+ template <
151
+ class KeyT,
152
+ class ValueT,
153
+ class HashFcn,
154
+ class EqualFcn,
155
+ class Allocator,
156
+ class ProbeFcn,
157
+ class KeyConvertFcn>
158
+ class AtomicHashMap {
159
+ typedef AtomicHashArray<
160
+ KeyT,
161
+ ValueT,
162
+ HashFcn,
163
+ EqualFcn,
164
+ Allocator,
165
+ ProbeFcn,
166
+ KeyConvertFcn>
167
+ SubMap;
168
+
169
+ public:
170
+ typedef KeyT key_type;
171
+ typedef ValueT mapped_type;
172
+ typedef std::pair<const KeyT, ValueT> value_type;
173
+ typedef HashFcn hasher;
174
+ typedef EqualFcn key_equal;
175
+ typedef KeyConvertFcn key_convert;
176
+ typedef value_type* pointer;
177
+ typedef value_type& reference;
178
+ typedef const value_type& const_reference;
179
+ typedef std::ptrdiff_t difference_type;
180
+ typedef std::size_t size_type;
181
+ typedef typename SubMap::Config Config;
182
+
183
+ template <class ContT, class IterVal, class SubIt>
184
+ struct ahm_iterator;
185
+
186
+ typedef ahm_iterator<
187
+ const AtomicHashMap,
188
+ const value_type,
189
+ typename SubMap::const_iterator>
190
+ const_iterator;
191
+ typedef ahm_iterator<AtomicHashMap, value_type, typename SubMap::iterator>
192
+ iterator;
193
+
194
+ public:
195
+ const float kGrowthFrac_; // How much to grow when we run out of capacity.
196
+
197
+ // The constructor takes a finalSizeEst which is the optimal
198
+ // number of elements to maximize space utilization and performance,
199
+ // and a Config object to specify more advanced options.
200
+ explicit AtomicHashMap(size_t finalSizeEst, const Config& c = Config());
201
+
202
+ AtomicHashMap(const AtomicHashMap&) = delete;
203
+ AtomicHashMap& operator=(const AtomicHashMap&) = delete;
204
+
205
+ ~AtomicHashMap() {
206
+ const unsigned int numMaps =
207
+ numMapsAllocated_.load(std::memory_order_relaxed);
208
+ FOR_EACH_RANGE (i, 0, numMaps) {
209
+ SubMap* thisMap = subMaps_[i].load(std::memory_order_relaxed);
210
+ DCHECK(thisMap);
211
+ SubMap::destroy(thisMap);
212
+ }
213
+ }
214
+
215
+ key_equal key_eq() const { return key_equal(); }
216
+ hasher hash_function() const { return hasher(); }
217
+
218
+ /*
219
+ * insert --
220
+ *
221
+ * Returns a pair with iterator to the element at r.first and
222
+ * success. Retrieve the index with ret.first.getIndex().
223
+ *
224
+ * Does not overwrite on key collision, but returns an iterator to
225
+ * the existing element (since this could due to a race with
226
+ * another thread, it is often important to check this return
227
+ * value).
228
+ *
229
+ * Allocates new sub maps as the existing ones become full. If
230
+ * all sub maps are full, no element is inserted, and
231
+ * AtomicHashMapFullError is thrown.
232
+ */
233
+ std::pair<iterator, bool> insert(const value_type& r) {
234
+ return emplace(r.first, r.second);
235
+ }
236
+ std::pair<iterator, bool> insert(key_type k, const mapped_type& v) {
237
+ return emplace(k, v);
238
+ }
239
+ std::pair<iterator, bool> insert(value_type&& r) {
240
+ return emplace(r.first, std::move(r.second));
241
+ }
242
+ std::pair<iterator, bool> insert(key_type k, mapped_type&& v) {
243
+ return emplace(k, std::move(v));
244
+ }
245
+
246
+ /*
247
+ * emplace --
248
+ *
249
+ * Same contract as insert(), but performs in-place construction
250
+ * of the value type using the specified arguments.
251
+ *
252
+ * Also, like find(), this method optionally allows 'key_in' to have a type
253
+ * different from that stored in the table; see find(). If and only if no
254
+ * equal key is already present, this method converts 'key_in' to a key of
255
+ * type KeyT using the provided LookupKeyToKeyFcn.
256
+ */
257
+ template <
258
+ typename LookupKeyT = key_type,
259
+ typename LookupHashFcn = hasher,
260
+ typename LookupEqualFcn = key_equal,
261
+ typename LookupKeyToKeyFcn = key_convert,
262
+ typename... ArgTs>
263
+ std::pair<iterator, bool> emplace(LookupKeyT k, ArgTs&&... vCtorArg);
264
+
265
+ /*
266
+ * find --
267
+ *
268
+ * Returns the iterator to the element if found, otherwise end().
269
+ *
270
+ * As an optional feature, the type of the key to look up (LookupKeyT) is
271
+ * allowed to be different from the type of keys actually stored (KeyT).
272
+ *
273
+ * This enables use cases where materializing the key is costly and usually
274
+ * redundant, e.g., canonicalizing/interning a set of strings and being able
275
+ * to look up by StringPiece. To use this feature, LookupHashFcn must take
276
+ * a LookupKeyT, and LookupEqualFcn must take KeyT and LookupKeyT as first
277
+ * and second parameter, respectively.
278
+ *
279
+ * See folly/test/ArrayHashMapTest.cpp for sample usage.
280
+ */
281
+ template <
282
+ typename LookupKeyT = key_type,
283
+ typename LookupHashFcn = hasher,
284
+ typename LookupEqualFcn = key_equal>
285
+ iterator find(LookupKeyT k);
286
+
287
+ template <
288
+ typename LookupKeyT = key_type,
289
+ typename LookupHashFcn = hasher,
290
+ typename LookupEqualFcn = key_equal>
291
+ const_iterator find(LookupKeyT k) const;
292
+
293
+ /*
294
+ * erase --
295
+ *
296
+ * Erases key k from the map
297
+ *
298
+ * Returns 1 iff the key is found and erased, and 0 otherwise.
299
+ */
300
+ size_type erase(key_type k);
301
+
302
+ /*
303
+ * clear --
304
+ *
305
+ * Wipes all keys and values from primary map and destroys all secondary
306
+ * maps. Primary map remains allocated and thus the memory can be reused
307
+ * in place. Not thread safe.
308
+ *
309
+ */
310
+ void clear();
311
+
312
+ /*
313
+ * size --
314
+ *
315
+ * Returns the exact size of the map. Note this is not as cheap as typical
316
+ * size() implementations because, for each AtomicHashArray in this AHM, we
317
+ * need to grab a lock and accumulate the values from all the thread local
318
+ * counters. See folly/ThreadCachedInt.h for more details.
319
+ */
320
+ size_t size() const;
321
+
322
+ bool empty() const { return size() == 0; }
323
+
324
+ size_type count(key_type k) const { return find(k) == end() ? 0 : 1; }
325
+
326
+ /*
327
+ * findAt --
328
+ *
329
+ * Returns an iterator into the map.
330
+ *
331
+ * idx should only be an unmodified value returned by calling getIndex() on
332
+ * a valid iterator returned by find() or insert(). If idx is invalid you
333
+ * have a bug and the process aborts.
334
+ */
335
+ iterator findAt(uint32_t idx) {
336
+ SimpleRetT ret = findAtInternal(idx);
337
+ DCHECK_LT(ret.i, numSubMaps());
338
+ return iterator(
339
+ this,
340
+ ret.i,
341
+ subMaps_[ret.i].load(std::memory_order_relaxed)->makeIter(ret.j));
342
+ }
343
+ const_iterator findAt(uint32_t idx) const {
344
+ return const_cast<AtomicHashMap*>(this)->findAt(idx);
345
+ }
346
+
347
+ // Total capacity - summation of capacities of all submaps.
348
+ size_t capacity() const;
349
+
350
+ // Number of new insertions until current submaps are all at max load factor.
351
+ size_t spaceRemaining() const;
352
+
353
+ void setEntryCountThreadCacheSize(int32_t newSize) {
354
+ const int numMaps = numMapsAllocated_.load(std::memory_order_acquire);
355
+ for (int i = 0; i < numMaps; ++i) {
356
+ SubMap* map = subMaps_[i].load(std::memory_order_relaxed);
357
+ map->setEntryCountThreadCacheSize(newSize);
358
+ }
359
+ }
360
+
361
+ // Number of sub maps allocated so far to implement this map. The more there
362
+ // are, the worse the performance.
363
+ int numSubMaps() const {
364
+ return numMapsAllocated_.load(std::memory_order_acquire);
365
+ }
366
+
367
+ iterator begin() {
368
+ iterator it(this, 0, subMaps_[0].load(std::memory_order_relaxed)->begin());
369
+ it.checkAdvanceToNextSubmap();
370
+ return it;
371
+ }
372
+
373
+ const_iterator begin() const {
374
+ const_iterator it(
375
+ this, 0, subMaps_[0].load(std::memory_order_relaxed)->begin());
376
+ it.checkAdvanceToNextSubmap();
377
+ return it;
378
+ }
379
+
380
+ iterator end() { return iterator(); }
381
+
382
+ const_iterator end() const { return const_iterator(); }
383
+
384
+ /* Advanced functions for direct access: */
385
+
386
+ inline uint32_t recToIdx(const value_type& r, bool mayInsert = true) {
387
+ SimpleRetT ret =
388
+ mayInsert ? insertInternal(r.first, r.second) : findInternal(r.first);
389
+ return encodeIndex(ret.i, ret.j);
390
+ }
391
+
392
+ inline uint32_t recToIdx(value_type&& r, bool mayInsert = true) {
393
+ SimpleRetT ret = mayInsert ? insertInternal(r.first, std::move(r.second))
394
+ : findInternal(r.first);
395
+ return encodeIndex(ret.i, ret.j);
396
+ }
397
+
398
+ inline uint32_t recToIdx(
399
+ key_type k, const mapped_type& v, bool mayInsert = true) {
400
+ SimpleRetT ret = mayInsert ? insertInternal(k, v) : findInternal(k);
401
+ return encodeIndex(ret.i, ret.j);
402
+ }
403
+
404
+ inline uint32_t recToIdx(key_type k, mapped_type&& v, bool mayInsert = true) {
405
+ SimpleRetT ret =
406
+ mayInsert ? insertInternal(k, std::move(v)) : findInternal(k);
407
+ return encodeIndex(ret.i, ret.j);
408
+ }
409
+
410
+ inline uint32_t keyToIdx(const KeyT k, bool mayInsert = false) {
411
+ return recToIdx(value_type(k), mayInsert);
412
+ }
413
+
414
+ inline const value_type& idxToRec(uint32_t idx) const {
415
+ SimpleRetT ret = findAtInternal(idx);
416
+ return subMaps_[ret.i].load(std::memory_order_relaxed)->idxToRec(ret.j);
417
+ }
418
+
419
+ /* Private data and helper functions... */
420
+
421
+ private:
422
+ // This limits primary submap size to 2^31 ~= 2 billion, secondary submap
423
+ // size to 2^(32 - kNumSubMapBits_ - 1) = 2^27 ~= 130 million, and num subMaps
424
+ // to 2^kNumSubMapBits_ = 16.
425
+ static const uint32_t kNumSubMapBits_ = 4;
426
+ static const uint32_t kSecondaryMapBit_ = 1u << 31; // Highest bit
427
+ static const uint32_t kSubMapIndexShift_ = 32 - kNumSubMapBits_ - 1;
428
+ static const uint32_t kSubMapIndexMask_ = (1 << kSubMapIndexShift_) - 1;
429
+ static const uint32_t kNumSubMaps_ = 1 << kNumSubMapBits_;
430
+ static const uintptr_t kLockedPtr_ = 0x88ULL << 48; // invalid pointer
431
+
432
+ struct SimpleRetT {
433
+ uint32_t i;
434
+ size_t j;
435
+ bool success;
436
+ SimpleRetT(uint32_t ii, size_t jj, bool s) : i(ii), j(jj), success(s) {}
437
+ SimpleRetT() = default;
438
+ };
439
+
440
+ template <
441
+ typename LookupKeyT = key_type,
442
+ typename LookupHashFcn = hasher,
443
+ typename LookupEqualFcn = key_equal,
444
+ typename LookupKeyToKeyFcn = key_convert,
445
+ typename... ArgTs>
446
+ SimpleRetT insertInternal(LookupKeyT key, ArgTs&&... value);
447
+
448
+ template <
449
+ typename LookupKeyT = key_type,
450
+ typename LookupHashFcn = hasher,
451
+ typename LookupEqualFcn = key_equal>
452
+ SimpleRetT findInternal(const LookupKeyT k) const;
453
+
454
+ SimpleRetT findAtInternal(uint32_t idx) const;
455
+
456
+ std::atomic<SubMap*> subMaps_[kNumSubMaps_];
457
+ std::atomic<uint32_t> numMapsAllocated_;
458
+
459
+ inline bool tryLockMap(unsigned int idx) {
460
+ SubMap* val = nullptr;
461
+ return subMaps_[idx].compare_exchange_strong(
462
+ val, (SubMap*)kLockedPtr_, std::memory_order_acquire);
463
+ }
464
+
465
+ static inline uint32_t encodeIndex(uint32_t subMap, uint32_t subMapIdx);
466
+
467
+ }; // AtomicHashMap
468
+
469
+ template <
470
+ class KeyT,
471
+ class ValueT,
472
+ class HashFcn = std::hash<KeyT>,
473
+ class EqualFcn = std::equal_to<KeyT>,
474
+ class Allocator = std::allocator<char>>
475
+ using QuadraticProbingAtomicHashMap = AtomicHashMap<
476
+ KeyT,
477
+ ValueT,
478
+ HashFcn,
479
+ EqualFcn,
480
+ Allocator,
481
+ AtomicHashArrayQuadraticProbeFcn>;
482
+ } // namespace folly
483
+
484
+ #include <folly/AtomicHashMap-inl.h>
@@ -0,0 +1,206 @@
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 <atomic>
20
+ #include <cassert>
21
+ #include <utility>
22
+
23
+ namespace folly {
24
+
25
+ /**
26
+ * A very simple atomic single-linked list primitive.
27
+ *
28
+ * Usage:
29
+ *
30
+ * class MyClass {
31
+ * AtomicIntrusiveLinkedListHook<MyClass> hook_;
32
+ * }
33
+ *
34
+ * AtomicIntrusiveLinkedList<MyClass, &MyClass::hook_> list;
35
+ * list.insert(&a);
36
+ * list.sweep([] (MyClass* c) { doSomething(c); }
37
+ */
38
+ template <class T>
39
+ struct AtomicIntrusiveLinkedListHook {
40
+ T* next{nullptr};
41
+ };
42
+
43
+ template <class T, AtomicIntrusiveLinkedListHook<T> T::*HookMember>
44
+ class AtomicIntrusiveLinkedList {
45
+ public:
46
+ AtomicIntrusiveLinkedList() {}
47
+
48
+ AtomicIntrusiveLinkedList(const AtomicIntrusiveLinkedList&) = delete;
49
+ AtomicIntrusiveLinkedList& operator=(const AtomicIntrusiveLinkedList&) =
50
+ delete;
51
+
52
+ AtomicIntrusiveLinkedList(AtomicIntrusiveLinkedList&& other) noexcept
53
+ : head_(other.head_.exchange(nullptr, std::memory_order_acq_rel)) {}
54
+
55
+ // Absent because would be too error-prone to use correctly because of
56
+ // the requirement that lists are empty upon destruction.
57
+ AtomicIntrusiveLinkedList& operator=(
58
+ AtomicIntrusiveLinkedList&& other) noexcept = delete;
59
+
60
+ /**
61
+ * Move the currently held elements to a new list.
62
+ * The current list becomes empty, but concurrent threads
63
+ * might still add new elements to it.
64
+ *
65
+ * Equivalent to calling a move constructor, but more linter-friendly
66
+ * in case you still need the old list.
67
+ */
68
+ AtomicIntrusiveLinkedList spliceAll() { return std::move(*this); }
69
+
70
+ /**
71
+ * Move-assign the current list to `other`, then reverse-sweep
72
+ * the old list with the provided callback `func`.
73
+ *
74
+ * A safe replacement for the move assignment operator, which is absent
75
+ * because of the resource leak concerns.
76
+ */
77
+ template <typename F>
78
+ void reverseSweepAndAssign(AtomicIntrusiveLinkedList&& other, F&& func) {
79
+ auto otherHead = other.head_.exchange(nullptr, std::memory_order_acq_rel);
80
+ auto head = head_.exchange(otherHead, std::memory_order_acq_rel);
81
+ unlinkAll(head, std::forward<F>(func));
82
+ }
83
+
84
+ /**
85
+ * Note: The list must be empty on destruction.
86
+ */
87
+ ~AtomicIntrusiveLinkedList() { assert(empty()); }
88
+
89
+ /**
90
+ * Returns the current head of the list.
91
+ *
92
+ * WARNING: The returned pointer might not be valid if the list
93
+ * is modified concurrently!
94
+ */
95
+ T* unsafeHead() const { return head_.load(std::memory_order_acquire); }
96
+
97
+ /**
98
+ * Returns true if the list is empty.
99
+ *
100
+ * WARNING: This method's return value is only valid for a snapshot
101
+ * of the state, it might become stale as soon as it's returned.
102
+ */
103
+ bool empty() const { return unsafeHead() == nullptr; }
104
+
105
+ /**
106
+ * Atomically insert t at the head of the list.
107
+ * @return True if the inserted element is the only one in the list
108
+ * after the call.
109
+ */
110
+ bool insertHead(T* t) {
111
+ assert(next(t) == nullptr);
112
+
113
+ auto oldHead = head_.load(std::memory_order_relaxed);
114
+ do {
115
+ next(t) = oldHead;
116
+ /* oldHead is updated by the call below.
117
+
118
+ NOTE: we don't use next(t) instead of oldHead directly due to
119
+ compiler bugs (GCC prior to 4.8.3 (bug 60272), clang (bug 18899),
120
+ MSVC (bug 819819); source:
121
+ http://en.cppreference.com/w/cpp/atomic/atomic/compare_exchange */
122
+ } while (!head_.compare_exchange_weak(
123
+ oldHead, t, std::memory_order_release, std::memory_order_relaxed));
124
+
125
+ return oldHead == nullptr;
126
+ }
127
+
128
+ /**
129
+ * Replaces the head with nullptr,
130
+ * and calls func() on the removed elements in the order from tail to head.
131
+ * Returns false if the list was empty.
132
+ */
133
+ template <typename F>
134
+ bool sweepOnce(F&& func) {
135
+ if (auto head = head_.exchange(nullptr, std::memory_order_acq_rel)) {
136
+ auto rhead = reverse(head);
137
+ unlinkAll(rhead, std::forward<F>(func));
138
+ return true;
139
+ }
140
+ return false;
141
+ }
142
+
143
+ /**
144
+ * Repeatedly replaces the head with nullptr,
145
+ * and calls func() on the removed elements in the order from tail to head.
146
+ * Stops when the list is empty.
147
+ */
148
+ template <typename F>
149
+ void sweep(F&& func) {
150
+ while (sweepOnce(func)) {
151
+ }
152
+ }
153
+
154
+ /**
155
+ * Similar to sweep() but calls func() on elements in LIFO order.
156
+ *
157
+ * func() is called for all elements in the list at the moment
158
+ * reverseSweep() is called. Unlike sweep() it does not loop to ensure the
159
+ * list is empty at some point after the last invocation. This way callers
160
+ * can reason about the ordering: elements inserted since the last call to
161
+ * reverseSweep() will be provided in LIFO order.
162
+ *
163
+ * Example: if elements are inserted in the order 1-2-3, the callback is
164
+ * invoked 3-2-1. If the callback moves elements onto a stack, popping off
165
+ * the stack will produce the original insertion order 1-2-3.
166
+ */
167
+ template <typename F>
168
+ void reverseSweep(F&& func) {
169
+ // We don't loop like sweep() does because the overall order of callbacks
170
+ // would be strand-wise LIFO which is meaningless to callers.
171
+ auto head = head_.exchange(nullptr, std::memory_order_acq_rel);
172
+ unlinkAll(head, std::forward<F>(func));
173
+ }
174
+
175
+ private:
176
+ std::atomic<T*> head_{nullptr};
177
+
178
+ static T*& next(T* t) { return (t->*HookMember).next; }
179
+
180
+ /* Reverses a linked list, returning the pointer to the new head
181
+ (old tail) */
182
+ static T* reverse(T* head) {
183
+ T* rhead = nullptr;
184
+ while (head != nullptr) {
185
+ auto t = head;
186
+ head = next(t);
187
+ next(t) = rhead;
188
+ rhead = t;
189
+ }
190
+ return rhead;
191
+ }
192
+
193
+ /* Unlinks all elements in the linked list fragment pointed to by `head',
194
+ * calling func() on every element */
195
+ template <typename F>
196
+ static void unlinkAll(T* head, F&& func) {
197
+ while (head != nullptr) {
198
+ auto t = head;
199
+ head = next(t);
200
+ next(t) = nullptr;
201
+ func(t);
202
+ }
203
+ }
204
+ };
205
+
206
+ } // namespace folly