data-structure-typed 2.4.0 → 2.4.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 (750) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +2 -3
  3. package/README_CN.md +0 -1
  4. package/dist/cjs/index.cjs +85 -30
  5. package/dist/cjs-legacy/index.cjs +85 -30
  6. package/dist/esm/index.mjs +85 -30
  7. package/dist/esm-legacy/index.mjs +85 -30
  8. package/dist/types/data-structures/binary-tree/tree-map.d.ts +17 -6
  9. package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +13 -5
  10. package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +12 -5
  11. package/dist/types/data-structures/binary-tree/tree-set.d.ts +15 -4
  12. package/dist/types/types/data-structures/binary-tree/tree-map.d.ts +6 -1
  13. package/dist/types/types/data-structures/binary-tree/tree-multi-set.d.ts +6 -1
  14. package/dist/types/types/data-structures/binary-tree/tree-set.d.ts +6 -1
  15. package/dist/umd/data-structure-typed.js +85 -29
  16. package/dist/umd/data-structure-typed.min.js +4 -4
  17. package/package.json +11 -5
  18. package/src/data-structures/binary-tree/tree-map.ts +35 -13
  19. package/src/data-structures/binary-tree/tree-multi-map.ts +41 -20
  20. package/src/data-structures/binary-tree/tree-multi-set.ts +17 -6
  21. package/src/data-structures/binary-tree/tree-set.ts +19 -6
  22. package/src/data-structures/trie/trie.ts +6 -8
  23. package/src/types/data-structures/binary-tree/tree-map.ts +7 -1
  24. package/src/types/data-structures/binary-tree/tree-multi-set.ts +7 -1
  25. package/src/types/data-structures/binary-tree/tree-set.ts +7 -1
  26. package/CMakeLists.txt +0 -52
  27. package/benchmark/report.html +0 -143
  28. package/benchmark/report.json +0 -1972
  29. package/build/CMakeCache.txt +0 -603
  30. package/build/CMakeFiles/4.0.3/CMakeCXXCompiler.cmake +0 -104
  31. package/build/CMakeFiles/4.0.3/CMakeDetermineCompilerABI_CXX.bin +0 -0
  32. package/build/CMakeFiles/4.0.3/CMakeSystem.cmake +0 -15
  33. package/build/CMakeFiles/4.0.3/CompilerIdCXX/CMakeCXXCompilerId.cpp +0 -920
  34. package/build/CMakeFiles/4.0.3/CompilerIdCXX/a.out +0 -0
  35. package/build/CMakeFiles/4.0.3/CompilerIdCXX/apple-sdk.cpp +0 -1
  36. package/build/CMakeFiles/CMakeConfigureLog.yaml +0 -2146
  37. package/build/CMakeFiles/CMakeDirectoryInformation.cmake +0 -16
  38. package/build/CMakeFiles/InstallScripts.json +0 -9
  39. package/build/CMakeFiles/Makefile.cmake +0 -100
  40. package/build/CMakeFiles/Makefile2 +0 -720
  41. package/build/CMakeFiles/TargetDirectories.txt +0 -23
  42. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/DependInfo.cmake +0 -23
  43. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/build.make +0 -114
  44. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/cmake_clean.cmake +0 -11
  45. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/compiler_depend.internal +0 -839
  46. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/compiler_depend.make +0 -2506
  47. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/compiler_depend.ts +0 -2
  48. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/depend.make +0 -2
  49. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/flags.make +0 -10
  50. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/link.txt +0 -1
  51. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/progress.make +0 -3
  52. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/test/performance/data-structures/binary-tree/avl-rb-range-search.test.cpp.o +0 -0
  53. package/build/CMakeFiles/avl-rb-range-search-benchmark.dir/test/performance/data-structures/binary-tree/avl-rb-range-search.test.cpp.o.d +0 -835
  54. package/build/CMakeFiles/avl-tree-benchmark.dir/DependInfo.cmake +0 -23
  55. package/build/CMakeFiles/avl-tree-benchmark.dir/build.make +0 -114
  56. package/build/CMakeFiles/avl-tree-benchmark.dir/cmake_clean.cmake +0 -11
  57. package/build/CMakeFiles/avl-tree-benchmark.dir/compiler_depend.internal +0 -839
  58. package/build/CMakeFiles/avl-tree-benchmark.dir/compiler_depend.make +0 -2506
  59. package/build/CMakeFiles/avl-tree-benchmark.dir/compiler_depend.ts +0 -2
  60. package/build/CMakeFiles/avl-tree-benchmark.dir/depend.make +0 -2
  61. package/build/CMakeFiles/avl-tree-benchmark.dir/flags.make +0 -10
  62. package/build/CMakeFiles/avl-tree-benchmark.dir/link.txt +0 -1
  63. package/build/CMakeFiles/avl-tree-benchmark.dir/progress.make +0 -3
  64. package/build/CMakeFiles/avl-tree-benchmark.dir/test/performance/data-structures/binary-tree/avl-tree.test.cpp.o +0 -0
  65. package/build/CMakeFiles/avl-tree-benchmark.dir/test/performance/data-structures/binary-tree/avl-tree.test.cpp.o.d +0 -835
  66. package/build/CMakeFiles/cmake.check_cache +0 -1
  67. package/build/CMakeFiles/deque-benchmark.dir/DependInfo.cmake +0 -23
  68. package/build/CMakeFiles/deque-benchmark.dir/build.make +0 -114
  69. package/build/CMakeFiles/deque-benchmark.dir/cmake_clean.cmake +0 -11
  70. package/build/CMakeFiles/deque-benchmark.dir/compiler_depend.internal +0 -791
  71. package/build/CMakeFiles/deque-benchmark.dir/compiler_depend.make +0 -2362
  72. package/build/CMakeFiles/deque-benchmark.dir/compiler_depend.ts +0 -2
  73. package/build/CMakeFiles/deque-benchmark.dir/depend.make +0 -2
  74. package/build/CMakeFiles/deque-benchmark.dir/flags.make +0 -10
  75. package/build/CMakeFiles/deque-benchmark.dir/link.txt +0 -1
  76. package/build/CMakeFiles/deque-benchmark.dir/progress.make +0 -3
  77. package/build/CMakeFiles/deque-benchmark.dir/test/performance/data-structures/queue/deque.test.cpp.o +0 -0
  78. package/build/CMakeFiles/deque-benchmark.dir/test/performance/data-structures/queue/deque.test.cpp.o.d +0 -787
  79. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/DependInfo.cmake +0 -23
  80. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/build.make +0 -114
  81. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/cmake_clean.cmake +0 -11
  82. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/compiler_depend.internal +0 -790
  83. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/compiler_depend.make +0 -2359
  84. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/compiler_depend.ts +0 -2
  85. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/depend.make +0 -2
  86. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/flags.make +0 -10
  87. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/link.txt +0 -1
  88. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/progress.make +0 -3
  89. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/test/performance/data-structures/linked-list/doubly-linked-list.test.cpp.o +0 -0
  90. package/build/CMakeFiles/doubly-linked-list-benchmark.dir/test/performance/data-structures/linked-list/doubly-linked-list.test.cpp.o.d +0 -786
  91. package/build/CMakeFiles/hash-map-benchmark.dir/DependInfo.cmake +0 -23
  92. package/build/CMakeFiles/hash-map-benchmark.dir/build.make +0 -114
  93. package/build/CMakeFiles/hash-map-benchmark.dir/cmake_clean.cmake +0 -11
  94. package/build/CMakeFiles/hash-map-benchmark.dir/compiler_depend.internal +0 -790
  95. package/build/CMakeFiles/hash-map-benchmark.dir/compiler_depend.make +0 -2359
  96. package/build/CMakeFiles/hash-map-benchmark.dir/compiler_depend.ts +0 -2
  97. package/build/CMakeFiles/hash-map-benchmark.dir/depend.make +0 -2
  98. package/build/CMakeFiles/hash-map-benchmark.dir/flags.make +0 -10
  99. package/build/CMakeFiles/hash-map-benchmark.dir/link.txt +0 -1
  100. package/build/CMakeFiles/hash-map-benchmark.dir/progress.make +0 -3
  101. package/build/CMakeFiles/hash-map-benchmark.dir/test/performance/data-structures/hash/hash-map.test.cpp.o +0 -0
  102. package/build/CMakeFiles/hash-map-benchmark.dir/test/performance/data-structures/hash/hash-map.test.cpp.o.d +0 -786
  103. package/build/CMakeFiles/heap-benchmark.dir/DependInfo.cmake +0 -23
  104. package/build/CMakeFiles/heap-benchmark.dir/build.make +0 -114
  105. package/build/CMakeFiles/heap-benchmark.dir/cmake_clean.cmake +0 -11
  106. package/build/CMakeFiles/heap-benchmark.dir/compiler_depend.internal +0 -843
  107. package/build/CMakeFiles/heap-benchmark.dir/compiler_depend.make +0 -2518
  108. package/build/CMakeFiles/heap-benchmark.dir/compiler_depend.ts +0 -2
  109. package/build/CMakeFiles/heap-benchmark.dir/depend.make +0 -2
  110. package/build/CMakeFiles/heap-benchmark.dir/flags.make +0 -10
  111. package/build/CMakeFiles/heap-benchmark.dir/link.txt +0 -1
  112. package/build/CMakeFiles/heap-benchmark.dir/progress.make +0 -3
  113. package/build/CMakeFiles/heap-benchmark.dir/test/performance/data-structures/heap/heap.test.cpp.o +0 -0
  114. package/build/CMakeFiles/heap-benchmark.dir/test/performance/data-structures/heap/heap.test.cpp.o.d +0 -839
  115. package/build/CMakeFiles/priority-queue-benchmark.dir/DependInfo.cmake +0 -23
  116. package/build/CMakeFiles/priority-queue-benchmark.dir/build.make +0 -114
  117. package/build/CMakeFiles/priority-queue-benchmark.dir/cmake_clean.cmake +0 -11
  118. package/build/CMakeFiles/priority-queue-benchmark.dir/compiler_depend.internal +0 -793
  119. package/build/CMakeFiles/priority-queue-benchmark.dir/compiler_depend.make +0 -2368
  120. package/build/CMakeFiles/priority-queue-benchmark.dir/compiler_depend.ts +0 -2
  121. package/build/CMakeFiles/priority-queue-benchmark.dir/depend.make +0 -2
  122. package/build/CMakeFiles/priority-queue-benchmark.dir/flags.make +0 -10
  123. package/build/CMakeFiles/priority-queue-benchmark.dir/link.txt +0 -1
  124. package/build/CMakeFiles/priority-queue-benchmark.dir/progress.make +0 -3
  125. package/build/CMakeFiles/priority-queue-benchmark.dir/test/performance/data-structures/priority-queue/priority-queue.test.cpp.o +0 -0
  126. package/build/CMakeFiles/priority-queue-benchmark.dir/test/performance/data-structures/priority-queue/priority-queue.test.cpp.o.d +0 -789
  127. package/build/CMakeFiles/progress.marks +0 -1
  128. package/build/CMakeFiles/queue-benchmark.dir/DependInfo.cmake +0 -23
  129. package/build/CMakeFiles/queue-benchmark.dir/build.make +0 -114
  130. package/build/CMakeFiles/queue-benchmark.dir/cmake_clean.cmake +0 -11
  131. package/build/CMakeFiles/queue-benchmark.dir/compiler_depend.internal +0 -793
  132. package/build/CMakeFiles/queue-benchmark.dir/compiler_depend.make +0 -2368
  133. package/build/CMakeFiles/queue-benchmark.dir/compiler_depend.ts +0 -2
  134. package/build/CMakeFiles/queue-benchmark.dir/depend.make +0 -2
  135. package/build/CMakeFiles/queue-benchmark.dir/flags.make +0 -10
  136. package/build/CMakeFiles/queue-benchmark.dir/link.txt +0 -1
  137. package/build/CMakeFiles/queue-benchmark.dir/progress.make +0 -3
  138. package/build/CMakeFiles/queue-benchmark.dir/test/performance/data-structures/queue/queue.test.cpp.o +0 -0
  139. package/build/CMakeFiles/queue-benchmark.dir/test/performance/data-structures/queue/queue.test.cpp.o.d +0 -789
  140. package/build/CMakeFiles/red-black-tree-benchmark.dir/DependInfo.cmake +0 -23
  141. package/build/CMakeFiles/red-black-tree-benchmark.dir/build.make +0 -114
  142. package/build/CMakeFiles/red-black-tree-benchmark.dir/cmake_clean.cmake +0 -11
  143. package/build/CMakeFiles/red-black-tree-benchmark.dir/compiler_depend.internal +0 -839
  144. package/build/CMakeFiles/red-black-tree-benchmark.dir/compiler_depend.make +0 -2506
  145. package/build/CMakeFiles/red-black-tree-benchmark.dir/compiler_depend.ts +0 -2
  146. package/build/CMakeFiles/red-black-tree-benchmark.dir/depend.make +0 -2
  147. package/build/CMakeFiles/red-black-tree-benchmark.dir/flags.make +0 -10
  148. package/build/CMakeFiles/red-black-tree-benchmark.dir/link.txt +0 -1
  149. package/build/CMakeFiles/red-black-tree-benchmark.dir/progress.make +0 -3
  150. package/build/CMakeFiles/red-black-tree-benchmark.dir/test/performance/data-structures/binary-tree/red-black-tree.test.cpp.o +0 -0
  151. package/build/CMakeFiles/red-black-tree-benchmark.dir/test/performance/data-structures/binary-tree/red-black-tree.test.cpp.o.d +0 -835
  152. package/build/CMakeFiles/singly-linked-list-benchmark.dir/DependInfo.cmake +0 -23
  153. package/build/CMakeFiles/singly-linked-list-benchmark.dir/build.make +0 -114
  154. package/build/CMakeFiles/singly-linked-list-benchmark.dir/cmake_clean.cmake +0 -11
  155. package/build/CMakeFiles/singly-linked-list-benchmark.dir/compiler_depend.internal +0 -790
  156. package/build/CMakeFiles/singly-linked-list-benchmark.dir/compiler_depend.make +0 -2359
  157. package/build/CMakeFiles/singly-linked-list-benchmark.dir/compiler_depend.ts +0 -2
  158. package/build/CMakeFiles/singly-linked-list-benchmark.dir/depend.make +0 -2
  159. package/build/CMakeFiles/singly-linked-list-benchmark.dir/flags.make +0 -10
  160. package/build/CMakeFiles/singly-linked-list-benchmark.dir/link.txt +0 -1
  161. package/build/CMakeFiles/singly-linked-list-benchmark.dir/progress.make +0 -3
  162. package/build/CMakeFiles/singly-linked-list-benchmark.dir/test/performance/data-structures/linked-list/singly-linked-list.test.cpp.o +0 -0
  163. package/build/CMakeFiles/singly-linked-list-benchmark.dir/test/performance/data-structures/linked-list/singly-linked-list.test.cpp.o.d +0 -786
  164. package/build/CMakeFiles/stack-benchmark.dir/DependInfo.cmake +0 -23
  165. package/build/CMakeFiles/stack-benchmark.dir/build.make +0 -114
  166. package/build/CMakeFiles/stack-benchmark.dir/cmake_clean.cmake +0 -11
  167. package/build/CMakeFiles/stack-benchmark.dir/compiler_depend.internal +0 -793
  168. package/build/CMakeFiles/stack-benchmark.dir/compiler_depend.make +0 -2368
  169. package/build/CMakeFiles/stack-benchmark.dir/compiler_depend.ts +0 -2
  170. package/build/CMakeFiles/stack-benchmark.dir/depend.make +0 -2
  171. package/build/CMakeFiles/stack-benchmark.dir/flags.make +0 -10
  172. package/build/CMakeFiles/stack-benchmark.dir/link.txt +0 -1
  173. package/build/CMakeFiles/stack-benchmark.dir/progress.make +0 -3
  174. package/build/CMakeFiles/stack-benchmark.dir/test/performance/data-structures/stack/stack.test.cpp.o +0 -0
  175. package/build/CMakeFiles/stack-benchmark.dir/test/performance/data-structures/stack/stack.test.cpp.o.d +0 -789
  176. package/build/CMakeFiles/tree-map-benchmark.dir/DependInfo.cmake +0 -23
  177. package/build/CMakeFiles/tree-map-benchmark.dir/build.make +0 -114
  178. package/build/CMakeFiles/tree-map-benchmark.dir/cmake_clean.cmake +0 -11
  179. package/build/CMakeFiles/tree-map-benchmark.dir/compiler_depend.internal +0 -839
  180. package/build/CMakeFiles/tree-map-benchmark.dir/compiler_depend.make +0 -2506
  181. package/build/CMakeFiles/tree-map-benchmark.dir/compiler_depend.ts +0 -2
  182. package/build/CMakeFiles/tree-map-benchmark.dir/depend.make +0 -2
  183. package/build/CMakeFiles/tree-map-benchmark.dir/flags.make +0 -10
  184. package/build/CMakeFiles/tree-map-benchmark.dir/link.txt +0 -1
  185. package/build/CMakeFiles/tree-map-benchmark.dir/progress.make +0 -3
  186. package/build/CMakeFiles/tree-map-benchmark.dir/test/performance/data-structures/binary-tree/tree-map.test.cpp.o +0 -0
  187. package/build/CMakeFiles/tree-map-benchmark.dir/test/performance/data-structures/binary-tree/tree-map.test.cpp.o.d +0 -835
  188. package/build/CMakeFiles/tree-multi-map-benchmark.dir/DependInfo.cmake +0 -23
  189. package/build/CMakeFiles/tree-multi-map-benchmark.dir/build.make +0 -114
  190. package/build/CMakeFiles/tree-multi-map-benchmark.dir/cmake_clean.cmake +0 -11
  191. package/build/CMakeFiles/tree-multi-map-benchmark.dir/compiler_depend.internal +0 -839
  192. package/build/CMakeFiles/tree-multi-map-benchmark.dir/compiler_depend.make +0 -2506
  193. package/build/CMakeFiles/tree-multi-map-benchmark.dir/compiler_depend.ts +0 -2
  194. package/build/CMakeFiles/tree-multi-map-benchmark.dir/depend.make +0 -2
  195. package/build/CMakeFiles/tree-multi-map-benchmark.dir/flags.make +0 -10
  196. package/build/CMakeFiles/tree-multi-map-benchmark.dir/link.txt +0 -1
  197. package/build/CMakeFiles/tree-multi-map-benchmark.dir/progress.make +0 -3
  198. package/build/CMakeFiles/tree-multi-map-benchmark.dir/test/performance/data-structures/binary-tree/tree-multi-map.test.cpp.o +0 -0
  199. package/build/CMakeFiles/tree-multi-map-benchmark.dir/test/performance/data-structures/binary-tree/tree-multi-map.test.cpp.o.d +0 -835
  200. package/build/CMakeFiles/tree-multi-set-benchmark.dir/DependInfo.cmake +0 -23
  201. package/build/CMakeFiles/tree-multi-set-benchmark.dir/build.make +0 -114
  202. package/build/CMakeFiles/tree-multi-set-benchmark.dir/cmake_clean.cmake +0 -11
  203. package/build/CMakeFiles/tree-multi-set-benchmark.dir/compiler_depend.internal +0 -839
  204. package/build/CMakeFiles/tree-multi-set-benchmark.dir/compiler_depend.make +0 -2506
  205. package/build/CMakeFiles/tree-multi-set-benchmark.dir/compiler_depend.ts +0 -2
  206. package/build/CMakeFiles/tree-multi-set-benchmark.dir/depend.make +0 -2
  207. package/build/CMakeFiles/tree-multi-set-benchmark.dir/flags.make +0 -10
  208. package/build/CMakeFiles/tree-multi-set-benchmark.dir/link.txt +0 -1
  209. package/build/CMakeFiles/tree-multi-set-benchmark.dir/progress.make +0 -3
  210. package/build/CMakeFiles/tree-multi-set-benchmark.dir/test/performance/data-structures/binary-tree/tree-multi-set.test.cpp.o +0 -0
  211. package/build/CMakeFiles/tree-multi-set-benchmark.dir/test/performance/data-structures/binary-tree/tree-multi-set.test.cpp.o.d +0 -835
  212. package/build/CMakeFiles/tree-set-benchmark.dir/DependInfo.cmake +0 -23
  213. package/build/CMakeFiles/tree-set-benchmark.dir/build.make +0 -114
  214. package/build/CMakeFiles/tree-set-benchmark.dir/cmake_clean.cmake +0 -11
  215. package/build/CMakeFiles/tree-set-benchmark.dir/compiler_depend.internal +0 -839
  216. package/build/CMakeFiles/tree-set-benchmark.dir/compiler_depend.make +0 -2506
  217. package/build/CMakeFiles/tree-set-benchmark.dir/compiler_depend.ts +0 -2
  218. package/build/CMakeFiles/tree-set-benchmark.dir/depend.make +0 -2
  219. package/build/CMakeFiles/tree-set-benchmark.dir/flags.make +0 -10
  220. package/build/CMakeFiles/tree-set-benchmark.dir/link.txt +0 -1
  221. package/build/CMakeFiles/tree-set-benchmark.dir/progress.make +0 -3
  222. package/build/CMakeFiles/tree-set-benchmark.dir/test/performance/data-structures/binary-tree/tree-set.test.cpp.o +0 -0
  223. package/build/CMakeFiles/tree-set-benchmark.dir/test/performance/data-structures/binary-tree/tree-set.test.cpp.o.d +0 -835
  224. package/build/Makefile +0 -783
  225. package/build/_deps/benchmark-build/CMakeFiles/CMakeDirectoryInformation.cmake +0 -16
  226. package/build/_deps/benchmark-build/CMakeFiles/progress.marks +0 -1
  227. package/build/_deps/benchmark-build/Makefile +0 -140
  228. package/build/_deps/benchmark-build/benchmark.pc +0 -12
  229. package/build/_deps/benchmark-build/benchmarkConfig.cmake +0 -14
  230. package/build/_deps/benchmark-build/benchmarkConfigVersion.cmake +0 -65
  231. package/build/_deps/benchmark-build/benchmarkTargets.cmake +0 -84
  232. package/build/_deps/benchmark-build/cmake_install.cmake +0 -50
  233. package/build/_deps/benchmark-build/src/CMakeFiles/CMakeDirectoryInformation.cmake +0 -16
  234. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/DependInfo.cmake +0 -41
  235. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark.cc.o +0 -0
  236. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark.cc.o.d +0 -875
  237. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_api_internal.cc.o +0 -0
  238. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_api_internal.cc.o.d +0 -802
  239. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_name.cc.o +0 -0
  240. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_name.cc.o.d +0 -772
  241. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_register.cc.o +0 -0
  242. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_register.cc.o.d +0 -841
  243. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_runner.cc.o +0 -0
  244. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/benchmark_runner.cc.o.d +0 -833
  245. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/build.make +0 -402
  246. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/check.cc.o +0 -0
  247. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/check.cc.o.d +0 -784
  248. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/cmake_clean.cmake +0 -47
  249. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/cmake_clean_target.cmake +0 -3
  250. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/colorprint.cc.o +0 -0
  251. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/colorprint.cc.o.d +0 -791
  252. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/commandlineflags.cc.o +0 -0
  253. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/commandlineflags.cc.o.d +0 -795
  254. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/compiler_depend.internal +0 -15519
  255. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/compiler_depend.make +0 -17500
  256. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/compiler_depend.ts +0 -2
  257. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/complexity.cc.o +0 -0
  258. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/complexity.cc.o.d +0 -793
  259. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/console_reporter.cc.o +0 -0
  260. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/console_reporter.cc.o.d +0 -802
  261. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/counter.cc.o +0 -0
  262. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/counter.cc.o.d +0 -773
  263. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/csv_reporter.cc.o +0 -0
  264. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/csv_reporter.cc.o.d +0 -799
  265. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/depend.make +0 -2
  266. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/flags.make +0 -10
  267. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/json_reporter.cc.o +0 -0
  268. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/json_reporter.cc.o.d +0 -800
  269. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/link.txt +0 -2
  270. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/perf_counters.cc.o +0 -0
  271. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/perf_counters.cc.o.d +0 -807
  272. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/progress.make +0 -21
  273. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/reporter.cc.o +0 -0
  274. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/reporter.cc.o.d +0 -798
  275. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/statistics.cc.o +0 -0
  276. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/statistics.cc.o.d +0 -800
  277. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/string_util.cc.o +0 -0
  278. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/string_util.cc.o.d +0 -795
  279. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/sysinfo.cc.o +0 -0
  280. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/sysinfo.cc.o.d +0 -933
  281. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/timers.cc.o +0 -0
  282. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark.dir/timers.cc.o.d +0 -904
  283. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/DependInfo.cmake +0 -23
  284. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/benchmark_main.cc.o +0 -0
  285. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/benchmark_main.cc.o.d +0 -772
  286. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/build.make +0 -114
  287. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/cmake_clean.cmake +0 -11
  288. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/cmake_clean_target.cmake +0 -3
  289. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/compiler_depend.internal +0 -776
  290. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/compiler_depend.make +0 -2317
  291. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/compiler_depend.ts +0 -2
  292. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/depend.make +0 -2
  293. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/flags.make +0 -10
  294. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/link.txt +0 -2
  295. package/build/_deps/benchmark-build/src/CMakeFiles/benchmark_main.dir/progress.make +0 -3
  296. package/build/_deps/benchmark-build/src/CMakeFiles/progress.marks +0 -1
  297. package/build/_deps/benchmark-build/src/Makefile +0 -710
  298. package/build/_deps/benchmark-build/src/cmake_install.cmake +0 -45
  299. package/build/_deps/benchmark-build/src/libbenchmark.a +0 -0
  300. package/build/_deps/benchmark-build/src/libbenchmark_main.a +0 -0
  301. package/build/_deps/benchmark-src/.clang-format +0 -5
  302. package/build/_deps/benchmark-src/.clang-tidy +0 -7
  303. package/build/_deps/benchmark-src/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
  304. package/build/_deps/benchmark-src/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  305. package/build/_deps/benchmark-src/.github/install_bazel.sh +0 -13
  306. package/build/_deps/benchmark-src/.github/libcxx-setup.sh +0 -26
  307. package/build/_deps/benchmark-src/.github/workflows/bazel.yml +0 -35
  308. package/build/_deps/benchmark-src/.github/workflows/build-and-test-min-cmake.yml +0 -46
  309. package/build/_deps/benchmark-src/.github/workflows/build-and-test-perfcounters.yml +0 -51
  310. package/build/_deps/benchmark-src/.github/workflows/build-and-test.yml +0 -114
  311. package/build/_deps/benchmark-src/.github/workflows/clang-format-lint.yml +0 -17
  312. package/build/_deps/benchmark-src/.github/workflows/clang-tidy.yml +0 -38
  313. package/build/_deps/benchmark-src/.github/workflows/doxygen.yml +0 -28
  314. package/build/_deps/benchmark-src/.github/workflows/pylint.yml +0 -28
  315. package/build/_deps/benchmark-src/.github/workflows/sanitizer.yml +0 -96
  316. package/build/_deps/benchmark-src/.github/workflows/test_bindings.yml +0 -29
  317. package/build/_deps/benchmark-src/.github/workflows/wheels.yml +0 -79
  318. package/build/_deps/benchmark-src/.travis.yml +0 -208
  319. package/build/_deps/benchmark-src/.ycm_extra_conf.py +0 -115
  320. package/build/_deps/benchmark-src/AUTHORS +0 -71
  321. package/build/_deps/benchmark-src/BUILD.bazel +0 -87
  322. package/build/_deps/benchmark-src/CMakeLists.txt +0 -340
  323. package/build/_deps/benchmark-src/CONTRIBUTING.md +0 -58
  324. package/build/_deps/benchmark-src/CONTRIBUTORS +0 -95
  325. package/build/_deps/benchmark-src/LICENSE +0 -202
  326. package/build/_deps/benchmark-src/MODULE.bazel +0 -24
  327. package/build/_deps/benchmark-src/README.md +0 -223
  328. package/build/_deps/benchmark-src/WORKSPACE +0 -22
  329. package/build/_deps/benchmark-src/WORKSPACE.bzlmod +0 -2
  330. package/build/_deps/benchmark-src/_config.yml +0 -2
  331. package/build/_deps/benchmark-src/appveyor.yml +0 -50
  332. package/build/_deps/benchmark-src/bazel/benchmark_deps.bzl +0 -65
  333. package/build/_deps/benchmark-src/bindings/python/BUILD +0 -3
  334. package/build/_deps/benchmark-src/bindings/python/build_defs.bzl +0 -25
  335. package/build/_deps/benchmark-src/bindings/python/google_benchmark/BUILD +0 -40
  336. package/build/_deps/benchmark-src/bindings/python/google_benchmark/__init__.py +0 -162
  337. package/build/_deps/benchmark-src/bindings/python/google_benchmark/benchmark.cc +0 -184
  338. package/build/_deps/benchmark-src/bindings/python/google_benchmark/example.py +0 -136
  339. package/build/_deps/benchmark-src/bindings/python/nanobind.BUILD +0 -17
  340. package/build/_deps/benchmark-src/bindings/python/python_headers.BUILD +0 -6
  341. package/build/_deps/benchmark-src/cmake/AddCXXCompilerFlag.cmake +0 -78
  342. package/build/_deps/benchmark-src/cmake/CXXFeatureCheck.cmake +0 -82
  343. package/build/_deps/benchmark-src/cmake/Config.cmake.in +0 -7
  344. package/build/_deps/benchmark-src/cmake/GetGitVersion.cmake +0 -58
  345. package/build/_deps/benchmark-src/cmake/GoogleTest.cmake +0 -58
  346. package/build/_deps/benchmark-src/cmake/GoogleTest.cmake.in +0 -59
  347. package/build/_deps/benchmark-src/cmake/benchmark.pc.in +0 -12
  348. package/build/_deps/benchmark-src/cmake/gnu_posix_regex.cpp +0 -12
  349. package/build/_deps/benchmark-src/cmake/llvm-toolchain.cmake +0 -8
  350. package/build/_deps/benchmark-src/cmake/posix_regex.cpp +0 -14
  351. package/build/_deps/benchmark-src/cmake/pthread_affinity.cpp +0 -16
  352. package/build/_deps/benchmark-src/cmake/split_list.cmake +0 -3
  353. package/build/_deps/benchmark-src/cmake/std_regex.cpp +0 -10
  354. package/build/_deps/benchmark-src/cmake/steady_clock.cpp +0 -7
  355. package/build/_deps/benchmark-src/cmake/thread_safety_attributes.cpp +0 -4
  356. package/build/_deps/benchmark-src/docs/AssemblyTests.md +0 -149
  357. package/build/_deps/benchmark-src/docs/_config.yml +0 -3
  358. package/build/_deps/benchmark-src/docs/assets/images/icon.png +0 -0
  359. package/build/_deps/benchmark-src/docs/assets/images/icon.xcf +0 -0
  360. package/build/_deps/benchmark-src/docs/assets/images/icon_black.png +0 -0
  361. package/build/_deps/benchmark-src/docs/assets/images/icon_black.xcf +0 -0
  362. package/build/_deps/benchmark-src/docs/dependencies.md +0 -13
  363. package/build/_deps/benchmark-src/docs/index.md +0 -12
  364. package/build/_deps/benchmark-src/docs/perf_counters.md +0 -35
  365. package/build/_deps/benchmark-src/docs/platform_specific_build_instructions.md +0 -48
  366. package/build/_deps/benchmark-src/docs/python_bindings.md +0 -34
  367. package/build/_deps/benchmark-src/docs/random_interleaving.md +0 -13
  368. package/build/_deps/benchmark-src/docs/reducing_variance.md +0 -100
  369. package/build/_deps/benchmark-src/docs/releasing.md +0 -41
  370. package/build/_deps/benchmark-src/docs/tools.md +0 -343
  371. package/build/_deps/benchmark-src/docs/user_guide.md +0 -1266
  372. package/build/_deps/benchmark-src/include/benchmark/benchmark.h +0 -1991
  373. package/build/_deps/benchmark-src/include/benchmark/export.h +0 -47
  374. package/build/_deps/benchmark-src/pyproject.toml +0 -50
  375. package/build/_deps/benchmark-src/setup.py +0 -113
  376. package/build/_deps/benchmark-src/src/CMakeLists.txt +0 -170
  377. package/build/_deps/benchmark-src/src/arraysize.h +0 -33
  378. package/build/_deps/benchmark-src/src/benchmark.cc +0 -779
  379. package/build/_deps/benchmark-src/src/benchmark_api_internal.cc +0 -118
  380. package/build/_deps/benchmark-src/src/benchmark_api_internal.h +0 -87
  381. package/build/_deps/benchmark-src/src/benchmark_main.cc +0 -18
  382. package/build/_deps/benchmark-src/src/benchmark_name.cc +0 -59
  383. package/build/_deps/benchmark-src/src/benchmark_register.cc +0 -520
  384. package/build/_deps/benchmark-src/src/benchmark_register.h +0 -109
  385. package/build/_deps/benchmark-src/src/benchmark_runner.cc +0 -497
  386. package/build/_deps/benchmark-src/src/benchmark_runner.h +0 -131
  387. package/build/_deps/benchmark-src/src/check.cc +0 -11
  388. package/build/_deps/benchmark-src/src/check.h +0 -106
  389. package/build/_deps/benchmark-src/src/colorprint.cc +0 -200
  390. package/build/_deps/benchmark-src/src/colorprint.h +0 -33
  391. package/build/_deps/benchmark-src/src/commandlineflags.cc +0 -298
  392. package/build/_deps/benchmark-src/src/commandlineflags.h +0 -133
  393. package/build/_deps/benchmark-src/src/complexity.cc +0 -244
  394. package/build/_deps/benchmark-src/src/complexity.h +0 -55
  395. package/build/_deps/benchmark-src/src/console_reporter.cc +0 -206
  396. package/build/_deps/benchmark-src/src/counter.cc +0 -80
  397. package/build/_deps/benchmark-src/src/counter.h +0 -32
  398. package/build/_deps/benchmark-src/src/csv_reporter.cc +0 -161
  399. package/build/_deps/benchmark-src/src/cycleclock.h +0 -230
  400. package/build/_deps/benchmark-src/src/internal_macros.h +0 -115
  401. package/build/_deps/benchmark-src/src/json_reporter.cc +0 -320
  402. package/build/_deps/benchmark-src/src/log.h +0 -88
  403. package/build/_deps/benchmark-src/src/mutex.h +0 -155
  404. package/build/_deps/benchmark-src/src/perf_counters.cc +0 -282
  405. package/build/_deps/benchmark-src/src/perf_counters.h +0 -200
  406. package/build/_deps/benchmark-src/src/re.h +0 -158
  407. package/build/_deps/benchmark-src/src/reporter.cc +0 -118
  408. package/build/_deps/benchmark-src/src/statistics.cc +0 -209
  409. package/build/_deps/benchmark-src/src/statistics.h +0 -44
  410. package/build/_deps/benchmark-src/src/string_util.cc +0 -254
  411. package/build/_deps/benchmark-src/src/string_util.h +0 -70
  412. package/build/_deps/benchmark-src/src/sysinfo.cc +0 -855
  413. package/build/_deps/benchmark-src/src/thread_manager.h +0 -63
  414. package/build/_deps/benchmark-src/src/thread_timer.h +0 -86
  415. package/build/_deps/benchmark-src/src/timers.cc +0 -272
  416. package/build/_deps/benchmark-src/src/timers.h +0 -48
  417. package/build/_deps/benchmark-src/test/AssemblyTests.cmake +0 -67
  418. package/build/_deps/benchmark-src/test/BUILD +0 -127
  419. package/build/_deps/benchmark-src/test/CMakeLists.txt +0 -309
  420. package/build/_deps/benchmark-src/test/args_product_test.cc +0 -77
  421. package/build/_deps/benchmark-src/test/basic_test.cc +0 -180
  422. package/build/_deps/benchmark-src/test/benchmark_gtest.cc +0 -169
  423. package/build/_deps/benchmark-src/test/benchmark_min_time_flag_iters_test.cc +0 -66
  424. package/build/_deps/benchmark-src/test/benchmark_min_time_flag_time_test.cc +0 -90
  425. package/build/_deps/benchmark-src/test/benchmark_name_gtest.cc +0 -82
  426. package/build/_deps/benchmark-src/test/benchmark_random_interleaving_gtest.cc +0 -126
  427. package/build/_deps/benchmark-src/test/benchmark_setup_teardown_test.cc +0 -157
  428. package/build/_deps/benchmark-src/test/benchmark_test.cc +0 -274
  429. package/build/_deps/benchmark-src/test/clobber_memory_assembly_test.cc +0 -64
  430. package/build/_deps/benchmark-src/test/commandlineflags_gtest.cc +0 -228
  431. package/build/_deps/benchmark-src/test/complexity_test.cc +0 -228
  432. package/build/_deps/benchmark-src/test/cxx03_test.cc +0 -62
  433. package/build/_deps/benchmark-src/test/diagnostics_test.cc +0 -91
  434. package/build/_deps/benchmark-src/test/display_aggregates_only_test.cc +0 -45
  435. package/build/_deps/benchmark-src/test/donotoptimize_assembly_test.cc +0 -201
  436. package/build/_deps/benchmark-src/test/donotoptimize_test.cc +0 -69
  437. package/build/_deps/benchmark-src/test/filter_test.cc +0 -117
  438. package/build/_deps/benchmark-src/test/fixture_test.cc +0 -51
  439. package/build/_deps/benchmark-src/test/internal_threading_test.cc +0 -185
  440. package/build/_deps/benchmark-src/test/link_main_test.cc +0 -9
  441. package/build/_deps/benchmark-src/test/map_test.cc +0 -59
  442. package/build/_deps/benchmark-src/test/memory_manager_test.cc +0 -47
  443. package/build/_deps/benchmark-src/test/min_time_parse_gtest.cc +0 -30
  444. package/build/_deps/benchmark-src/test/multiple_ranges_test.cc +0 -96
  445. package/build/_deps/benchmark-src/test/options_test.cc +0 -77
  446. package/build/_deps/benchmark-src/test/output_test.h +0 -211
  447. package/build/_deps/benchmark-src/test/output_test_helper.cc +0 -519
  448. package/build/_deps/benchmark-src/test/perf_counters_gtest.cc +0 -307
  449. package/build/_deps/benchmark-src/test/perf_counters_test.cc +0 -92
  450. package/build/_deps/benchmark-src/test/register_benchmark_test.cc +0 -196
  451. package/build/_deps/benchmark-src/test/repetitions_test.cc +0 -214
  452. package/build/_deps/benchmark-src/test/report_aggregates_only_test.cc +0 -41
  453. package/build/_deps/benchmark-src/test/reporter_output_test.cc +0 -1130
  454. package/build/_deps/benchmark-src/test/skip_with_error_test.cc +0 -199
  455. package/build/_deps/benchmark-src/test/spec_arg_test.cc +0 -105
  456. package/build/_deps/benchmark-src/test/spec_arg_verbosity_test.cc +0 -43
  457. package/build/_deps/benchmark-src/test/state_assembly_test.cc +0 -68
  458. package/build/_deps/benchmark-src/test/statistics_gtest.cc +0 -35
  459. package/build/_deps/benchmark-src/test/string_util_gtest.cc +0 -199
  460. package/build/_deps/benchmark-src/test/templated_fixture_test.cc +0 -28
  461. package/build/_deps/benchmark-src/test/time_unit_gtest.cc +0 -37
  462. package/build/_deps/benchmark-src/test/user_counters_tabular_test.cc +0 -558
  463. package/build/_deps/benchmark-src/test/user_counters_test.cc +0 -561
  464. package/build/_deps/benchmark-src/test/user_counters_thousands_test.cc +0 -186
  465. package/build/_deps/benchmark-src/tools/BUILD.bazel +0 -19
  466. package/build/_deps/benchmark-src/tools/compare.py +0 -432
  467. package/build/_deps/benchmark-src/tools/gbench/Inputs/test1_run1.json +0 -127
  468. package/build/_deps/benchmark-src/tools/gbench/Inputs/test1_run2.json +0 -127
  469. package/build/_deps/benchmark-src/tools/gbench/Inputs/test2_run.json +0 -81
  470. package/build/_deps/benchmark-src/tools/gbench/Inputs/test3_run0.json +0 -65
  471. package/build/_deps/benchmark-src/tools/gbench/Inputs/test3_run1.json +0 -65
  472. package/build/_deps/benchmark-src/tools/gbench/Inputs/test4_run.json +0 -96
  473. package/build/_deps/benchmark-src/tools/gbench/Inputs/test4_run0.json +0 -21
  474. package/build/_deps/benchmark-src/tools/gbench/Inputs/test4_run1.json +0 -21
  475. package/build/_deps/benchmark-src/tools/gbench/__init__.py +0 -8
  476. package/build/_deps/benchmark-src/tools/gbench/report.py +0 -1201
  477. package/build/_deps/benchmark-src/tools/gbench/util.py +0 -203
  478. package/build/_deps/benchmark-src/tools/libpfm.BUILD.bazel +0 -22
  479. package/build/_deps/benchmark-src/tools/requirements.txt +0 -2
  480. package/build/_deps/benchmark-src/tools/strip_asm.py +0 -151
  481. package/build/_deps/benchmark-subbuild/CMakeCache.txt +0 -133
  482. package/build/_deps/benchmark-subbuild/CMakeFiles/4.0.3/CMakeSystem.cmake +0 -15
  483. package/build/_deps/benchmark-subbuild/CMakeFiles/CMakeConfigureLog.yaml +0 -11
  484. package/build/_deps/benchmark-subbuild/CMakeFiles/CMakeDirectoryInformation.cmake +0 -16
  485. package/build/_deps/benchmark-subbuild/CMakeFiles/CMakeRuleHashes.txt +0 -11
  486. package/build/_deps/benchmark-subbuild/CMakeFiles/InstallScripts.json +0 -7
  487. package/build/_deps/benchmark-subbuild/CMakeFiles/Makefile.cmake +0 -52
  488. package/build/_deps/benchmark-subbuild/CMakeFiles/Makefile2 +0 -122
  489. package/build/_deps/benchmark-subbuild/CMakeFiles/TargetDirectories.txt +0 -3
  490. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate-complete +0 -0
  491. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/DependInfo.cmake +0 -22
  492. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/Labels.json +0 -46
  493. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/Labels.txt +0 -14
  494. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/build.make +0 -162
  495. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/cmake_clean.cmake +0 -17
  496. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/compiler_depend.make +0 -2
  497. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/compiler_depend.ts +0 -2
  498. package/build/_deps/benchmark-subbuild/CMakeFiles/benchmark-populate.dir/progress.make +0 -10
  499. package/build/_deps/benchmark-subbuild/CMakeFiles/cmake.check_cache +0 -1
  500. package/build/_deps/benchmark-subbuild/CMakeFiles/progress.marks +0 -1
  501. package/build/_deps/benchmark-subbuild/CMakeLists.txt +0 -42
  502. package/build/_deps/benchmark-subbuild/Makefile +0 -162
  503. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-build +0 -0
  504. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-configure +0 -0
  505. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-done +0 -0
  506. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-download +0 -0
  507. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-gitclone-lastrun.txt +0 -15
  508. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-gitinfo.txt +0 -15
  509. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-install +0 -0
  510. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-mkdir +0 -0
  511. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-patch +0 -0
  512. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-patch-info.txt +0 -6
  513. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-test +0 -0
  514. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/src/benchmark-populate-stamp/benchmark-populate-update-info.txt +0 -7
  515. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/tmp/benchmark-populate-cfgcmd.txt +0 -1
  516. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/tmp/benchmark-populate-gitclone.cmake +0 -87
  517. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/tmp/benchmark-populate-gitupdate.cmake +0 -317
  518. package/build/_deps/benchmark-subbuild/benchmark-populate-prefix/tmp/benchmark-populate-mkdirs.cmake +0 -27
  519. package/build/_deps/benchmark-subbuild/cmake_install.cmake +0 -56
  520. package/build/bin/avl-rb-range-search-benchmark +0 -0
  521. package/build/bin/avl-tree-benchmark +0 -0
  522. package/build/bin/deque-benchmark +0 -0
  523. package/build/bin/doubly-linked-list-benchmark +0 -0
  524. package/build/bin/hash-map-benchmark +0 -0
  525. package/build/bin/heap-benchmark +0 -0
  526. package/build/bin/priority-queue-benchmark +0 -0
  527. package/build/bin/queue-benchmark +0 -0
  528. package/build/bin/red-black-tree-benchmark +0 -0
  529. package/build/bin/singly-linked-list-benchmark +0 -0
  530. package/build/bin/stack-benchmark +0 -0
  531. package/build/bin/tree-map-benchmark +0 -0
  532. package/build/bin/tree-multi-map-benchmark +0 -0
  533. package/build/bin/tree-multi-set-benchmark +0 -0
  534. package/build/bin/tree-set-benchmark +0 -0
  535. package/build/cmake_install.cmake +0 -66
  536. package/dist/cjs/index.cjs.map +0 -1
  537. package/dist/cjs-legacy/index.cjs.map +0 -1
  538. package/dist/esm/index.mjs.map +0 -1
  539. package/dist/esm-legacy/index.mjs.map +0 -1
  540. package/dist/umd/data-structure-typed.js.map +0 -1
  541. package/dist/umd/data-structure-typed.min.js.map +0 -1
  542. package/eslint.config.mjs +0 -73
  543. package/test/config.ts +0 -4
  544. package/test/integration/all-in-one.test.ts +0 -110
  545. package/test/integration/avl-tree.test.ts +0 -127
  546. package/test/integration/bst.test.ts +0 -385
  547. package/test/integration/compile.test.mjs +0 -159
  548. package/test/integration/compile.test.ts +0 -176
  549. package/test/integration/heap.test.js +0 -21
  550. package/test/integration/index.html +0 -462
  551. package/test/performance/benchmark-runner-enhanced.mjs +0 -818
  552. package/test/performance/cmake-benchmark-runner.mjs +0 -234
  553. package/test/performance/data-structures/binary-tree/avl-rb-range-search.test.cpp +0 -112
  554. package/test/performance/data-structures/binary-tree/avl-rb-range-search.test.mjs +0 -51
  555. package/test/performance/data-structures/binary-tree/avl-tree.test.cpp +0 -181
  556. package/test/performance/data-structures/binary-tree/avl-tree.test.mjs +0 -138
  557. package/test/performance/data-structures/binary-tree/binary-tree-overall.test.mjs +0 -85
  558. package/test/performance/data-structures/binary-tree/binary-tree.test.mjs +0 -100
  559. package/test/performance/data-structures/binary-tree/bst.test.mjs +0 -61
  560. package/test/performance/data-structures/binary-tree/red-black-tree-cjs.test.mjs +0 -259
  561. package/test/performance/data-structures/binary-tree/red-black-tree.test.cpp +0 -213
  562. package/test/performance/data-structures/binary-tree/red-black-tree.test.mjs +0 -275
  563. package/test/performance/data-structures/binary-tree/tree-map.test.cpp +0 -129
  564. package/test/performance/data-structures/binary-tree/tree-map.test.mjs +0 -171
  565. package/test/performance/data-structures/binary-tree/tree-multi-map.test.cpp +0 -205
  566. package/test/performance/data-structures/binary-tree/tree-multi-map.test.mjs +0 -106
  567. package/test/performance/data-structures/binary-tree/tree-multi-set.test.cpp +0 -217
  568. package/test/performance/data-structures/binary-tree/tree-multi-set.test.mjs +0 -91
  569. package/test/performance/data-structures/binary-tree/tree-set.test.cpp +0 -127
  570. package/test/performance/data-structures/binary-tree/tree-set.test.mjs +0 -174
  571. package/test/performance/data-structures/comparison/comparison.test.mjs +0 -99
  572. package/test/performance/data-structures/graph/directed-graph.test.mjs +0 -38
  573. package/test/performance/data-structures/hash/hash-map.test.cpp +0 -183
  574. package/test/performance/data-structures/hash/hash-map.test.mjs +0 -187
  575. package/test/performance/data-structures/heap/heap.test.cpp +0 -61
  576. package/test/performance/data-structures/heap/heap.test.mjs +0 -31
  577. package/test/performance/data-structures/linked-list/doubly-linked-list.test.cpp +0 -84
  578. package/test/performance/data-structures/linked-list/doubly-linked-list.test.mjs +0 -125
  579. package/test/performance/data-structures/linked-list/singly-linked-list.test.cpp +0 -77
  580. package/test/performance/data-structures/linked-list/singly-linked-list.test.mjs +0 -84
  581. package/test/performance/data-structures/priority-queue/max-priority-queue.test.mjs +0 -40
  582. package/test/performance/data-structures/priority-queue/priority-queue.test.cpp +0 -59
  583. package/test/performance/data-structures/priority-queue/priority-queue.test.mjs +0 -64
  584. package/test/performance/data-structures/queue/deque.test.cpp +0 -119
  585. package/test/performance/data-structures/queue/deque.test.mjs +0 -144
  586. package/test/performance/data-structures/queue/queue.test.cpp +0 -59
  587. package/test/performance/data-structures/queue/queue.test.mjs +0 -77
  588. package/test/performance/data-structures/stack/stack.test.cpp +0 -40
  589. package/test/performance/data-structures/stack/stack.test.mjs +0 -69
  590. package/test/performance/data-structures/trie/trie.test.mjs +0 -43
  591. package/test/performance/reportor-enhanced.mjs +0 -871
  592. package/test/performance/runner-config.json +0 -51
  593. package/test/types/index.ts +0 -1
  594. package/test/types/utils/big-o.ts +0 -1
  595. package/test/types/utils/index.ts +0 -2
  596. package/test/types/utils/json2html.ts +0 -5
  597. package/test/unit/data-structures/base/iterable-element-base.coverage.test.ts +0 -106
  598. package/test/unit/data-structures/base/iterable-element-base.more-branches.coverage.test.ts +0 -61
  599. package/test/unit/data-structures/base/linear-base.array.coverage.test.ts +0 -168
  600. package/test/unit/data-structures/base/linear-base.concat-else.coverage.test.ts +0 -82
  601. package/test/unit/data-structures/base/linear-base.coverage.test.ts +0 -72
  602. package/test/unit/data-structures/base/linear-base.more-branches.coverage.test.ts +0 -414
  603. package/test/unit/data-structures/binary-tree/avl-tree-node.familyPosition-root-left.coverage.test.ts +0 -17
  604. package/test/unit/data-structures/binary-tree/avl-tree.more-branches-2.coverage.test.ts +0 -99
  605. package/test/unit/data-structures/binary-tree/avl-tree.test.ts +0 -729
  606. package/test/unit/data-structures/binary-tree/binary-index-tree.test.ts +0 -345
  607. package/test/unit/data-structures/binary-tree/binary-indexed-tree.more-branches.coverage.test.ts +0 -18
  608. package/test/unit/data-structures/binary-tree/binary-tree.more-branches.coverage.test.ts +0 -56
  609. package/test/unit/data-structures/binary-tree/binary-tree.remaining-branches.coverage.test.ts +0 -232
  610. package/test/unit/data-structures/binary-tree/binary-tree.test.ts +0 -1912
  611. package/test/unit/data-structures/binary-tree/bst.bound-by-predicate.coverage.test.ts +0 -33
  612. package/test/unit/data-structures/binary-tree/bst.coverage.test.ts +0 -94
  613. package/test/unit/data-structures/binary-tree/bst.deletebykey.coverage.test.ts +0 -70
  614. package/test/unit/data-structures/binary-tree/bst.deletewhere.coverage.test.ts +0 -37
  615. package/test/unit/data-structures/binary-tree/bst.floor-lower-predicate.coverage.test.ts +0 -29
  616. package/test/unit/data-structures/binary-tree/bst.floor-setmany.coverage.test.ts +0 -72
  617. package/test/unit/data-structures/binary-tree/bst.getnode.range-ensure.coverage.test.ts +0 -22
  618. package/test/unit/data-structures/binary-tree/bst.misc-branches.coverage.test.ts +0 -100
  619. package/test/unit/data-structures/binary-tree/bst.more-branches-2.coverage.test.ts +0 -133
  620. package/test/unit/data-structures/binary-tree/bst.more-branches-3.coverage.test.ts +0 -45
  621. package/test/unit/data-structures/binary-tree/bst.more-branches-4.coverage.test.ts +0 -36
  622. package/test/unit/data-structures/binary-tree/bst.more-branches-5.coverage.test.ts +0 -40
  623. package/test/unit/data-structures/binary-tree/bst.more.coverage.test.ts +0 -39
  624. package/test/unit/data-structures/binary-tree/bst.node-family.coverage.test.ts +0 -29
  625. package/test/unit/data-structures/binary-tree/bst.range-pruning.coverage.test.ts +0 -43
  626. package/test/unit/data-structures/binary-tree/bst.search-fastpath.coverage.test.ts +0 -30
  627. package/test/unit/data-structures/binary-tree/bst.test.ts +0 -3472
  628. package/test/unit/data-structures/binary-tree/data/cost-of-living-by-country.ts +0 -259
  629. package/test/unit/data-structures/binary-tree/overall.test.ts +0 -219
  630. package/test/unit/data-structures/binary-tree/red-black-tree.boundary-corruption-repair.coverage.test.ts +0 -66
  631. package/test/unit/data-structures/binary-tree/red-black-tree.boundary-max-update.coverage.test.ts +0 -18
  632. package/test/unit/data-structures/binary-tree/red-black-tree.boundary-null.coverage.test.ts +0 -53
  633. package/test/unit/data-structures/binary-tree/red-black-tree.boundary-stale-cache.coverage.test.ts +0 -25
  634. package/test/unit/data-structures/binary-tree/red-black-tree.boundary-update.coverage.test.ts +0 -23
  635. package/test/unit/data-structures/binary-tree/red-black-tree.cache-delete.coverage.test.ts +0 -49
  636. package/test/unit/data-structures/binary-tree/red-black-tree.cache-edge.coverage.test.ts +0 -37
  637. package/test/unit/data-structures/binary-tree/red-black-tree.cache-stale-insert.coverage.test.ts +0 -39
  638. package/test/unit/data-structures/binary-tree/red-black-tree.coverage.test.ts +0 -334
  639. package/test/unit/data-structures/binary-tree/red-black-tree.delete-fixup.coverage.test.ts +0 -68
  640. package/test/unit/data-structures/binary-tree/red-black-tree.delete-successor.coverage.test.ts +0 -75
  641. package/test/unit/data-structures/binary-tree/red-black-tree.factories.coverage.test.ts +0 -26
  642. package/test/unit/data-structures/binary-tree/red-black-tree.hint-cache-compare-update.coverage.test.ts +0 -74
  643. package/test/unit/data-structures/binary-tree/red-black-tree.hint-cache-no-update.coverage.test.ts +0 -44
  644. package/test/unit/data-structures/binary-tree/red-black-tree.hint-cache-nullish.coverage.test.ts +0 -61
  645. package/test/unit/data-structures/binary-tree/red-black-tree.hint-mapmode-defined.coverage.test.ts +0 -35
  646. package/test/unit/data-structures/binary-tree/red-black-tree.hint-mapmode-undefined.coverage.test.ts +0 -43
  647. package/test/unit/data-structures/binary-tree/red-black-tree.hint-more.coverage.test.ts +0 -99
  648. package/test/unit/data-structures/binary-tree/red-black-tree.hint.coverage.test.ts +0 -60
  649. package/test/unit/data-structures/binary-tree/red-black-tree.insert-cache-nullish.coverage.test.ts +0 -29
  650. package/test/unit/data-structures/binary-tree/red-black-tree.insert-header-parent-nullish.coverage.test.ts +0 -17
  651. package/test/unit/data-structures/binary-tree/red-black-tree.internal-walk.coverage.test.ts +0 -57
  652. package/test/unit/data-structures/binary-tree/red-black-tree.minmax-cache.test.ts +0 -65
  653. package/test/unit/data-structures/binary-tree/red-black-tree.misc-inputs.coverage.test.ts +0 -17
  654. package/test/unit/data-structures/binary-tree/red-black-tree.more-branches-2.coverage.test.ts +0 -121
  655. package/test/unit/data-structures/binary-tree/red-black-tree.more-branches-3.coverage.test.ts +0 -55
  656. package/test/unit/data-structures/binary-tree/red-black-tree.more-branches-4.coverage.test.ts +0 -44
  657. package/test/unit/data-structures/binary-tree/red-black-tree.predsucc.coverage.test.ts +0 -40
  658. package/test/unit/data-structures/binary-tree/red-black-tree.remaining-branches.coverage.test.ts +0 -123
  659. package/test/unit/data-structures/binary-tree/red-black-tree.set-inputs.coverage.test.ts +0 -64
  660. package/test/unit/data-structures/binary-tree/red-black-tree.setkvnode-parent-cache.coverage.test.ts +0 -79
  661. package/test/unit/data-structures/binary-tree/red-black-tree.setkvnode-remaining.coverage.test.ts +0 -44
  662. package/test/unit/data-structures/binary-tree/red-black-tree.setkvnode-uncovered.coverage.test.ts +0 -74
  663. package/test/unit/data-structures/binary-tree/red-black-tree.test.ts +0 -936
  664. package/test/unit/data-structures/binary-tree/red-black-tree.update-branches.coverage.test.ts +0 -30
  665. package/test/unit/data-structures/binary-tree/segment-tree.more-branches.coverage.test.ts +0 -31
  666. package/test/unit/data-structures/binary-tree/segment-tree.test.ts +0 -104
  667. package/test/unit/data-structures/binary-tree/tree-map.test.ts +0 -270
  668. package/test/unit/data-structures/binary-tree/tree-multi-map.coverage.test.ts +0 -245
  669. package/test/unit/data-structures/binary-tree/tree-multi-map.legacy.test.ts.skip +0 -1115
  670. package/test/unit/data-structures/binary-tree/tree-multi-map.more-branches-2.coverage.test.ts.skip +0 -59
  671. package/test/unit/data-structures/binary-tree/tree-multi-map.rfc.test.ts +0 -99
  672. package/test/unit/data-structures/binary-tree/tree-multi-map.simplified.test.ts +0 -482
  673. package/test/unit/data-structures/binary-tree/tree-multi-set.test.ts +0 -545
  674. package/test/unit/data-structures/binary-tree/tree-set.test.ts +0 -187
  675. package/test/unit/data-structures/graph/abstract-graph.more-branches-2.coverage.test.ts +0 -40
  676. package/test/unit/data-structures/graph/abstract-graph.more-branches-3.coverage.test.ts +0 -65
  677. package/test/unit/data-structures/graph/abstract-graph.more-branches-4.coverage.test.ts +0 -98
  678. package/test/unit/data-structures/graph/abstract-graph.more-branches-5.coverage.test.ts +0 -51
  679. package/test/unit/data-structures/graph/abstract-graph.more-branches.coverage.test.ts +0 -62
  680. package/test/unit/data-structures/graph/abstract-graph.test.ts +0 -117
  681. package/test/unit/data-structures/graph/directed-graph.more-branches-2.coverage.test.ts +0 -38
  682. package/test/unit/data-structures/graph/directed-graph.more-branches-3.coverage.test.ts +0 -25
  683. package/test/unit/data-structures/graph/directed-graph.more-branches.coverage.test.ts +0 -82
  684. package/test/unit/data-structures/graph/directed-graph.test.ts +0 -1185
  685. package/test/unit/data-structures/graph/map-graph.more-branches.coverage.test.ts +0 -22
  686. package/test/unit/data-structures/graph/map-graph.test.ts +0 -148
  687. package/test/unit/data-structures/graph/overall.test.ts +0 -49
  688. package/test/unit/data-structures/graph/salty-edges.json +0 -875
  689. package/test/unit/data-structures/graph/salty-vertexes.json +0 -200
  690. package/test/unit/data-structures/graph/undirected-graph.more-branches-2.coverage.test.ts +0 -35
  691. package/test/unit/data-structures/graph/undirected-graph.more-branches.coverage.test.ts +0 -87
  692. package/test/unit/data-structures/graph/undirected-graph.test.ts +0 -782
  693. package/test/unit/data-structures/hash/hash-map.more-branches.coverage.test.ts +0 -64
  694. package/test/unit/data-structures/hash/hash-map.test.ts +0 -1125
  695. package/test/unit/data-structures/hash/hash-map.toEntryFn-branch.coverage.test.ts +0 -9
  696. package/test/unit/data-structures/heap/heap.misc-branches.coverage.test.ts +0 -110
  697. package/test/unit/data-structures/heap/heap.remaining-branches.coverage.test.ts +0 -22
  698. package/test/unit/data-structures/heap/heap.test.ts +0 -760
  699. package/test/unit/data-structures/heap/max-heap.coverage.test.ts +0 -29
  700. package/test/unit/data-structures/heap/max-heap.test.ts +0 -98
  701. package/test/unit/data-structures/heap/min-heap.test.ts +0 -117
  702. package/test/unit/data-structures/linked-list/doubly-linked-list.more-branches.coverage.test.ts +0 -72
  703. package/test/unit/data-structures/linked-list/doubly-linked-list.test.ts +0 -1150
  704. package/test/unit/data-structures/linked-list/linked-list.test.ts +0 -8
  705. package/test/unit/data-structures/linked-list/linked-list.unshiftMany-else.coverage.test.ts +0 -15
  706. package/test/unit/data-structures/linked-list/singly-linked-list.coverage.test.ts +0 -221
  707. package/test/unit/data-structures/linked-list/singly-linked-list.more-branches.coverage.test.ts +0 -86
  708. package/test/unit/data-structures/linked-list/singly-linked-list.test.ts +0 -836
  709. package/test/unit/data-structures/linked-list/skip-linked-list.more-branches.coverage.test.ts +0 -31
  710. package/test/unit/data-structures/linked-list/skip-linked-list.test.ts +0 -13
  711. package/test/unit/data-structures/linked-list/skip-list.test.ts +0 -86
  712. package/test/unit/data-structures/matrix/matrix.more-branches.coverage.test.ts +0 -81
  713. package/test/unit/data-structures/matrix/matrix.pivotElement-nullish.coverage.test.ts +0 -28
  714. package/test/unit/data-structures/matrix/matrix.test.ts +0 -377
  715. package/test/unit/data-structures/matrix/navigator.test.ts +0 -244
  716. package/test/unit/data-structures/priority-queue/max-priority-queue.more-branches.coverage.test.ts +0 -10
  717. package/test/unit/data-structures/priority-queue/max-priority-queue.test.ts +0 -160
  718. package/test/unit/data-structures/priority-queue/min-priority-queue.test.ts +0 -78
  719. package/test/unit/data-structures/priority-queue/priority-queue.coverage.test.ts +0 -21
  720. package/test/unit/data-structures/priority-queue/priority-queue.test.ts +0 -101
  721. package/test/unit/data-structures/queue/deque.coverage.test.ts +0 -173
  722. package/test/unit/data-structures/queue/deque.more-branches-2.coverage.test.ts +0 -39
  723. package/test/unit/data-structures/queue/deque.more-branches-3.coverage.test.ts +0 -9
  724. package/test/unit/data-structures/queue/deque.more-branches.coverage.test.ts +0 -95
  725. package/test/unit/data-structures/queue/deque.test.ts +0 -936
  726. package/test/unit/data-structures/queue/queue.coverage.test.ts +0 -138
  727. package/test/unit/data-structures/queue/queue.more-branches-2.coverage.test.ts +0 -27
  728. package/test/unit/data-structures/queue/queue.test.ts +0 -703
  729. package/test/unit/data-structures/stack/stack.coverage.test.ts +0 -112
  730. package/test/unit/data-structures/stack/stack.test.ts +0 -438
  731. package/test/unit/data-structures/tree/tree.more-branches.coverage.test.ts +0 -9
  732. package/test/unit/data-structures/tree/tree.test.ts +0 -58
  733. package/test/unit/data-structures/trie/trie.more-branches-2.coverage.test.ts +0 -51
  734. package/test/unit/data-structures/trie/trie.test.ts +0 -1181
  735. package/test/unit/unrestricted-interconversion.test.ts +0 -299
  736. package/test/unit/utils/utils.test.ts +0 -174
  737. package/test/utils/array.ts +0 -5517
  738. package/test/utils/big-o.ts +0 -228
  739. package/test/utils/console.ts +0 -31
  740. package/test/utils/index.ts +0 -8
  741. package/test/utils/is.ts +0 -56
  742. package/test/utils/json2html.ts +0 -164
  743. package/test/utils/number.ts +0 -13
  744. package/test/utils/patch.ts +0 -33
  745. package/test/utils/perf.mjs +0 -34
  746. package/test/utils/performanc.ts +0 -7
  747. package/test/utils/string.ts +0 -49
  748. package/tsconfig.types.json +0 -15
  749. package/tsup.config.js +0 -63
  750. package/tsup.umd.config.js +0 -29
@@ -11858,17 +11858,30 @@ var TreeSet = class _TreeSet {
11858
11858
  #isDefaultComparator;
11859
11859
  #userComparator;
11860
11860
  /**
11861
- * Create a TreeSet from an iterable of keys.
11861
+ * Create a TreeSet from an iterable of keys or raw elements.
11862
11862
  *
11863
+ * @param elements - Iterable of keys, or raw elements if `toElementFn` is provided.
11864
+ * @param options - Configuration options including optional `toElementFn` to transform raw elements.
11863
11865
  * @throws {TypeError} When using the default comparator and encountering unsupported key types,
11864
11866
  * or invalid keys (e.g. `NaN`, invalid `Date`).
11867
+ * @example
11868
+ * // Standard usage with keys
11869
+ * const set = new TreeSet([3, 1, 2]);
11870
+ *
11871
+ * // Using toElementFn to transform raw objects
11872
+ * const users = [{ id: 3, name: 'Alice' }, { id: 1, name: 'Bob' }];
11873
+ * const set = new TreeSet<number, User>(users, { toElementFn: u => u.id });
11865
11874
  */
11866
11875
  constructor(elements = [], options = {}) {
11867
11876
  this.#userComparator = options.comparator;
11877
+ const toElementFn = options.toElementFn;
11868
11878
  const comparator = options.comparator ?? _TreeSet.createDefaultComparator();
11869
11879
  this.#isDefaultComparator = options.comparator === void 0;
11870
11880
  this.#core = new RedBlackTree([], { comparator, isMapMode: options.isMapMode });
11871
- for (const k of elements) this.add(k);
11881
+ for (const item of elements) {
11882
+ const k = toElementFn ? toElementFn(item) : item;
11883
+ this.add(k);
11884
+ }
11872
11885
  }
11873
11886
  /**
11874
11887
  * Create the strict default comparator.
@@ -12179,16 +12192,34 @@ var TreeMultiMap = class _TreeMultiMap {
12179
12192
  #isDefaultComparator;
12180
12193
  /**
12181
12194
  * Creates a new TreeMultiMap.
12182
- * @param keysNodesEntriesOrRaws - Initial entries
12183
- * @param options - Configuration options
12195
+ * @param keysNodesEntriesOrRaws - Initial entries, or raw elements if `toEntryFn` is provided.
12196
+ * @param options - Configuration options including optional `toEntryFn` to transform raw elements.
12184
12197
  * @remarks Time O(m log m), Space O(m) where m is the number of initial entries
12198
+ * @example
12199
+ * // Standard usage with entries
12200
+ * const mmap = new TreeMultiMap([['a', ['x', 'y']], ['b', ['z']]]);
12201
+ *
12202
+ * // Using toEntryFn to transform raw objects
12203
+ * const players = [{ score: 100, items: ['sword'] }, { score: 200, items: ['shield', 'bow'] }];
12204
+ * const mmap = new TreeMultiMap(players, { toEntryFn: p => [p.score, p.items] });
12185
12205
  */
12186
12206
  constructor(keysNodesEntriesOrRaws = [], options = {}) {
12187
12207
  const comparator = options.comparator ?? TreeSet.createDefaultComparator();
12188
12208
  this.#isDefaultComparator = options.comparator === void 0;
12209
+ const toEntryFn = options.toEntryFn;
12189
12210
  this.#core = new RedBlackTree([], { ...options, comparator, isMapMode: options.isMapMode });
12190
12211
  for (const x of keysNodesEntriesOrRaws) {
12191
12212
  if (x === null || x === void 0) continue;
12213
+ if (toEntryFn) {
12214
+ const [k, bucket] = toEntryFn(x);
12215
+ if (k === null || k === void 0) continue;
12216
+ if (bucket !== void 0) {
12217
+ this.#core.set(k, Array.isArray(bucket) ? [...bucket] : [bucket]);
12218
+ } else {
12219
+ this.#core.set(k, []);
12220
+ }
12221
+ continue;
12222
+ }
12192
12223
  if (Array.isArray(x)) {
12193
12224
  const [k, bucket] = x;
12194
12225
  if (k === null || k === void 0) continue;
@@ -12524,8 +12555,8 @@ var TreeMultiMap = class _TreeMultiMap {
12524
12555
  * Prints the internal tree structure (for debugging).
12525
12556
  * @remarks Time O(n), Space O(n)
12526
12557
  */
12527
- print(...args) {
12528
- return this.#core.print(...args);
12558
+ print() {
12559
+ this.#core.print();
12529
12560
  }
12530
12561
  /**
12531
12562
  * Executes a callback for each entry.
@@ -12576,7 +12607,7 @@ var TreeMultiMap = class _TreeMultiMap {
12576
12607
  setMany(keysNodesEntriesOrRaws) {
12577
12608
  const results = [];
12578
12609
  for (const x of keysNodesEntriesOrRaws) {
12579
- results.push(this.set(x, void 0));
12610
+ results.push(this.set(x));
12580
12611
  }
12581
12612
  return results;
12582
12613
  }
@@ -12584,22 +12615,22 @@ var TreeMultiMap = class _TreeMultiMap {
12584
12615
  * Searches for entries within a key range.
12585
12616
  * @remarks Time O(log n + k), Space O(k) where k is result size
12586
12617
  */
12587
- rangeSearch(range, callback, isBalanced) {
12588
- return this.#core.rangeSearch(range, callback, isBalanced);
12618
+ rangeSearch(range, callback) {
12619
+ return this.#core.rangeSearch(range, callback);
12589
12620
  }
12590
12621
  /**
12591
12622
  * Creates a shallow clone of this map.
12592
12623
  * @remarks Time O(n log n), Space O(n)
12593
12624
  */
12594
12625
  clone() {
12595
- return new _TreeMultiMap(this, { comparator: this.comparator, isMapMode: this.#core._isMapMode });
12626
+ return new _TreeMultiMap(this, { comparator: this.comparator, isMapMode: this.#core.isMapMode });
12596
12627
  }
12597
12628
  /**
12598
12629
  * Expose comparator for advanced usage/testing (read-only).
12599
12630
  * @remarks Time O(1), Space O(1)
12600
12631
  */
12601
12632
  get comparator() {
12602
- return this.#core._comparator;
12633
+ return this.#core.comparator;
12603
12634
  }
12604
12635
  };
12605
12636
 
@@ -12612,22 +12643,38 @@ var TreeMap = class _TreeMap {
12612
12643
  #isDefaultComparator;
12613
12644
  #userComparator;
12614
12645
  /**
12615
- * Create a TreeMap from an iterable of `[key, value]` entries.
12646
+ * Create a TreeMap from an iterable of `[key, value]` entries or raw elements.
12647
+ *
12648
+ * @param entries - Iterable of `[key, value]` tuples, or raw elements if `toEntryFn` is provided.
12649
+ * @param options - Configuration options including optional `toEntryFn` to transform raw elements.
12650
+ * @throws {TypeError} If any entry is not a 2-tuple-like value (when no toEntryFn), or when using
12651
+ * the default comparator and encountering unsupported/invalid keys (e.g. `NaN`, invalid `Date`).
12652
+ * @example
12653
+ * // Standard usage with entries
12654
+ * const map = new TreeMap([['a', 1], ['b', 2]]);
12616
12655
  *
12617
- * @throws {TypeError} If any entry is not a 2-tuple-like value, or when using the default comparator
12618
- * and encountering unsupported/invalid keys (e.g. `NaN`, invalid `Date`).
12656
+ * // Using toEntryFn to transform raw objects
12657
+ * const users = [{ id: 1, name: 'Alice' }, { id: 2, name: 'Bob' }];
12658
+ * const map = new TreeMap<number, User, User>(users, { toEntryFn: u => [u.id, u] });
12619
12659
  */
12620
12660
  constructor(entries = [], options = {}) {
12621
12661
  this.#userComparator = options.comparator;
12662
+ const toEntryFn = options.toEntryFn;
12622
12663
  const comparator = options.comparator ?? _TreeMap.createDefaultComparator();
12623
12664
  this.#isDefaultComparator = options.comparator === void 0;
12624
12665
  this.#core = new RedBlackTree([], { comparator, isMapMode: options.isMapMode });
12625
12666
  for (const item of entries) {
12626
- if (!Array.isArray(item) || item.length < 2) {
12627
- throw new TypeError("TreeMap: each entry must be a [key, value] tuple");
12667
+ let k;
12668
+ let v;
12669
+ if (toEntryFn) {
12670
+ [k, v] = toEntryFn(item);
12671
+ } else {
12672
+ if (!Array.isArray(item) || item.length < 2) {
12673
+ throw new TypeError("TreeMap: each entry must be a [key, value] tuple");
12674
+ }
12675
+ k = item[0];
12676
+ v = item[1];
12628
12677
  }
12629
- const k = item[0];
12630
- const v = item[1];
12631
12678
  this.set(k, v);
12632
12679
  }
12633
12680
  }
@@ -12953,15 +13000,26 @@ var TreeMultiSet = class _TreeMultiSet {
12953
13000
  // total occurrences (sumCounts)
12954
13001
  /**
12955
13002
  * Creates a new TreeMultiSet.
12956
- * @param elements - Initial elements to add
12957
- * @param options - Configuration options
13003
+ * @param elements - Initial elements to add, or raw elements if `toElementFn` is provided.
13004
+ * @param options - Configuration options including optional `toElementFn` to transform raw elements.
12958
13005
  * @remarks Time O(m log m), Space O(m) where m is the number of initial elements
13006
+ * @example
13007
+ * // Standard usage with elements
13008
+ * const mset = new TreeMultiSet([1, 2, 2, 3]);
13009
+ *
13010
+ * // Using toElementFn to transform raw objects
13011
+ * const items = [{ score: 100 }, { score: 200 }, { score: 100 }];
13012
+ * const mset = new TreeMultiSet<number, Item>(items, { toElementFn: item => item.score });
12959
13013
  */
12960
13014
  constructor(elements = [], options = {}) {
13015
+ const toElementFn = options.toElementFn;
12961
13016
  const comparator = options.comparator ?? TreeSet.createDefaultComparator();
12962
13017
  this.#isDefaultComparator = options.comparator === void 0;
12963
13018
  this.#core = new RedBlackTree([], { comparator, isMapMode: options.isMapMode });
12964
- for (const k of elements) this.add(k);
13019
+ for (const item of elements) {
13020
+ const k = toElementFn ? toElementFn(item) : item;
13021
+ this.add(k);
13022
+ }
12965
13023
  }
12966
13024
  /**
12967
13025
  * Validates the key against the default comparator rules.
@@ -14299,20 +14357,17 @@ var Trie = class extends IterableElementBase {
14299
14357
  prefix = this._caseProcess(prefix);
14300
14358
  const words = [];
14301
14359
  let found = 0;
14302
- function dfs(node, word) {
14303
- for (const char of node.children.keys()) {
14304
- const charNode = node.children.get(char);
14305
- if (charNode !== void 0) {
14306
- dfs(charNode, word.concat(char));
14307
- }
14360
+ const dfs = /* @__PURE__ */ __name((node, word) => {
14361
+ for (const [char, childNode] of node.children) {
14362
+ if (found >= max) return;
14363
+ dfs(childNode, word + char);
14308
14364
  }
14309
14365
  if (node.isEnd) {
14310
- if (found > max - 1) return;
14366
+ if (found >= max) return;
14311
14367
  words.push(word);
14312
14368
  found++;
14313
14369
  }
14314
- }
14315
- __name(dfs, "dfs");
14370
+ }, "dfs");
14316
14371
  let startNode = this.root;
14317
14372
  if (prefix) {
14318
14373
  for (const c of prefix) {
@@ -11845,10 +11845,19 @@ var RedBlackTree = _RedBlackTree;
11845
11845
  var _core, _isDefaultComparator, _userComparator;
11846
11846
  var _TreeSet = class _TreeSet {
11847
11847
  /**
11848
- * Create a TreeSet from an iterable of keys.
11848
+ * Create a TreeSet from an iterable of keys or raw elements.
11849
11849
  *
11850
+ * @param elements - Iterable of keys, or raw elements if `toElementFn` is provided.
11851
+ * @param options - Configuration options including optional `toElementFn` to transform raw elements.
11850
11852
  * @throws {TypeError} When using the default comparator and encountering unsupported key types,
11851
11853
  * or invalid keys (e.g. `NaN`, invalid `Date`).
11854
+ * @example
11855
+ * // Standard usage with keys
11856
+ * const set = new TreeSet([3, 1, 2]);
11857
+ *
11858
+ * // Using toElementFn to transform raw objects
11859
+ * const users = [{ id: 3, name: 'Alice' }, { id: 1, name: 'Bob' }];
11860
+ * const set = new TreeSet<number, User>(users, { toElementFn: u => u.id });
11852
11861
  */
11853
11862
  constructor(elements = [], options = {}) {
11854
11863
  __privateAdd(this, _core);
@@ -11856,10 +11865,14 @@ var _TreeSet = class _TreeSet {
11856
11865
  __privateAdd(this, _userComparator);
11857
11866
  var _a;
11858
11867
  __privateSet(this, _userComparator, options.comparator);
11868
+ const toElementFn = options.toElementFn;
11859
11869
  const comparator = (_a = options.comparator) != null ? _a : _TreeSet.createDefaultComparator();
11860
11870
  __privateSet(this, _isDefaultComparator, options.comparator === void 0);
11861
11871
  __privateSet(this, _core, new RedBlackTree([], { comparator, isMapMode: options.isMapMode }));
11862
- for (const k of elements) this.add(k);
11872
+ for (const item of elements) {
11873
+ const k = toElementFn ? toElementFn(item) : item;
11874
+ this.add(k);
11875
+ }
11863
11876
  }
11864
11877
  /**
11865
11878
  * Create the strict default comparator.
@@ -12171,9 +12184,16 @@ var _core2, _isDefaultComparator2;
12171
12184
  var _TreeMultiMap = class _TreeMultiMap {
12172
12185
  /**
12173
12186
  * Creates a new TreeMultiMap.
12174
- * @param keysNodesEntriesOrRaws - Initial entries
12175
- * @param options - Configuration options
12187
+ * @param keysNodesEntriesOrRaws - Initial entries, or raw elements if `toEntryFn` is provided.
12188
+ * @param options - Configuration options including optional `toEntryFn` to transform raw elements.
12176
12189
  * @remarks Time O(m log m), Space O(m) where m is the number of initial entries
12190
+ * @example
12191
+ * // Standard usage with entries
12192
+ * const mmap = new TreeMultiMap([['a', ['x', 'y']], ['b', ['z']]]);
12193
+ *
12194
+ * // Using toEntryFn to transform raw objects
12195
+ * const players = [{ score: 100, items: ['sword'] }, { score: 200, items: ['shield', 'bow'] }];
12196
+ * const mmap = new TreeMultiMap(players, { toEntryFn: p => [p.score, p.items] });
12177
12197
  */
12178
12198
  constructor(keysNodesEntriesOrRaws = [], options = {}) {
12179
12199
  __privateAdd(this, _core2);
@@ -12181,9 +12201,20 @@ var _TreeMultiMap = class _TreeMultiMap {
12181
12201
  var _a;
12182
12202
  const comparator = (_a = options.comparator) != null ? _a : TreeSet.createDefaultComparator();
12183
12203
  __privateSet(this, _isDefaultComparator2, options.comparator === void 0);
12204
+ const toEntryFn = options.toEntryFn;
12184
12205
  __privateSet(this, _core2, new RedBlackTree([], { ...options, comparator, isMapMode: options.isMapMode }));
12185
12206
  for (const x of keysNodesEntriesOrRaws) {
12186
12207
  if (x === null || x === void 0) continue;
12208
+ if (toEntryFn) {
12209
+ const [k, bucket] = toEntryFn(x);
12210
+ if (k === null || k === void 0) continue;
12211
+ if (bucket !== void 0) {
12212
+ __privateGet(this, _core2).set(k, Array.isArray(bucket) ? [...bucket] : [bucket]);
12213
+ } else {
12214
+ __privateGet(this, _core2).set(k, []);
12215
+ }
12216
+ continue;
12217
+ }
12187
12218
  if (Array.isArray(x)) {
12188
12219
  const [k, bucket] = x;
12189
12220
  if (k === null || k === void 0) continue;
@@ -12519,8 +12550,8 @@ var _TreeMultiMap = class _TreeMultiMap {
12519
12550
  * Prints the internal tree structure (for debugging).
12520
12551
  * @remarks Time O(n), Space O(n)
12521
12552
  */
12522
- print(...args) {
12523
- return __privateGet(this, _core2).print(...args);
12553
+ print() {
12554
+ __privateGet(this, _core2).print();
12524
12555
  }
12525
12556
  /**
12526
12557
  * Executes a callback for each entry.
@@ -12571,7 +12602,7 @@ var _TreeMultiMap = class _TreeMultiMap {
12571
12602
  setMany(keysNodesEntriesOrRaws) {
12572
12603
  const results = [];
12573
12604
  for (const x of keysNodesEntriesOrRaws) {
12574
- results.push(this.set(x, void 0));
12605
+ results.push(this.set(x));
12575
12606
  }
12576
12607
  return results;
12577
12608
  }
@@ -12579,22 +12610,22 @@ var _TreeMultiMap = class _TreeMultiMap {
12579
12610
  * Searches for entries within a key range.
12580
12611
  * @remarks Time O(log n + k), Space O(k) where k is result size
12581
12612
  */
12582
- rangeSearch(range, callback, isBalanced) {
12583
- return __privateGet(this, _core2).rangeSearch(range, callback, isBalanced);
12613
+ rangeSearch(range, callback) {
12614
+ return __privateGet(this, _core2).rangeSearch(range, callback);
12584
12615
  }
12585
12616
  /**
12586
12617
  * Creates a shallow clone of this map.
12587
12618
  * @remarks Time O(n log n), Space O(n)
12588
12619
  */
12589
12620
  clone() {
12590
- return new _TreeMultiMap(this, { comparator: this.comparator, isMapMode: __privateGet(this, _core2)._isMapMode });
12621
+ return new _TreeMultiMap(this, { comparator: this.comparator, isMapMode: __privateGet(this, _core2).isMapMode });
12591
12622
  }
12592
12623
  /**
12593
12624
  * Expose comparator for advanced usage/testing (read-only).
12594
12625
  * @remarks Time O(1), Space O(1)
12595
12626
  */
12596
12627
  get comparator() {
12597
- return __privateGet(this, _core2)._comparator;
12628
+ return __privateGet(this, _core2).comparator;
12598
12629
  }
12599
12630
  };
12600
12631
  _core2 = new WeakMap();
@@ -12606,10 +12637,19 @@ var TreeMultiMap = _TreeMultiMap;
12606
12637
  var _core3, _isDefaultComparator3, _userComparator2;
12607
12638
  var _TreeMap = class _TreeMap {
12608
12639
  /**
12609
- * Create a TreeMap from an iterable of `[key, value]` entries.
12640
+ * Create a TreeMap from an iterable of `[key, value]` entries or raw elements.
12641
+ *
12642
+ * @param entries - Iterable of `[key, value]` tuples, or raw elements if `toEntryFn` is provided.
12643
+ * @param options - Configuration options including optional `toEntryFn` to transform raw elements.
12644
+ * @throws {TypeError} If any entry is not a 2-tuple-like value (when no toEntryFn), or when using
12645
+ * the default comparator and encountering unsupported/invalid keys (e.g. `NaN`, invalid `Date`).
12646
+ * @example
12647
+ * // Standard usage with entries
12648
+ * const map = new TreeMap([['a', 1], ['b', 2]]);
12610
12649
  *
12611
- * @throws {TypeError} If any entry is not a 2-tuple-like value, or when using the default comparator
12612
- * and encountering unsupported/invalid keys (e.g. `NaN`, invalid `Date`).
12650
+ * // Using toEntryFn to transform raw objects
12651
+ * const users = [{ id: 1, name: 'Alice' }, { id: 2, name: 'Bob' }];
12652
+ * const map = new TreeMap<number, User, User>(users, { toEntryFn: u => [u.id, u] });
12613
12653
  */
12614
12654
  constructor(entries = [], options = {}) {
12615
12655
  __privateAdd(this, _core3);
@@ -12617,15 +12657,22 @@ var _TreeMap = class _TreeMap {
12617
12657
  __privateAdd(this, _userComparator2);
12618
12658
  var _a;
12619
12659
  __privateSet(this, _userComparator2, options.comparator);
12660
+ const toEntryFn = options.toEntryFn;
12620
12661
  const comparator = (_a = options.comparator) != null ? _a : _TreeMap.createDefaultComparator();
12621
12662
  __privateSet(this, _isDefaultComparator3, options.comparator === void 0);
12622
12663
  __privateSet(this, _core3, new RedBlackTree([], { comparator, isMapMode: options.isMapMode }));
12623
12664
  for (const item of entries) {
12624
- if (!Array.isArray(item) || item.length < 2) {
12625
- throw new TypeError("TreeMap: each entry must be a [key, value] tuple");
12665
+ let k;
12666
+ let v;
12667
+ if (toEntryFn) {
12668
+ [k, v] = toEntryFn(item);
12669
+ } else {
12670
+ if (!Array.isArray(item) || item.length < 2) {
12671
+ throw new TypeError("TreeMap: each entry must be a [key, value] tuple");
12672
+ }
12673
+ k = item[0];
12674
+ v = item[1];
12626
12675
  }
12627
- const k = item[0];
12628
- const v = item[1];
12629
12676
  this.set(k, v);
12630
12677
  }
12631
12678
  }
@@ -12952,19 +12999,30 @@ var _TreeMultiSet = class _TreeMultiSet {
12952
12999
  // total occurrences (sumCounts)
12953
13000
  /**
12954
13001
  * Creates a new TreeMultiSet.
12955
- * @param elements - Initial elements to add
12956
- * @param options - Configuration options
13002
+ * @param elements - Initial elements to add, or raw elements if `toElementFn` is provided.
13003
+ * @param options - Configuration options including optional `toElementFn` to transform raw elements.
12957
13004
  * @remarks Time O(m log m), Space O(m) where m is the number of initial elements
13005
+ * @example
13006
+ * // Standard usage with elements
13007
+ * const mset = new TreeMultiSet([1, 2, 2, 3]);
13008
+ *
13009
+ * // Using toElementFn to transform raw objects
13010
+ * const items = [{ score: 100 }, { score: 200 }, { score: 100 }];
13011
+ * const mset = new TreeMultiSet<number, Item>(items, { toElementFn: item => item.score });
12958
13012
  */
12959
13013
  constructor(elements = [], options = {}) {
12960
13014
  __privateAdd(this, _core4);
12961
13015
  __privateAdd(this, _isDefaultComparator4);
12962
13016
  __publicField(this, "_size", 0);
12963
13017
  var _a;
13018
+ const toElementFn = options.toElementFn;
12964
13019
  const comparator = (_a = options.comparator) != null ? _a : TreeSet.createDefaultComparator();
12965
13020
  __privateSet(this, _isDefaultComparator4, options.comparator === void 0);
12966
13021
  __privateSet(this, _core4, new RedBlackTree([], { comparator, isMapMode: options.isMapMode }));
12967
- for (const k of elements) this.add(k);
13022
+ for (const item of elements) {
13023
+ const k = toElementFn ? toElementFn(item) : item;
13024
+ this.add(k);
13025
+ }
12968
13026
  }
12969
13027
  /**
12970
13028
  * Validates the key against the default comparator rules.
@@ -14303,20 +14361,17 @@ var _Trie = class _Trie extends IterableElementBase {
14303
14361
  prefix = this._caseProcess(prefix);
14304
14362
  const words = [];
14305
14363
  let found = 0;
14306
- function dfs(node, word) {
14307
- for (const char of node.children.keys()) {
14308
- const charNode = node.children.get(char);
14309
- if (charNode !== void 0) {
14310
- dfs(charNode, word.concat(char));
14311
- }
14364
+ const dfs = /* @__PURE__ */ __name((node, word) => {
14365
+ for (const [char, childNode] of node.children) {
14366
+ if (found >= max) return;
14367
+ dfs(childNode, word + char);
14312
14368
  }
14313
14369
  if (node.isEnd) {
14314
- if (found > max - 1) return;
14370
+ if (found >= max) return;
14315
14371
  words.push(word);
14316
14372
  found++;
14317
14373
  }
14318
- }
14319
- __name(dfs, "dfs");
14374
+ }, "dfs");
14320
14375
  let startNode = this.root;
14321
14376
  if (prefix) {
14322
14377
  for (const c of prefix) {
@@ -14,15 +14,24 @@ import type { TreeMapEntryCallback, TreeMapOptions, TreeMapRangeOptions, TreeMap
14
14
  * - Iteration order is ascending by key.
15
15
  * - No node exposure: all APIs use keys/values only.
16
16
  */
17
- export declare class TreeMap<K = any, V = any> implements Iterable<[K, V | undefined]> {
17
+ export declare class TreeMap<K = any, V = any, R = [K, V]> implements Iterable<[K, V | undefined]> {
18
18
  #private;
19
19
  /**
20
- * Create a TreeMap from an iterable of `[key, value]` entries.
20
+ * Create a TreeMap from an iterable of `[key, value]` entries or raw elements.
21
21
  *
22
- * @throws {TypeError} If any entry is not a 2-tuple-like value, or when using the default comparator
23
- * and encountering unsupported/invalid keys (e.g. `NaN`, invalid `Date`).
22
+ * @param entries - Iterable of `[key, value]` tuples, or raw elements if `toEntryFn` is provided.
23
+ * @param options - Configuration options including optional `toEntryFn` to transform raw elements.
24
+ * @throws {TypeError} If any entry is not a 2-tuple-like value (when no toEntryFn), or when using
25
+ * the default comparator and encountering unsupported/invalid keys (e.g. `NaN`, invalid `Date`).
26
+ * @example
27
+ * // Standard usage with entries
28
+ * const map = new TreeMap([['a', 1], ['b', 2]]);
29
+ *
30
+ * // Using toEntryFn to transform raw objects
31
+ * const users = [{ id: 1, name: 'Alice' }, { id: 2, name: 'Bob' }];
32
+ * const map = new TreeMap<number, User, User>(users, { toEntryFn: u => [u.id, u] });
24
33
  */
25
- constructor(entries?: Iterable<[K, V | undefined]>, options?: TreeMapOptions<K>);
34
+ constructor(entries?: Iterable<R> | Iterable<[K, V | undefined]>, options?: TreeMapOptions<K, V, R>);
26
35
  /**
27
36
  * Create the strict default comparator.
28
37
  *
@@ -98,7 +107,9 @@ export declare class TreeMap<K = any, V = any> implements Iterable<[K, V | undef
98
107
  * This mirrors `RedBlackTree.map`: mapping produces a new ordered container.
99
108
  * @remarks Time O(n log n) expected, Space O(n)
100
109
  */
101
- map<MK, MV>(callbackfn: TreeMapEntryCallback<K, V, [MK, MV], TreeMap<K, V>>, options?: TreeMapOptions<MK>, thisArg?: unknown): TreeMap<MK, MV>;
110
+ map<MK, MV>(callbackfn: TreeMapEntryCallback<K, V, [MK, MV], TreeMap<K, V>>, options?: Omit<TreeMapOptions<MK, MV>, 'toEntryFn'> & {
111
+ comparator?: (a: MK, b: MK) => number;
112
+ }, thisArg?: unknown): TreeMap<MK, MV>;
102
113
  /**
103
114
  * Create a new TreeMap containing only entries that satisfy the predicate.
104
115
  * @remarks Time O(n log n) expected, Space O(n)
@@ -6,6 +6,7 @@
6
6
  * @license MIT License
7
7
  */
8
8
  import type { Comparator, TreeMultiMapOptions } from '../../types';
9
+ import { Range } from '../../common';
9
10
  import { RedBlackTreeNode } from './red-black-tree';
10
11
  /**
11
12
  * Node type used by TreeMultiMap (alias to RedBlackTreeNode for backward compatibility).
@@ -192,9 +193,16 @@ export declare class TreeMultiMap<K = any, V = any, R = any> implements Iterable
192
193
  #private;
193
194
  /**
194
195
  * Creates a new TreeMultiMap.
195
- * @param keysNodesEntriesOrRaws - Initial entries
196
- * @param options - Configuration options
196
+ * @param keysNodesEntriesOrRaws - Initial entries, or raw elements if `toEntryFn` is provided.
197
+ * @param options - Configuration options including optional `toEntryFn` to transform raw elements.
197
198
  * @remarks Time O(m log m), Space O(m) where m is the number of initial entries
199
+ * @example
200
+ * // Standard usage with entries
201
+ * const mmap = new TreeMultiMap([['a', ['x', 'y']], ['b', ['z']]]);
202
+ *
203
+ * // Using toEntryFn to transform raw objects
204
+ * const players = [{ score: 100, items: ['sword'] }, { score: 200, items: ['shield', 'bow'] }];
205
+ * const mmap = new TreeMultiMap(players, { toEntryFn: p => [p.score, p.items] });
198
206
  */
199
207
  constructor(keysNodesEntriesOrRaws?: Iterable<K | [K | null | undefined, V[] | undefined] | null | undefined | R>, options?: TreeMultiMapOptions<K, V[], R>);
200
208
  /**
@@ -372,7 +380,7 @@ export declare class TreeMultiMap<K = any, V = any, R = any> implements Iterable
372
380
  * Prints the internal tree structure (for debugging).
373
381
  * @remarks Time O(n), Space O(n)
374
382
  */
375
- print(...args: any[]): void;
383
+ print(): void;
376
384
  /**
377
385
  * Executes a callback for each entry.
378
386
  * @remarks Time O(n), Space O(1)
@@ -397,12 +405,12 @@ export declare class TreeMultiMap<K = any, V = any, R = any> implements Iterable
397
405
  * Sets multiple entries at once.
398
406
  * @remarks Time O(m log n), Space O(m) where m is input size
399
407
  */
400
- setMany(keysNodesEntriesOrRaws: Iterable<any>): boolean[];
408
+ setMany(keysNodesEntriesOrRaws: Iterable<K | [K | null | undefined, V[] | undefined]>): boolean[];
401
409
  /**
402
410
  * Searches for entries within a key range.
403
411
  * @remarks Time O(log n + k), Space O(k) where k is result size
404
412
  */
405
- rangeSearch<C extends (node: RedBlackTreeNode<K, V[]>) => any>(range: any, callback?: C, isBalanced?: any): ReturnType<C>[];
413
+ rangeSearch<C extends (node: RedBlackTreeNode<K, V[]>) => unknown>(range: Range<K> | [K, K], callback?: C): ReturnType<C>[];
406
414
  /**
407
415
  * Creates a shallow clone of this map.
408
416
  * @remarks Time O(n log n), Space O(n)
@@ -8,16 +8,23 @@
8
8
  * - `delete(x)` removes one occurrence by default
9
9
  */
10
10
  import type { Comparator, TreeMultiSetOptions } from '../../types';
11
- export declare class TreeMultiSet<K = any> implements Iterable<K> {
11
+ export declare class TreeMultiSet<K = any, R = K> implements Iterable<K> {
12
12
  #private;
13
13
  private _size;
14
14
  /**
15
15
  * Creates a new TreeMultiSet.
16
- * @param elements - Initial elements to add
17
- * @param options - Configuration options
16
+ * @param elements - Initial elements to add, or raw elements if `toElementFn` is provided.
17
+ * @param options - Configuration options including optional `toElementFn` to transform raw elements.
18
18
  * @remarks Time O(m log m), Space O(m) where m is the number of initial elements
19
- */
20
- constructor(elements?: Iterable<K>, options?: TreeMultiSetOptions<K>);
19
+ * @example
20
+ * // Standard usage with elements
21
+ * const mset = new TreeMultiSet([1, 2, 2, 3]);
22
+ *
23
+ * // Using toElementFn to transform raw objects
24
+ * const items = [{ score: 100 }, { score: 200 }, { score: 100 }];
25
+ * const mset = new TreeMultiSet<number, Item>(items, { toElementFn: item => item.score });
26
+ */
27
+ constructor(elements?: Iterable<R> | Iterable<K>, options?: TreeMultiSetOptions<K, R>);
21
28
  /**
22
29
  * Validates the key against the default comparator rules.
23
30
  * @remarks Time O(1), Space O(1)
@@ -14,15 +14,24 @@ import type { TreeSetElementCallback, TreeSetOptions, TreeSetRangeOptions, TreeS
14
14
  * - Iteration order is ascending by key.
15
15
  * - No node exposure: all APIs use keys only.
16
16
  */
17
- export declare class TreeSet<K = any> implements Iterable<K> {
17
+ export declare class TreeSet<K = any, R = K> implements Iterable<K> {
18
18
  #private;
19
19
  /**
20
- * Create a TreeSet from an iterable of keys.
20
+ * Create a TreeSet from an iterable of keys or raw elements.
21
21
  *
22
+ * @param elements - Iterable of keys, or raw elements if `toElementFn` is provided.
23
+ * @param options - Configuration options including optional `toElementFn` to transform raw elements.
22
24
  * @throws {TypeError} When using the default comparator and encountering unsupported key types,
23
25
  * or invalid keys (e.g. `NaN`, invalid `Date`).
26
+ * @example
27
+ * // Standard usage with keys
28
+ * const set = new TreeSet([3, 1, 2]);
29
+ *
30
+ * // Using toElementFn to transform raw objects
31
+ * const users = [{ id: 3, name: 'Alice' }, { id: 1, name: 'Bob' }];
32
+ * const set = new TreeSet<number, User>(users, { toElementFn: u => u.id });
24
33
  */
25
- constructor(elements?: Iterable<K>, options?: TreeSetOptions<K>);
34
+ constructor(elements?: Iterable<R> | Iterable<K>, options?: TreeSetOptions<K, R>);
26
35
  /**
27
36
  * Create the strict default comparator.
28
37
  *
@@ -92,7 +101,9 @@ export declare class TreeSet<K = any> implements Iterable<K> {
92
101
  * This mirrors `RedBlackTree.map`: mapping produces a new ordered container.
93
102
  * @remarks Time O(n log n) expected, Space O(n)
94
103
  */
95
- map<MK>(callbackfn: TreeSetElementCallback<K, MK, TreeSet<K>>, options?: TreeSetOptions<MK>, thisArg?: unknown): TreeSet<MK>;
104
+ map<MK>(callbackfn: TreeSetElementCallback<K, MK, TreeSet<K>>, options?: Omit<TreeSetOptions<MK>, 'toElementFn'> & {
105
+ comparator?: (a: MK, b: MK) => number;
106
+ }, thisArg?: unknown): TreeSet<MK>;
96
107
  /**
97
108
  * Create a new TreeSet containing only values that satisfy the predicate.
98
109
  * @remarks Time O(n log n) expected, Space O(n)
@@ -1,5 +1,5 @@
1
1
  import type { Comparator } from '../../common';
2
- export interface TreeMapOptions<K> {
2
+ export interface TreeMapOptions<K, V, R = [K, V]> {
3
3
  comparator?: Comparator<K>;
4
4
  /**
5
5
  * Pass-through to the underlying RedBlackTree/BST `isMapMode` option.
@@ -8,6 +8,11 @@ export interface TreeMapOptions<K> {
8
8
  * - `false`: store values on tree nodes (Node Mode).
9
9
  */
10
10
  isMapMode?: boolean;
11
+ /**
12
+ * Transform raw elements into `[key, value]` entries.
13
+ * When provided, the constructor accepts `Iterable<R>` instead of `Iterable<[K, V]>`.
14
+ */
15
+ toEntryFn?: (rawElement: R) => [K, V];
11
16
  }
12
17
  export type TreeMapRangeOptions = {
13
18
  lowInclusive?: boolean;
@@ -1,5 +1,5 @@
1
1
  import type { Comparator } from '../../common';
2
- export interface TreeMultiSetOptions<K> {
2
+ export interface TreeMultiSetOptions<K, R = K> {
3
3
  comparator?: Comparator<K>;
4
4
  /**
5
5
  * Pass-through to the underlying RedBlackTree/BST `isMapMode` option.
@@ -8,4 +8,9 @@ export interface TreeMultiSetOptions<K> {
8
8
  * - `false`: Node Mode.
9
9
  */
10
10
  isMapMode?: boolean;
11
+ /**
12
+ * Transform raw elements into keys.
13
+ * When provided, the constructor accepts `Iterable<R>` instead of `Iterable<K>`.
14
+ */
15
+ toElementFn?: (rawElement: R) => K;
11
16
  }