com.wallstop-studios.unity-helpers 2.0.0-rc79.2 → 2.0.0-rc79.4

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 (324) hide show
  1. package/.github/dependabot.yml +6 -0
  2. package/Editor/AnimationEventEditor.cs +1 -1
  3. package/Editor/AssetProcessors/SpriteLabelProcessor.cs +1 -1
  4. package/Editor/CustomDrawers/IntDropdownDrawer.cs +1 -1
  5. package/Editor/CustomDrawers/StringInListeDrawer.cs +1 -1
  6. package/Editor/CustomDrawers/WShowIfPropertyDrawer.cs +1 -1
  7. package/Editor/CustomEditors/MatchColliderToSpriteEditor.cs +1 -1
  8. package/Editor/CustomEditors/MatchColliderToSpriteEditor.cs.meta +1 -1
  9. package/Editor/CustomEditors/PersistentDirectoryGUI.cs +1 -1
  10. package/Editor/CustomEditors/PersistentDirectoryGUI.cs.meta +1 -1
  11. package/Editor/CustomEditors/PolygonCollider2DOptimizerEditor.cs +1 -1
  12. package/Editor/CustomEditors/SourceFolderEntryDrawer.cs +1 -1
  13. package/Editor/CustomEditors/SourceFolderEntryDrawer.cs.meta +1 -1
  14. package/Editor/CustomEditors.meta +1 -1
  15. package/Editor/Extensions/SerializedPropertyExtensions.cs +1 -1
  16. package/Editor/Extensions/UnityExtensions.cs +1 -1
  17. package/Editor/FitTextureSizeWindow.cs +1 -1
  18. package/Editor/PersistentDirectorySettings.cs +1 -1
  19. package/Editor/PersistentDirectorySettings.cs.meta +1 -1
  20. package/Editor/PrefabChecker.cs +1 -1
  21. package/Editor/Sprites/AnimationCopier.cs +1 -1
  22. package/Editor/Sprites/AnimationCopier.cs.meta +1 -1
  23. package/Editor/Sprites/AnimationCreator.cs +1 -1
  24. package/Editor/Sprites/AnimationViewerWindow.cs +1 -1
  25. package/Editor/Sprites/ProjectAnimationSettings.cs +1 -1
  26. package/Editor/Sprites/ScriptableSpriteAtlas.cs +1 -1
  27. package/Editor/Sprites/ScriptableSpriteAtlas.cs.meta +1 -1
  28. package/Editor/Sprites/ScriptableSpriteAtlasEditor.cs +1 -1
  29. package/Editor/Sprites/ScriptableSpriteAtlasEditor.cs.meta +1 -1
  30. package/Editor/Sprites/SpriteCropper.cs +1 -1
  31. package/Editor/Sprites/SpritePivotAdjustor.cs +1 -1
  32. package/Editor/Sprites/SpriteSettingsApplier.cs +1 -1
  33. package/Editor/Sprites/SpriteSettingsApplier.cs.meta +1 -1
  34. package/Editor/Sprites/SpriteSheetAnimationCreator.cs +1 -1
  35. package/Editor/Sprites/TextureResizerWizard.cs +1 -1
  36. package/Editor/Sprites/TextureResizerWizard.cs.meta +1 -1
  37. package/Editor/Sprites/TextureSettingsApplier.cs +1 -1
  38. package/Editor/Sprites/TextureSettingsApplier.cs.meta +1 -1
  39. package/Editor/Sprites.meta +1 -1
  40. package/Editor/Tools/ImageBlurTool.cs +1 -1
  41. package/Editor/Tools/ImageBlurTool.cs.meta +1 -1
  42. package/Editor/Tools.meta +1 -1
  43. package/Editor/Utils/DxReadOnlyPropertyDrawer.cs +1 -1
  44. package/Editor/Utils/EditorUtilities.cs +1 -1
  45. package/Editor/Utils/ScriptableObjectSingletonCreator.cs +1 -1
  46. package/Editor/Visuals/EnhancedImageEditor.cs +1 -1
  47. package/Editor/Visuals.meta +1 -1
  48. package/Runtime/Binaries/System.Text.Encodings.Web.xml +1 -1
  49. package/Runtime/Binaries/System.Text.Json.xml +1 -1
  50. package/Runtime/Core/Attributes/AnimationEventAttribute.cs +1 -1
  51. package/Runtime/Core/Attributes/ChildComponentAttribute.cs +1 -1
  52. package/Runtime/Core/Attributes/DxReadOnlyAttribute.cs +1 -1
  53. package/Runtime/Core/Attributes/EnumDisplayNameAttribute.cs +1 -1
  54. package/Runtime/Core/Attributes/IntDropdownAttribute.cs +1 -1
  55. package/Runtime/Core/Attributes/KSerializableAttribute.cs +1 -1
  56. package/Runtime/Core/Attributes/NotNullAttribute.cs +1 -1
  57. package/Runtime/Core/Attributes/ParentComponent.cs +1 -1
  58. package/Runtime/Core/Attributes/RelationalComponentExtensions.cs +1 -1
  59. package/Runtime/Core/Attributes/SiblingComponentAttribute.cs +1 -1
  60. package/Runtime/Core/Attributes/ValidateAssignmentAttribute.cs +1 -1
  61. package/Runtime/Core/Attributes/WShowIfAttribute.cs +1 -1
  62. package/Runtime/Core/DataStructure/Adapters/FastVector2Int.cs +1 -1
  63. package/Runtime/Core/DataStructure/Adapters/FastVector3Int.cs +1 -1
  64. package/Runtime/Core/DataStructure/Adapters/KGuid.cs +1 -1
  65. package/Runtime/Core/DataStructure/Adapters/KVector2.cs +1 -1
  66. package/Runtime/Core/DataStructure/Circle.cs +1 -1
  67. package/Runtime/Core/DataStructure/CyclicBuffer.cs +1 -1
  68. package/Runtime/Core/DataStructure/ISpatialTree.cs +1 -1
  69. package/Runtime/Core/DataStructure/KDTree.cs +1 -1
  70. package/Runtime/Core/DataStructure/QuadTree.cs +1 -1
  71. package/Runtime/Core/DataStructure/RTree.cs +1 -1
  72. package/Runtime/Core/DataStructure/StringWrapper.cs +1 -1
  73. package/Runtime/Core/DataStructure/TimedCache.cs +1 -1
  74. package/Runtime/Core/DataStructure/Trie.cs +1 -1
  75. package/Runtime/Core/Extension/AnimatorExtensions.cs +1 -1
  76. package/Runtime/Core/Extension/AsyncOperationExtensions.cs +1 -1
  77. package/Runtime/Core/Extension/CircleExtensions.cs +1 -1
  78. package/Runtime/Core/Extension/ColorExtensions.cs +1 -1
  79. package/Runtime/Core/Extension/DictionaryExtensions.cs +1 -1
  80. package/Runtime/Core/Extension/DirectionExtensions.cs +1 -1
  81. package/Runtime/Core/Extension/EnumExtensions.cs +1 -1
  82. package/Runtime/Core/Extension/HashSetExtensions.cs +1 -1
  83. package/Runtime/Core/Extension/IEnumerableExtensions.cs +1 -1
  84. package/Runtime/Core/Extension/IListExtensions.cs +1 -1
  85. package/Runtime/Core/Extension/IReadonlyListExtensions.cs +37 -0
  86. package/Runtime/Core/Extension/IReadonlyListExtensions.cs.meta +3 -0
  87. package/Runtime/Core/Extension/RandomExtensions.cs +1 -1
  88. package/Runtime/Core/Extension/StringExtensions.cs +1 -1
  89. package/Runtime/Core/Extension/UnityExtensions.cs +1 -1
  90. package/Runtime/Core/Extension/WallstopStudiosLogger.cs +1 -1
  91. package/Runtime/Core/Helper/ArrayConverter.cs +1 -1
  92. package/Runtime/Core/Helper/ArrayConverter.cs.meta +1 -1
  93. package/Runtime/Core/Helper/AssignUtilities.cs +1 -1
  94. package/Runtime/Core/Helper/DirectoryHelper.cs +1 -1
  95. package/Runtime/Core/Helper/DirectoryHelper.cs.meta +1 -1
  96. package/Runtime/Core/Helper/Enumerables.cs +1 -1
  97. package/Runtime/Core/Helper/FileHelper.cs +1 -1
  98. package/Runtime/Core/Helper/FormattingHelpers.cs +1 -1
  99. package/Runtime/Core/Helper/Geometry.cs +1 -1
  100. package/Runtime/Core/Helper/Helpers.cs +1 -1
  101. package/Runtime/Core/Helper/IterationHelpers.cs +1 -1
  102. package/Runtime/Core/Helper/LifetimeHelpers.cs +1 -1
  103. package/Runtime/Core/Helper/LineHelper.cs +1 -1
  104. package/Runtime/Core/Helper/Logging/UnityLogTagFormatter.cs +1 -1
  105. package/Runtime/Core/Helper/Objects.cs +1 -1
  106. package/Runtime/Core/Helper/Partials/LogHelpers.cs +1 -1
  107. package/Runtime/Core/Helper/Partials/LogHelpers.cs.meta +1 -1
  108. package/Runtime/Core/Helper/Partials/MathHelpers.cs +1 -1
  109. package/Runtime/Core/Helper/Partials/MathHelpers.cs.meta +1 -1
  110. package/Runtime/Core/Helper/Partials/ObjectHelpers.cs +1 -1
  111. package/Runtime/Core/Helper/Partials/ObjectHelpers.cs.meta +1 -1
  112. package/Runtime/Core/Helper/Partials/TransformHelpers.cs +1 -1
  113. package/Runtime/Core/Helper/Partials/TransformHelpers.cs.meta +1 -1
  114. package/Runtime/Core/Helper/Partials.meta +1 -1
  115. package/Runtime/Core/Helper/PathHelper.cs +1 -1
  116. package/Runtime/Core/Helper/PathHelper.cs.meta +1 -1
  117. package/Runtime/Core/Helper/ReflectionHelpers.cs +1 -1
  118. package/Runtime/Core/Helper/ReflectionHelpers.cs.meta +1 -1
  119. package/Runtime/Core/Helper/SceneHelper.cs +1 -1
  120. package/Runtime/Core/Helper/SpriteHelpers.cs +1 -1
  121. package/Runtime/Core/Helper/StringInList.cs +1 -1
  122. package/Runtime/Core/Helper/UnityMainThreadDispatcher.cs +1 -1
  123. package/Runtime/Core/Helper/WallMath.cs +1 -1
  124. package/Runtime/Core/Math/Line.cs +1 -1
  125. package/Runtime/Core/Math/Parabola.cs +1 -1
  126. package/Runtime/Core/Math/PointPolygonCheck.cs +1 -1
  127. package/Runtime/Core/Math/Range.cs +1 -1
  128. package/Runtime/Core/Math/XXHash.cs +1 -1
  129. package/Runtime/Core/Model/Direction.cs +1 -1
  130. package/Runtime/Core/OneOf/FastOneOf.cs +1 -1
  131. package/Runtime/Core/OneOf/None.cs +1 -1
  132. package/Runtime/Core/Random/AbstractRandom.cs +1 -1
  133. package/Runtime/Core/Random/DotNetRandom.cs +1 -1
  134. package/Runtime/Core/Random/DotNetRandom.cs.meta +1 -1
  135. package/Runtime/Core/Random/IRandom.cs +1 -1
  136. package/Runtime/Core/Random/IllusionFlow.cs +1 -1
  137. package/Runtime/Core/Random/IllusionFlow.cs.meta +1 -1
  138. package/Runtime/Core/Random/LinearCongruentialGenerator.cs +1 -1
  139. package/Runtime/Core/Random/NativePcgRandom.cs +1 -1
  140. package/Runtime/Core/Random/PRNG.cs +1 -1
  141. package/Runtime/Core/Random/PRNG.cs.meta +1 -1
  142. package/Runtime/Core/Random/PcgRandom.cs +1 -1
  143. package/Runtime/Core/Random/PerlinNoise.cs +1 -1
  144. package/Runtime/Core/Random/PerlinNoise.cs.meta +1 -1
  145. package/Runtime/Core/Random/RandomState.cs +1 -1
  146. package/Runtime/Core/Random/RandomUtilities.cs +1 -1
  147. package/Runtime/Core/Random/RomuDuo.cs +1 -1
  148. package/Runtime/Core/Random/RomuDuo.cs.meta +1 -1
  149. package/Runtime/Core/Random/SplitMix64.cs +1 -1
  150. package/Runtime/Core/Random/SquirrelRandom.cs +1 -1
  151. package/Runtime/Core/Random/SystemRandom.cs +1 -1
  152. package/Runtime/Core/Random/ThreadLocalRandom.cs +1 -1
  153. package/Runtime/Core/Random/UnityRandom.cs +1 -1
  154. package/Runtime/Core/Random/WyRandom.cs +1 -1
  155. package/Runtime/Core/Random/WyRandom.cs.meta +1 -1
  156. package/Runtime/Core/Random/XorShiftRandom.cs +1 -1
  157. package/Runtime/Core/Random/XoroShiroRandom.cs +1 -1
  158. package/Runtime/Core/Random/XoroShiroRandom.cs.meta +1 -1
  159. package/Runtime/Core/Serialization/JsonConverters/ColorConverter.cs +1 -1
  160. package/Runtime/Core/Serialization/JsonConverters/GameObjectConverter.cs +1 -1
  161. package/Runtime/Core/Serialization/JsonConverters/Matrix4x4Converter.cs +1 -1
  162. package/Runtime/Core/Serialization/JsonConverters/TypeConverter.cs +1 -1
  163. package/Runtime/Core/Serialization/JsonConverters/Vector2Converter.cs +1 -1
  164. package/Runtime/Core/Serialization/JsonConverters/Vector3Converter.cs +1 -1
  165. package/Runtime/Core/Serialization/JsonConverters/Vector4Converter.cs +1 -1
  166. package/Runtime/Core/Serialization/Serializer.cs +1 -1
  167. package/Runtime/Core/Threading/SingleThreadedThreadPool.cs +1 -1
  168. package/Runtime/Tags/Attribute.cs +1 -1
  169. package/Runtime/Tags/AttributeEffect.cs +1 -1
  170. package/Runtime/Tags/AttributeModification.cs +1 -1
  171. package/Runtime/Tags/AttributeUtilities.cs +1 -1
  172. package/Runtime/Tags/AttributesComponent.cs +1 -1
  173. package/Runtime/Tags/CollisionSenses.cs +1 -1
  174. package/Runtime/Tags/CosmeticEffectComponent.cs +1 -1
  175. package/Runtime/Tags/CosmeticEffectData.cs +1 -1
  176. package/Runtime/Tags/EffectHandle.cs +1 -1
  177. package/Runtime/Tags/EffectHandler.cs +1 -1
  178. package/Runtime/Tags/ModificationAction.cs +1 -1
  179. package/Runtime/Tags/ModifierDurationType.cs +1 -1
  180. package/Runtime/Tags/TagHandler.cs +1 -1
  181. package/Runtime/Utils/AnimationEventEqualityComparer.cs +1 -1
  182. package/Runtime/Utils/AnimatorEnumStateMachine.cs +1 -1
  183. package/Runtime/Utils/Ascii85.cs +1 -1
  184. package/Runtime/Utils/Ascii85.cs.meta +1 -1
  185. package/Runtime/Utils/Buffers.cs +119 -3
  186. package/Runtime/Utils/CenterPointOffset.cs +1 -1
  187. package/Runtime/Utils/CenterPointOffset.cs.meta +1 -1
  188. package/Runtime/Utils/ChildSpawner.cs +1 -1
  189. package/Runtime/Utils/CircleLineRenderer.cs +1 -1
  190. package/Runtime/Utils/CollisionProxy.cs +1 -1
  191. package/Runtime/Utils/CoroutineHandler.cs +1 -1
  192. package/Runtime/Utils/CoroutineHandler.cs.meta +1 -1
  193. package/Runtime/Utils/DeferredDisposalResult.cs +1 -1
  194. package/Runtime/Utils/LZMA.cs +1 -1
  195. package/Runtime/Utils/LZMA.cs.meta +1 -1
  196. package/Runtime/Utils/MatchColliderToSprite.cs +1 -1
  197. package/Runtime/Utils/MatchColliderToSprite.cs.meta +1 -1
  198. package/Runtime/Utils/MatchTransform.cs +1 -1
  199. package/Runtime/Utils/MatchTransform.cs.meta +1 -1
  200. package/Runtime/Utils/Oscillator.cs +1 -1
  201. package/Runtime/Utils/PolygonCollider2DOptimizer.cs +1 -1
  202. package/Runtime/Utils/RuntimeSingleton.cs +1 -1
  203. package/Runtime/Utils/ScriptableObjectSingleton.cs +1 -1
  204. package/Runtime/Utils/SerializedStringComparer.cs +1 -1
  205. package/Runtime/Utils/SetTextureImportData.cs +1 -1
  206. package/Runtime/Utils/SevenZip/Common.meta +1 -1
  207. package/Runtime/Utils/SevenZip.meta +1 -1
  208. package/Runtime/Utils/SpriteRendererMetadata.cs +1 -1
  209. package/Runtime/Utils/SpriteRendererMetadata.cs.meta +1 -1
  210. package/Runtime/Utils/SpriteRendererSyncer.cs +1 -1
  211. package/Runtime/Utils/SpriteRendererSyncer.cs.meta +1 -1
  212. package/Runtime/Utils/StartTracker.cs +1 -1
  213. package/Runtime/Utils/StartTracker.cs.meta +1 -1
  214. package/Runtime/Utils/TextureScale.cs +1 -1
  215. package/Runtime/Utils/TextureScale.cs.meta +1 -1
  216. package/Runtime/Utils/TypeNameSorter.cs +1 -1
  217. package/Runtime/Utils/UnityObjectNameComparer.cs +1 -1
  218. package/Runtime/Utils/UnityObjectNameComparer.cs.meta +1 -1
  219. package/Runtime/Visuals/AnimatedSpriteLayer.cs +1 -1
  220. package/Runtime/Visuals/AnimatedSpriteLayer.cs.meta +1 -1
  221. package/Runtime/Visuals/UGUI/EnhancedImage.cs +1 -1
  222. package/Runtime/Visuals/UGUI/EnhancedImage.cs.meta +1 -1
  223. package/Runtime/Visuals/UGUI.meta +1 -1
  224. package/Runtime/Visuals/UIToolkit/LayeredImage.cs +1 -1
  225. package/Runtime/Visuals/UIToolkit/MultiFileSelectorElement.cs +1 -1
  226. package/Runtime/Visuals/UIToolkit.meta +1 -1
  227. package/Styles/Elements/Progress/ArcedProgressBar.cs +1 -1
  228. package/Styles/Elements/Progress/ArcedProgressBar.cs.meta +1 -1
  229. package/Styles/Elements/Progress/CircularProgressBar.cs +1 -1
  230. package/Styles/Elements/Progress/CircularProgressBar.cs.meta +1 -1
  231. package/Styles/Elements/Progress/GlitchProgressBar.cs +1 -1
  232. package/Styles/Elements/Progress/GlitchProgressBar.cs.meta +1 -1
  233. package/Styles/Elements/Progress/LiquidProgressBar.cs +1 -1
  234. package/Styles/Elements/Progress/LiquidProgressBar.cs.meta +1 -1
  235. package/Styles/Elements/Progress/MarchingAntsProgressBar.cs +1 -1
  236. package/Styles/Elements/Progress/MarchingAntsProgressBar.cs.meta +1 -1
  237. package/Styles/Elements/Progress/RegularProgressBar.cs +1 -1
  238. package/Styles/Elements/Progress/RegularProgressBar.cs.meta +1 -1
  239. package/Styles/Elements/Progress/WigglyProgressBar.cs +1 -1
  240. package/Styles/Elements/Progress/WigglyProgressBar.cs.meta +1 -1
  241. package/Styles/Elements/Progress.meta +1 -1
  242. package/Styles/Elements.meta +1 -1
  243. package/Styles/USS/ArcedProgressBar.uss +1 -1
  244. package/Styles/USS/ArcedProgressBar.uss.meta +1 -1
  245. package/Styles/USS/CirclularProgressBar.uss +1 -1
  246. package/Styles/USS/CirclularProgressBar.uss.meta +1 -1
  247. package/Styles/USS/RegularProgressBar.uss +1 -1
  248. package/Styles/USS/RegularProgressBar.uss.meta +1 -1
  249. package/Styles/USS/WigglyProgressBar.uss +1 -1
  250. package/Styles/USS/WigglyProgressBar.uss.meta +1 -1
  251. package/Styles/USS.meta +1 -1
  252. package/Styles.meta +1 -1
  253. package/Tests/Runtime/Attributes/ChildComponentTests.cs +1 -1
  254. package/Tests/Runtime/Attributes/Components/ExpectChildSpriteRenderers.cs +1 -1
  255. package/Tests/Runtime/Attributes/Components/ExpectParentSpriteRenderers.cs +1 -1
  256. package/Tests/Runtime/Attributes/ParentComponentTests.cs +1 -1
  257. package/Tests/Runtime/Components/RelationalComponentTesterComplex.cs +1 -1
  258. package/Tests/Runtime/Components/RelationalComponentTesterComplex.cs.meta +1 -1
  259. package/Tests/Runtime/Components/RelationalComponentsTesterSimple.cs +1 -1
  260. package/Tests/Runtime/Components.meta +1 -1
  261. package/Tests/Runtime/DataStructures/BalancedKDTreeTests.cs +1 -1
  262. package/Tests/Runtime/DataStructures/CyclicBufferTests.cs +1 -1
  263. package/Tests/Runtime/DataStructures/CyclicBufferTests.cs.meta +1 -1
  264. package/Tests/Runtime/DataStructures/QuadTreeTests.cs +1 -1
  265. package/Tests/Runtime/DataStructures/SpatialTreeTests.cs +1 -1
  266. package/Tests/Runtime/DataStructures/UnbalancedKDTreeTests.cs +1 -1
  267. package/Tests/Runtime/Extensions/DictionaryExtensionTests.cs +1 -1
  268. package/Tests/Runtime/Extensions/DictionaryExtensionTests.cs.meta +1 -1
  269. package/Tests/Runtime/Extensions/EnumExtensionTests.cs +1 -1
  270. package/Tests/Runtime/Extensions/IListExtensionTests.cs +1 -1
  271. package/Tests/Runtime/Extensions/IListExtensionTests.cs.meta +1 -1
  272. package/Tests/Runtime/Extensions/IReadonlyListExtensionTests.cs +58 -0
  273. package/Tests/Runtime/Extensions/IReadonlyListExtensionTests.cs.meta +3 -0
  274. package/Tests/Runtime/Extensions/LoggingExtensionTests.cs +1 -1
  275. package/Tests/Runtime/Extensions/RandomExtensionTests.cs +1 -1
  276. package/Tests/Runtime/Extensions/RandomExtensionTests.cs.meta +1 -1
  277. package/Tests/Runtime/Extensions/StringExtensionTests.cs +1 -1
  278. package/Tests/Runtime/Extensions/StringExtensionTests.cs.meta +1 -1
  279. package/Tests/Runtime/Extensions.meta +1 -1
  280. package/Tests/Runtime/Helper/ArrayConverterTests.cs +1 -1
  281. package/Tests/Runtime/Helper/ArrayConverterTests.cs.meta +1 -1
  282. package/Tests/Runtime/Helper/FormattingHelperTests.cs +1 -1
  283. package/Tests/Runtime/Helper/FormattingHelperTests.cs.meta +1 -1
  284. package/Tests/Runtime/Helper/ObjectHelperTests.cs +1 -1
  285. package/Tests/Runtime/Helper/ObjectHelperTests.cs.meta +1 -1
  286. package/Tests/Runtime/Helper/ReflectionHelperTests.cs +1 -1
  287. package/Tests/Runtime/Helper/SceneHelperTests.cs +1 -1
  288. package/Tests/Runtime/Helper/WallMathTests.cs +1 -1
  289. package/Tests/Runtime/Helper/WallMathTests.cs.meta +1 -1
  290. package/Tests/Runtime/Helper.meta +1 -1
  291. package/Tests/Runtime/Performance/KDTreePerformanceTests.cs +1 -1
  292. package/Tests/Runtime/Performance/ListExtensionPerformanceTests.cs +1 -1
  293. package/Tests/Runtime/Performance/ListExtensionPerformanceTests.cs.meta +1 -1
  294. package/Tests/Runtime/Performance/QuadTreePerformanceTests.cs +1 -1
  295. package/Tests/Runtime/Performance/RandomPerformanceTests.cs +1 -1
  296. package/Tests/Runtime/Performance/RelationComponentPerformanceTests.cs +1 -1
  297. package/Tests/Runtime/Performance/SpatialTreePerformanceTest.cs +1 -1
  298. package/Tests/Runtime/Performance/UnbalancedKDTreeTests.cs +1 -1
  299. package/Tests/Runtime/Random/DotNetRandomTests.cs +1 -1
  300. package/Tests/Runtime/Random/DotNetRandomTests.cs.meta +1 -1
  301. package/Tests/Runtime/Random/IllusionFlowTests.cs +1 -1
  302. package/Tests/Runtime/Random/IllusionFlowTests.cs.meta +1 -1
  303. package/Tests/Runtime/Random/LinearCongruentialGeneratorTests.cs +1 -1
  304. package/Tests/Runtime/Random/RandomTestBase.cs +1 -1
  305. package/Tests/Runtime/Random/RomuDuoRandomTests.cs +1 -1
  306. package/Tests/Runtime/Random/RomuDuoRandomTests.cs.meta +1 -1
  307. package/Tests/Runtime/Random/SplitMix64RandomTests.cs +1 -1
  308. package/Tests/Runtime/Random/SquirrelRandomTests.cs +1 -1
  309. package/Tests/Runtime/Random/SystemRandomTests.cs +1 -1
  310. package/Tests/Runtime/Random/UnityRandomTests.cs +1 -1
  311. package/Tests/Runtime/Random/WyRandomTests.cs +1 -1
  312. package/Tests/Runtime/Random/WyRandomTests.cs.meta +1 -1
  313. package/Tests/Runtime/Random/XorShiftRandomTests.cs +1 -1
  314. package/Tests/Runtime/Random/XoroShiroRandomTests.cs +1 -1
  315. package/Tests/Runtime/Random/XoroShiroRandomTests.cs.meta +1 -1
  316. package/Tests/Runtime/Serialization/JsonSerializationTest.cs +1 -1
  317. package/Tests/Runtime/Serialization/JsonSerializationTest.cs.meta +1 -1
  318. package/Tests/Runtime/Serialization.meta +1 -1
  319. package/Tests/Runtime/Utils/BuffersTests.cs +55 -0
  320. package/Tests/Runtime/Utils/BuffersTests.cs.meta +3 -0
  321. package/Tests/Runtime/Utils/SpriteRendererMetadataTests.cs +1 -1
  322. package/Tests/Runtime/Utils/SpriteRendererMetadataTests.cs.meta +1 -1
  323. package/Tests/Runtime/Utils.meta +1 -1
  324. package/package.json +3 -1
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using Core.Extension;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System.Collections.Generic;
4
4
  using Core.Extension;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Threading;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  public enum ModificationAction
4
4
  {
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
 
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Tags
1
+ namespace WallstopStudios.UnityHelpers.Tags
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 852c7e2a84f64cfc9e5e44b0f5d1f597
3
3
  timeCreated: 1756399903
@@ -1,6 +1,8 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
+ using System;
3
4
  using System.Collections.Generic;
5
+ using System.Reflection;
4
6
  using System.Text;
5
7
  using UnityEngine;
6
8
 
@@ -27,11 +29,125 @@
27
29
 
28
30
  public static class Buffers<T>
29
31
  {
30
- public static readonly T[] Array = new T[Buffers.BufferSize];
31
32
  public static readonly List<T> List = new();
32
33
  public static readonly HashSet<T> HashSet = new();
33
34
  public static readonly Queue<T> Queue = new();
34
35
  public static readonly Stack<T> Stack = new();
35
- public static readonly LinkedList<T> LinkedList = new();
36
+ }
37
+
38
+ public static class GenericPool<T>
39
+ where T : new()
40
+ {
41
+ private static readonly List<T> _pool = new();
42
+ private static readonly Action<T> _clearAction = GetClearAction();
43
+ private static readonly Action<T> _onDispose = Release;
44
+
45
+ public static PooledResource<T> Get()
46
+ {
47
+ if (_pool.Count == 0)
48
+ {
49
+ return new PooledResource<T>(new T(), _onDispose);
50
+ }
51
+
52
+ int lastIndex = _pool.Count - 1;
53
+ T instance = _pool[lastIndex];
54
+ _pool.RemoveAt(lastIndex);
55
+ return new PooledResource<T>(instance, _onDispose);
56
+ }
57
+
58
+ private static Action<T> GetClearAction()
59
+ {
60
+ Type type = typeof(T);
61
+ foreach (
62
+ MethodInfo method in type.GetMethods(BindingFlags.Instance | BindingFlags.Public)
63
+ )
64
+ {
65
+ if (
66
+ string.Equals(method.Name, "Clear", StringComparison.Ordinal)
67
+ && method.GetParameters().Length == 0
68
+ )
69
+ {
70
+ return (Action<T>)Delegate.CreateDelegate(typeof(Action<T>), method);
71
+ }
72
+ }
73
+
74
+ return _ => { };
75
+ }
76
+
77
+ private static void Release(T resource)
78
+ {
79
+ _clearAction.Invoke(resource);
80
+ _pool.Add(resource);
81
+ }
82
+ }
83
+
84
+ public static class ArrayPool<T>
85
+ {
86
+ private static readonly Dictionary<int, List<T[]>> _pool = new();
87
+ private static readonly Action<T[]> _onDispose = Release;
88
+
89
+ public static PooledResource<T[]> Get(int size)
90
+ {
91
+ switch (size)
92
+ {
93
+ case < 0:
94
+ {
95
+ throw new ArgumentOutOfRangeException(
96
+ nameof(size),
97
+ size,
98
+ "Must be non-negative."
99
+ );
100
+ }
101
+ case 0:
102
+ {
103
+ return new PooledResource<T[]>(Array.Empty<T>(), _ => { });
104
+ }
105
+ }
106
+
107
+ if (!_pool.TryGetValue(size, out List<T[]> pool))
108
+ {
109
+ pool = new List<T[]>();
110
+ _pool[size] = pool;
111
+ }
112
+
113
+ if (pool.Count == 0)
114
+ {
115
+ return new PooledResource<T[]>(new T[size], _onDispose);
116
+ }
117
+
118
+ int lastIndex = pool.Count - 1;
119
+ T[] instance = pool[lastIndex];
120
+ pool.RemoveAt(lastIndex);
121
+ return new PooledResource<T[]>(instance, _onDispose);
122
+ }
123
+
124
+ private static void Release(T[] resource)
125
+ {
126
+ int length = resource.Length;
127
+ Array.Clear(resource, 0, length);
128
+ if (!_pool.TryGetValue(length, out List<T[]> pool))
129
+ {
130
+ pool = new List<T[]>();
131
+ _pool[resource.Length] = pool;
132
+ }
133
+ pool.Add(resource);
134
+ }
135
+ }
136
+
137
+ public readonly struct PooledResource<T> : IDisposable
138
+ {
139
+ public readonly T resource;
140
+ private readonly Action<T> _onDispose;
141
+
142
+ internal PooledResource(T resource, Action<T> onDispose)
143
+ {
144
+ this.resource = resource;
145
+ _onDispose = onDispose ?? throw new ArgumentNullException(nameof(onDispose));
146
+ }
147
+
148
+ public void Dispose()
149
+ {
150
+ _onDispose(resource);
151
+ }
36
152
  }
37
153
  }
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using Core.Attributes;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: f1e1dfbe10214f8b8f30acd34d67aa7f
3
3
  timeCreated: 1720737954
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System.Collections.Generic;
4
4
  using System.Linq;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using UnityEngine;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  public sealed class CoroutineHandler : RuntimeSingleton<CoroutineHandler> { }
4
4
  }
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: ba52cce99edd4592999c269422e4f20a
3
3
  timeCreated: 1720740992
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Threading.Tasks;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  // LzmaHelper.cs - A wrapper for the LZMA SDK
4
4
  using System;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: a40192abcf3c407080bcba2fc551e225
3
3
  timeCreated: 1756402526
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 90f375924f7247ab87a73467faae06b7
3
3
  timeCreated: 1720738383
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 1287651a73274b489dcb1b258c556059
3
3
  timeCreated: 1753459338
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using UnityEngine;
4
4
 
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using Core.Attributes;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using UnityEngine;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using UnityEditor;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 1aabbf2e9b0c44cab7a350196de304ee
3
3
  timeCreated: 1756403037
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: b50148f261fa4c4a8213a71f58979c37
3
3
  timeCreated: 1756402876
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System.Collections.Generic;
4
4
  using System.Linq;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 7b2d3d00a0e140fea968fea4859c1781
3
3
  timeCreated: 1720397272
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using Core.Attributes;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: ec3a379f59bc407f92daaab2a3d4e089
3
3
  timeCreated: 1720400998
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using UnityEngine;
4
4
 
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: a3a542214e594fd199901492cbaaceac
3
3
  timeCreated: 1744835337
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System.Threading;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 985292b70519406bafda70e5ab4e06ce
3
3
  timeCreated: 1720667849
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Utils
1
+ namespace WallstopStudios.UnityHelpers.Utils
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 24d2fd0003b641b7be52bc54e743be35
3
3
  timeCreated: 1744989641
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Visuals
1
+ namespace WallstopStudios.UnityHelpers.Visuals
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: e009b64529cc4ffab131f88c19107534
3
3
  timeCreated: 1752518837
@@ -1,4 +1,4 @@
1
- /*
1
+ /*
2
2
  Original implementation provided by JWoe
3
3
  */
4
4
 
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 472d8cff7f974d96a300628f2378d3a1
3
3
  timeCreated: 1752518479
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: e6310918ad5249a588dafdbaef3b56d9
3
3
  timeCreated: 1752518413
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Visuals.UIToolkit
1
+ namespace WallstopStudios.UnityHelpers.Visuals.UIToolkit
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Visuals.UIToolkit
1
+ namespace WallstopStudios.UnityHelpers.Visuals.UIToolkit
2
2
  {
3
3
  using System;
4
4
  using System.Collections.Generic;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: c946717a68e84eacab89e3d4efb2a37b
3
3
  timeCreated: 1752518403
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using System.ComponentModel;
4
4
  using Core.Helper;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 113bae024ddc4a39ab3d77e2f34af18a
3
3
  timeCreated: 1746719146
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using System.ComponentModel;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: bb95a7dc54294c45a4a8a41a630ea7cf
3
3
  timeCreated: 1746658631
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using Core.Random;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 992c1f9192b04f798517b68319f1fd25
3
3
  timeCreated: 1746740301
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using UnityEngine;
4
4
  using UnityEngine.UIElements;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: ea08a1426a7942ba924e31942f11046c
3
3
  timeCreated: 1746740255
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using System.Collections.Generic;
4
4
  using System.ComponentModel;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 398af6c9ddce4886ae62b9c281cea020
3
3
  timeCreated: 1746748265
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using System.ComponentModel;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: e5ae36b671184d239f3c9b182d9c0e65
3
3
  timeCreated: 1746656563
@@ -1,4 +1,4 @@
1
- namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
1
+ namespace WallstopStudios.UnityHelpers.Styles.Elements.Progress
2
2
  {
3
3
  using System.ComponentModel;
4
4
  using UnityEngine;
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 5bb2d5afae6043ea9ec6a4b6149e4756
3
3
  timeCreated: 1746728178
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: 54c2408b268c4f39a83623ffd69c3548
3
3
  timeCreated: 1746719104
@@ -1,3 +1,3 @@
1
- fileFormatVersion: 2
1
+ fileFormatVersion: 2
2
2
  guid: d62ee445ad654db29ca90c02e73f0f92
3
3
  timeCreated: 1746656557