memory-graph 0.3.42__tar.gz → 0.3.44__tar.gz

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 (310) hide show
  1. {memory_graph-0.3.42/memory_graph.egg-info → memory_graph-0.3.44}/PKG-INFO +42 -7
  2. {memory_graph-0.3.42 → memory_graph-0.3.44}/README.md +41 -6
  3. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/add_one.gv +18 -18
  4. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_key_value.gv +12 -12
  5. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_leaf.gv +5 -5
  6. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_linear.gv +12 -12
  7. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_table.gv +12 -12
  8. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search.gv +34 -34
  9. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search_linear.gv +29 -29
  10. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_tree.gv +35 -35
  11. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary0.gv +6 -6
  12. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary0.png +0 -0
  13. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary1.gv +8 -8
  14. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary1.png +0 -0
  15. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary10.gv +16 -16
  16. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary10.png +0 -0
  17. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary11.gv +14 -14
  18. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary11.png +0 -0
  19. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary12.gv +12 -12
  20. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary12.png +0 -0
  21. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary13.gv +10 -10
  22. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary13.png +0 -0
  23. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary14.gv +8 -8
  24. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary14.png +0 -0
  25. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary2.gv +10 -10
  26. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary2.png +0 -0
  27. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary3.gv +12 -12
  28. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary3.png +0 -0
  29. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary4.gv +14 -14
  30. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary4.png +0 -0
  31. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary5.gv +16 -16
  32. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary5.png +0 -0
  33. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary6.gv +18 -18
  34. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary6.png +0 -0
  35. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary7.gv +20 -20
  36. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary7.png +0 -0
  37. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary8.gv +20 -20
  38. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary8.png +0 -0
  39. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary9.gv +18 -18
  40. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary9.png +0 -0
  41. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/copies.gv +20 -20
  42. memory_graph-0.3.44/images/copies_immutable.gv +34 -0
  43. memory_graph-0.3.44/images/copies_immutable.png +0 -0
  44. memory_graph-0.3.44/images/copies_mix.gv +49 -0
  45. memory_graph-0.3.44/images/copies_mix.png +0 -0
  46. memory_graph-0.3.44/images/copy_immutable.gv +34 -0
  47. memory_graph-0.3.44/images/copy_immutable.png +0 -0
  48. memory_graph-0.3.44/images/copy_immutable.py +15 -0
  49. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/copy_method.gv +16 -16
  50. memory_graph-0.3.44/images/copy_mix.gv +49 -0
  51. memory_graph-0.3.44/images/copy_mix.png +0 -0
  52. memory_graph-0.3.44/images/copy_mix.py +15 -0
  53. memory_graph-0.3.44/images/copy_mix.py~ +15 -0
  54. memory_graph-0.3.44/images/copy_mutable.png +0 -0
  55. memory_graph-0.3.44/images/copy_mutable.py +15 -0
  56. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/create_images.sh +3 -1
  57. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging0.gv +8 -8
  58. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging0.png +0 -0
  59. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging1.gv +11 -11
  60. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging1.png +0 -0
  61. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging2.gv +13 -13
  62. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging2.png +0 -0
  63. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging3.gv +15 -15
  64. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging3.png +0 -0
  65. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging4.gv +17 -17
  66. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging4.png +0 -0
  67. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging5.gv +17 -17
  68. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging5.png +0 -0
  69. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_numpy.gv +15 -15
  70. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_pandas.gv +8 -8
  71. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial0.gv +3 -3
  72. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial0.png +0 -0
  73. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial1.gv +6 -6
  74. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial1.png +0 -0
  75. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial2.gv +8 -8
  76. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial2.png +0 -0
  77. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial3.gv +10 -10
  78. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial3.png +0 -0
  79. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial4.gv +12 -12
  80. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial4.png +0 -0
  81. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial5.gv +14 -14
  82. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial5.png +0 -0
  83. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial6.gv +12 -12
  84. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial6.png +0 -0
  85. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial7.gv +10 -10
  86. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial7.png +0 -0
  87. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial8.gv +8 -8
  88. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial8.png +0 -0
  89. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial9.gv +6 -6
  90. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial9.png +0 -0
  91. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hash_set.gv +29 -29
  92. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/immutable1.gv +4 -4
  93. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/immutable2.gv +6 -6
  94. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/introspect_depth.gv +56 -56
  95. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/linked_list.gv +20 -20
  96. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/many_types.gv +12 -12
  97. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/mutable1.gv +4 -4
  98. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/mutable2.gv +4 -4
  99. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/not_node_types1.gv +6 -6
  100. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/not_node_types2.gv +14 -14
  101. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set0.gv +11 -11
  102. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set0.png +0 -0
  103. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set1.gv +17 -17
  104. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set1.png +0 -0
  105. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set10.gv +36 -36
  106. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set10.png +0 -0
  107. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set11.gv +31 -31
  108. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set11.png +0 -0
  109. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set12.gv +31 -31
  110. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set12.png +0 -0
  111. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set13.gv +36 -36
  112. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set13.png +0 -0
  113. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set14.gv +41 -41
  114. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set14.png +0 -0
  115. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set15.gv +43 -43
  116. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set15.png +0 -0
  117. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set16.gv +40 -40
  118. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set16.png +0 -0
  119. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set17.gv +40 -40
  120. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set17.png +0 -0
  121. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set18.gv +45 -45
  122. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set18.png +0 -0
  123. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set19.gv +47 -47
  124. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set19.png +0 -0
  125. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set2.gv +22 -22
  126. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set2.png +0 -0
  127. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set20.gv +44 -44
  128. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set20.png +0 -0
  129. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set21.gv +39 -39
  130. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set21.png +0 -0
  131. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set22.gv +34 -34
  132. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set22.png +0 -0
  133. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set23.gv +28 -28
  134. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set23.png +0 -0
  135. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set3.gv +27 -27
  136. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set3.png +0 -0
  137. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set4.gv +32 -32
  138. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set4.png +0 -0
  139. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set5.gv +34 -34
  140. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set5.png +0 -0
  141. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set6.gv +32 -32
  142. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set6.png +0 -0
  143. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set7.gv +32 -32
  144. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set7.png +0 -0
  145. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set8.gv +37 -37
  146. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set8.png +0 -0
  147. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set9.gv +39 -39
  148. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set9.png +0 -0
  149. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/rebinding1.gv +4 -4
  150. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/rebinding2.gv +6 -6
  151. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/__init__.py +25 -3
  152. {memory_graph-0.3.42 → memory_graph-0.3.44/memory_graph.egg-info}/PKG-INFO +42 -7
  153. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph.egg-info/SOURCES.txt +14 -1
  154. {memory_graph-0.3.42 → memory_graph-0.3.44}/pyproject.toml +1 -1
  155. {memory_graph-0.3.42 → memory_graph-0.3.44}/LICENSE.txt +0 -0
  156. {memory_graph-0.3.42 → memory_graph-0.3.44}/MANIFEST.in +0 -0
  157. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/-0 +0 -0
  158. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.gif +0 -0
  159. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/.gitignore +0 -0
  160. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/images.iml +0 -0
  161. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/inspectionProfiles/profiles_settings.xml +0 -0
  162. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/misc.xml +0 -0
  163. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/modules.xml +0 -0
  164. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/vcs.xml +0 -0
  165. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/.idea/workspace.xml +0 -0
  166. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/add_one.png +0 -0
  167. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/add_one.py +0 -0
  168. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree.py +0 -0
  169. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree.py~ +0 -0
  170. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_dir.gv +0 -0
  171. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_dir.png +0 -0
  172. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_fail.gv +0 -0
  173. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_fail.png +0 -0
  174. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_key_value.png +0 -0
  175. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_leaf.png +0 -0
  176. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_linear.png +0 -0
  177. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/avltree_table.png +0 -0
  178. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search.png +0 -0
  179. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search.py +0 -0
  180. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search.py~ +0 -0
  181. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search_linear.png +0 -0
  182. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_search_linear.py~ +0 -0
  183. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_tree.gif +0 -0
  184. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_tree.png +0 -0
  185. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_tree.py +0 -0
  186. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_tree2.py +0 -0
  187. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/bin_tree2.py~ +0 -0
  188. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary.gif +0 -0
  189. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/binary.py +0 -0
  190. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/call_stack.txt +0 -0
  191. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/colab_example.png +0 -0
  192. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/copies.png +0 -0
  193. /memory_graph-0.3.42/images/copies.py → /memory_graph-0.3.44/images/copy_immutable.py~ +0 -0
  194. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/copy_method.png +0 -0
  195. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/copy_method.py +0 -0
  196. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/create_gif.sh +0 -0
  197. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debug.gv +0 -0
  198. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debug.pdf +0 -0
  199. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debug_vscode.png +0 -0
  200. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging.gif +0 -0
  201. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging.py +0 -0
  202. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging01.gv +0 -0
  203. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging02.gv +0 -0
  204. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging03.gv +0 -0
  205. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging04.gv +0 -0
  206. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging05.gv +0 -0
  207. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/debugging06.gv +0 -0
  208. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/depth.gv +0 -0
  209. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/depth.png +0 -0
  210. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_numpy.png +0 -0
  211. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_numpy.py +0 -0
  212. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_pandas.png +0 -0
  213. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_pandas.py +0 -0
  214. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_torch.gv +0 -0
  215. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_torch.png +0 -0
  216. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_torch.py +0 -0
  217. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/extension_torch.py~ +0 -0
  218. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial.gif +0 -0
  219. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial.py +0 -0
  220. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial01.gv +0 -0
  221. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial02.gv +0 -0
  222. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial03.gv +0 -0
  223. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial04.gv +0 -0
  224. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial05.gv +0 -0
  225. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial06.gv +0 -0
  226. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/factorial07.gv +0 -0
  227. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hash_set.gif +0 -0
  228. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hash_set.png +0 -0
  229. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hash_set.py +0 -0
  230. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hidden_edges.gv +0 -0
  231. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hidden_edges.png +0 -0
  232. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hidden_edges.py +0 -0
  233. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/hidden_edges.py~ +0 -0
  234. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/highlight.gv +0 -0
  235. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/immutable.py +0 -0
  236. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/immutable1.png +0 -0
  237. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/immutable2.png +0 -0
  238. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/introspect_depth.png +0 -0
  239. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/introspect_depth.py +0 -0
  240. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/introspect_depth.py~ +0 -0
  241. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/ipython.png +0 -0
  242. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/jupyter_example.png +0 -0
  243. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/linked_list.gif +0 -0
  244. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/linked_list.png +0 -0
  245. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/linked_list.py +0 -0
  246. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/log.txt +0 -0
  247. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/many_types.png +0 -0
  248. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/many_types.py +0 -0
  249. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/memory_graph.gv +0 -0
  250. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/memory_graph.gv.pdf +0 -0
  251. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/memory_graph.pdf +0 -0
  252. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/mutable.py +0 -0
  253. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/mutable1.png +0 -0
  254. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/mutable2.png +0 -0
  255. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/my_graph.gv +0 -0
  256. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/my_graph.pdf +0 -0
  257. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/name_rebinding.py +0 -0
  258. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/not_node_types.py +0 -0
  259. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/not_node_types.py~ +0 -0
  260. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/not_node_types1.png +0 -0
  261. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/not_node_types2.png +0 -0
  262. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set.gif +0 -0
  263. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set.py +0 -0
  264. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set19.png~ +0 -0
  265. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/power_set8.png~ +0 -0
  266. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/pyodide.png +0 -0
  267. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/rebinding1.png +0 -0
  268. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/rebinding2.png +0 -0
  269. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/stack.txt +0 -0
  270. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/test.py +0 -0
  271. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/test.py~ +0 -0
  272. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/uva.png +0 -0
  273. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/vsc.py +0 -0
  274. {memory_graph-0.3.42 → memory_graph-0.3.44}/images/vscode_copying.gif +0 -0
  275. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/call_stack.py +0 -0
  276. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/config.py +0 -0
  277. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/config_default.py +0 -0
  278. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/config_helpers.py +0 -0
  279. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/extension_numpy.py +0 -0
  280. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/extension_pandas.py +0 -0
  281. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/extension_pytorch.py +0 -0
  282. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/extension_torch.py +0 -0
  283. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/html_table.py +0 -0
  284. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/list_view.py +0 -0
  285. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/memory_to_nodes.py +0 -0
  286. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/node_base.py +0 -0
  287. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/node_key_value.py +0 -0
  288. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/node_leaf.py +0 -0
  289. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/node_linear.py +0 -0
  290. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/node_table.py +0 -0
  291. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/pytorch_test.py +0 -0
  292. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/sequence.py +0 -0
  293. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/slicer.py +0 -0
  294. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/slices.py +0 -0
  295. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/slices_iterator.py +0 -0
  296. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/slices_table_iterator.py +0 -0
  297. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test.py +0 -0
  298. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_max_graph_depth.py +0 -0
  299. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_memory_graph.py +0 -0
  300. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_memory_to_nodes.py +0 -0
  301. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_sequence.py +0 -0
  302. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_slicer.py +0 -0
  303. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_slices.py +0 -0
  304. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/test_slices_iterator.py +0 -0
  305. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph/utils.py +0 -0
  306. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph.egg-info/dependency_links.txt +0 -0
  307. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph.egg-info/requires.txt +0 -0
  308. {memory_graph-0.3.42 → memory_graph-0.3.44}/memory_graph.egg-info/top_level.txt +0 -0
  309. {memory_graph-0.3.42 → memory_graph-0.3.44}/setup.cfg +0 -0
  310. {memory_graph-0.3.42 → memory_graph-0.3.44}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: memory_graph
3
- Version: 0.3.42
3
+ Version: 0.3.44
4
4
  Summary: Teaching tool and debugging aid in context of references, mutable data types, and shallow and deep copy.
5
5
  Author-email: Bas Terwijn <bterwijn@gmail.com>
6
6
  License-Expression: BSD-2-Clause
@@ -192,7 +192,7 @@ mg.render(locals(), 'mutable2.png')
192
192
 
193
193
  One practical reason why Python makes the distinction between mutable and immutable types is that a value of a mutable type can be large, making it inefficient to copy each time we change it. Immutable values generally don't need to change as much, or are small making copying less of a concern.
194
194
 
195
- ## Copying ##
195
+ ## Copying Values of Mutable Type ##
196
196
  Python offers three different "copy" options that we will demonstrate using a nested list:
197
197
 
198
198
  ```python
@@ -213,7 +213,7 @@ mg.show(locals())
213
213
  * `c2` is a **shallow copy**, only the value referenced by the first reference is copied, all the underlying values are shared
214
214
  * `c3` is a **deep copy**, all the values are copied, nothing is shared
215
215
 
216
- ![copies.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copies.png)
216
+ ![copy_mutbale.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_mutable.png)
217
217
 
218
218
 
219
219
  ## Custom Copy ##
@@ -242,6 +242,41 @@ mg.show(locals())
242
242
  ```
243
243
  ![copy_method.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_method.png)
244
244
 
245
+ ## Copying Values of Immutable Type ##
246
+ Because a value of immutable type will be copied automatically when it is changed, there is no need to copy it beforehand. Therefore, a shallow or deep copy of a value of immutable type will result in just an assignment to save on the time needed to make the copy and the space (=memory) needed to store the values.
247
+
248
+ ```python
249
+ import memory_graph as mg
250
+ import copy
251
+
252
+ a = ( (1, 2), ('x', 'y') ) # a nested tuple
253
+
254
+ # three different ways to make a "copy" of 'a':
255
+ c1 = a
256
+ c2 = copy.copy(a)
257
+ c3 = copy.deepcopy(a)
258
+
259
+ mg.show(locals())
260
+ ```
261
+ ![copy_immutbale.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_immutable.png)
262
+
263
+ ## Copying a Mix of Mutable and Immutable Values ##
264
+ When copying a mix of values of mutable and immutable type, to save on time and space, a deep copy will try to copy as few values of immutable type as possible in order to copy each value of mutable type.
265
+ ```python
266
+ import memory_graph as mg
267
+ import copy
268
+
269
+ a = ( [1, 2], ('x', 'y') ) # mix of mutable and immutable
270
+
271
+ # three different ways to make a "copy" of 'a':
272
+ c1 = a
273
+ c2 = copy.copy(a)
274
+ c3 = copy.deepcopy(a)
275
+
276
+ mg.show(locals())
277
+ ```
278
+ ![copy_mix.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_mix.png)
279
+
245
280
  ## Name Rebinding ##
246
281
  When `a` and `b` share a mutable value, then changing the value of `b` changes the value of `a` and vice versa. However, reassigning `b` does not change `a`. When you reassign `b`, you only rebind the name `b` to a new value without effecting any other variables.
247
282
 
@@ -299,7 +334,7 @@ This function:
299
334
  * first executes `fun(arg1, arg2, ...)`
300
335
  * then prints the current source location in the program
301
336
  * then blocks execution until the &lt;Enter&gt; key is pressed
302
- * finally returns the value of the `fun()` call
337
+ * finally returns the return value of the `fun()` call
303
338
 
304
339
  ## Recursion ##
305
340
  The call stack is also helpful to visualize how recursion works. Here we use `mg.block()` to show each step of how recursively `factorial(4)` is computed:
@@ -323,7 +358,7 @@ print( factorial(4) )
323
358
  and the result is: 1 x 2 x 3 x 4 = 24
324
359
 
325
360
  ## Binary ##
326
- A more interesting recursive example is function `binary()` that converts an integer to binary representation.
361
+ A more interesting recursive example is function `binary()` that converts a decimal integer to binary representation.
327
362
  ```python
328
363
  import memory_graph as mg
329
364
  mg.config.type_to_vertical[list] = False # horizontal lists
@@ -385,7 +420,7 @@ as a *watch* in a debugger tool such as the integrated debugger in Visual Studio
385
420
  ## Call Stack in Watch Context ##
386
421
  The ```mg.stack()``` doesn't work well in *watch* context in most debuggers because debuggers introduce additional stack frames that cause problems. Use these alternative functions for various debuggers to filter out these problematic stack frames:
387
422
 
388
- | debugger | function to get the call stack |
423
+ | debugger | function to get the call stack in 'watch' context |
389
424
  |:---|:---|
390
425
  | [pdb](https://docs.python.org/3/library/pdb.html), [pudb](https://pypi.org/project/pudb/) | `mg.stack_pdb()` |
391
426
  | [Visual Studio Code](https://code.visualstudio.com/docs/languages/python) | `mg.stack_vscode()` |
@@ -982,7 +1017,7 @@ See for example [colab_example.ipynb](https://raw.githubusercontent.com/bterwijn
982
1017
  ![colab_example.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/colab_example.png)
983
1018
 
984
1019
  # In the Browser #
985
- We can also run memory_graph in the browser: <a href="https://bterwijn.github.io/memory_graph/src/pyodide.html" target="_blank">Pyodide Example</a>
1020
+ We can also use memory_graph in the browser: <a href="https://bterwijn.github.io/memory_graph/src/pyodide.html" target="_blank">Pyodide Example</a>
986
1021
  ![pyodide.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/pyodide.png)
987
1022
 
988
1023
 
@@ -172,7 +172,7 @@ mg.render(locals(), 'mutable2.png')
172
172
 
173
173
  One practical reason why Python makes the distinction between mutable and immutable types is that a value of a mutable type can be large, making it inefficient to copy each time we change it. Immutable values generally don't need to change as much, or are small making copying less of a concern.
174
174
 
175
- ## Copying ##
175
+ ## Copying Values of Mutable Type ##
176
176
  Python offers three different "copy" options that we will demonstrate using a nested list:
177
177
 
178
178
  ```python
@@ -193,7 +193,7 @@ mg.show(locals())
193
193
  * `c2` is a **shallow copy**, only the value referenced by the first reference is copied, all the underlying values are shared
194
194
  * `c3` is a **deep copy**, all the values are copied, nothing is shared
195
195
 
196
- ![copies.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copies.png)
196
+ ![copy_mutbale.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_mutable.png)
197
197
 
198
198
 
199
199
  ## Custom Copy ##
@@ -222,6 +222,41 @@ mg.show(locals())
222
222
  ```
223
223
  ![copy_method.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_method.png)
224
224
 
225
+ ## Copying Values of Immutable Type ##
226
+ Because a value of immutable type will be copied automatically when it is changed, there is no need to copy it beforehand. Therefore, a shallow or deep copy of a value of immutable type will result in just an assignment to save on the time needed to make the copy and the space (=memory) needed to store the values.
227
+
228
+ ```python
229
+ import memory_graph as mg
230
+ import copy
231
+
232
+ a = ( (1, 2), ('x', 'y') ) # a nested tuple
233
+
234
+ # three different ways to make a "copy" of 'a':
235
+ c1 = a
236
+ c2 = copy.copy(a)
237
+ c3 = copy.deepcopy(a)
238
+
239
+ mg.show(locals())
240
+ ```
241
+ ![copy_immutbale.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_immutable.png)
242
+
243
+ ## Copying a Mix of Mutable and Immutable Values ##
244
+ When copying a mix of values of mutable and immutable type, to save on time and space, a deep copy will try to copy as few values of immutable type as possible in order to copy each value of mutable type.
245
+ ```python
246
+ import memory_graph as mg
247
+ import copy
248
+
249
+ a = ( [1, 2], ('x', 'y') ) # mix of mutable and immutable
250
+
251
+ # three different ways to make a "copy" of 'a':
252
+ c1 = a
253
+ c2 = copy.copy(a)
254
+ c3 = copy.deepcopy(a)
255
+
256
+ mg.show(locals())
257
+ ```
258
+ ![copy_mix.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/copy_mix.png)
259
+
225
260
  ## Name Rebinding ##
226
261
  When `a` and `b` share a mutable value, then changing the value of `b` changes the value of `a` and vice versa. However, reassigning `b` does not change `a`. When you reassign `b`, you only rebind the name `b` to a new value without effecting any other variables.
227
262
 
@@ -279,7 +314,7 @@ This function:
279
314
  * first executes `fun(arg1, arg2, ...)`
280
315
  * then prints the current source location in the program
281
316
  * then blocks execution until the &lt;Enter&gt; key is pressed
282
- * finally returns the value of the `fun()` call
317
+ * finally returns the return value of the `fun()` call
283
318
 
284
319
  ## Recursion ##
285
320
  The call stack is also helpful to visualize how recursion works. Here we use `mg.block()` to show each step of how recursively `factorial(4)` is computed:
@@ -303,7 +338,7 @@ print( factorial(4) )
303
338
  and the result is: 1 x 2 x 3 x 4 = 24
304
339
 
305
340
  ## Binary ##
306
- A more interesting recursive example is function `binary()` that converts an integer to binary representation.
341
+ A more interesting recursive example is function `binary()` that converts a decimal integer to binary representation.
307
342
  ```python
308
343
  import memory_graph as mg
309
344
  mg.config.type_to_vertical[list] = False # horizontal lists
@@ -365,7 +400,7 @@ as a *watch* in a debugger tool such as the integrated debugger in Visual Studio
365
400
  ## Call Stack in Watch Context ##
366
401
  The ```mg.stack()``` doesn't work well in *watch* context in most debuggers because debuggers introduce additional stack frames that cause problems. Use these alternative functions for various debuggers to filter out these problematic stack frames:
367
402
 
368
- | debugger | function to get the call stack |
403
+ | debugger | function to get the call stack in 'watch' context |
369
404
  |:---|:---|
370
405
  | [pdb](https://docs.python.org/3/library/pdb.html), [pudb](https://pypi.org/project/pudb/) | `mg.stack_pdb()` |
371
406
  | [Visual Studio Code](https://code.visualstudio.com/docs/languages/python) | `mg.stack_vscode()` |
@@ -962,7 +997,7 @@ See for example [colab_example.ipynb](https://raw.githubusercontent.com/bterwijn
962
997
  ![colab_example.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/colab_example.png)
963
998
 
964
999
  # In the Browser #
965
- We can also run memory_graph in the browser: <a href="https://bterwijn.github.io/memory_graph/src/pyodide.html" target="_blank">Pyodide Example</a>
1000
+ We can also use memory_graph in the browser: <a href="https://bterwijn.github.io/memory_graph/src/pyodide.html" target="_blank">Pyodide Example</a>
966
1001
  ![pyodide.png](https://raw.githubusercontent.com/bterwijn/memory_graph/main/images/pyodide.png)
967
1002
 
968
1003
 
@@ -1,6 +1,6 @@
1
1
  digraph memory_graph {
2
2
  node [shape=plaintext]
3
- node123501132205632 [label=<
3
+ node127655305006656 [label=<
4
4
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="lightcoral" PORT="table">
5
5
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 4 </TD></TR>
6
6
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> 3 </TD></TR>
@@ -8,30 +8,30 @@ digraph memory_graph {
8
8
  <TR><TD BORDER="0"><font color="#505050">3</font></TD><TD BORDER="1"> 1 </TD></TR>
9
9
  </TABLE>
10
10
  > xlabel=list]
11
- node123501131031488 [label=<
11
+ node127655294509888 [label=<
12
12
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="orange" PORT="table">
13
13
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 4 </TD></TR>
14
14
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> 3 </TD></TR>
15
15
  <TR><TD BORDER="0"><font color="#505050">2</font></TD><TD BORDER="1"> 2 </TD></TR>
16
16
  </TABLE>
17
17
  > xlabel=tuple]
18
- node123501130294400 [label=<
18
+ node127655293772928 [label=<
19
19
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="lightcoral" PORT="table">
20
20
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 4 </TD></TR>
21
21
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> 3 </TD></TR>
22
22
  <TR><TD BORDER="0"><font color="#505050">2</font></TD><TD BORDER="1"> 2 </TD></TR>
23
23
  </TABLE>
24
24
  > xlabel=list]
25
- node123501130853888 [label=<
25
+ node127655294332544 [label=<
26
26
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="#60a5ff" PORT="table">
27
27
  <TR><TD BORDER="1" STYLE="ROUNDED"> a </TD><TD BORDER="1" STYLE="ROUNDED"> b </TD><TD BORDER="1" STYLE="ROUNDED"> c </TD></TR>
28
28
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1" PORT="ref1"> </TD><TD BORDER="1" PORT="ref2"> </TD></TR>
29
29
  </TABLE>
30
30
  > xlabel=dict]
31
- node123501130853888:ref0 -> node123501132205632:table [style=solid]
32
- node123501130853888:ref1 -> node123501131031488:table [style=solid]
33
- node123501130853888:ref2 -> node123501130294400:table [style=solid]
34
- node123501132148592 [label=<
31
+ node127655294332544:ref0 -> node127655305006656:table [style=solid]
32
+ node127655294332544:ref1 -> node127655294509888:table [style=solid]
33
+ node127655294332544:ref2 -> node127655293772928:table [style=solid]
34
+ node127655294474960 [label=<
35
35
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="orange" PORT="table">
36
36
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 4 </TD></TR>
37
37
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> 3 </TD></TR>
@@ -39,7 +39,7 @@ digraph memory_graph {
39
39
  <TR><TD BORDER="0"><font color="#505050">3</font></TD><TD BORDER="1"> 1 </TD></TR>
40
40
  </TABLE>
41
41
  > xlabel=tuple]
42
- node123501131031872 [label=<
42
+ node127655294510272 [label=<
43
43
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="lightcoral" PORT="table">
44
44
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 4 </TD></TR>
45
45
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> 3 </TD></TR>
@@ -47,23 +47,23 @@ digraph memory_graph {
47
47
  <TR><TD BORDER="0"><font color="#505050">3</font></TD><TD BORDER="1"> 1 </TD></TR>
48
48
  </TABLE>
49
49
  > xlabel=list]
50
- node123501126452672 [label=<
50
+ node127655289932736 [label=<
51
51
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="#60a5ff" PORT="table">
52
52
  <TR><TD BORDER="1" STYLE="ROUNDED"> a </TD><TD BORDER="1" STYLE="ROUNDED"> b </TD><TD BORDER="1" STYLE="ROUNDED"> c </TD></TR>
53
53
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1" PORT="ref1"> </TD><TD BORDER="1" PORT="ref2"> </TD></TR>
54
54
  </TABLE>
55
55
  > xlabel=dict]
56
- node123501126452672:ref0 -> node123501132205632:table [style=solid]
57
- node123501126452672:ref1 -> node123501132148592:table [style=solid]
58
- node123501126452672:ref2 -> node123501131031872:table [style=solid]
59
- node123501126509712 [label=<
56
+ node127655289932736:ref0 -> node127655305006656:table [style=solid]
57
+ node127655289932736:ref1 -> node127655294474960:table [style=solid]
58
+ node127655289932736:ref2 -> node127655294510272:table [style=solid]
59
+ node127655290005664 [label=<
60
60
  <TABLE BORDER="3" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="khaki" PORT="table">
61
61
  <TR><TD BORDER="1" STYLE="ROUNDED"> 0: &lt;module&gt; </TD><TD BORDER="1" STYLE="ROUNDED"> 1: add_one </TD></TR>
62
62
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1" PORT="ref1"> </TD></TR>
63
63
  </TABLE>
64
64
  > xlabel=call_stack]
65
- node123501126509712:ref0 -> node123501130853888:table [style=solid]
66
- node123501126509712:ref1 -> node123501126452672:table [style=solid]
67
- subgraph { rank=same; node123501130853888 -> node123501126452672[weight=10, style=invis]; }
68
- subgraph { rank=same; node123501132205632 -> node123501131031488 -> node123501130294400 -> node123501132148592 -> node123501131031872[weight=10, style=invis]; }
65
+ node127655290005664:ref0 -> node127655294332544:table [style=solid]
66
+ node127655290005664:ref1 -> node127655289932736:table [style=solid]
67
+ subgraph { rank=same; node127655294332544 -> node127655289932736[weight=10, style=invis]; }
68
+ subgraph { rank=same; node127655305006656 -> node127655294509888 -> node127655293772928 -> node127655294474960 -> node127655294510272[weight=10, style=invis]; }
69
69
  }
@@ -1,6 +1,6 @@
1
1
  digraph memory_graph {
2
2
  node [shape=plaintext]
3
- node134455640685072 [label=<
3
+ node134196776614496 [label=<
4
4
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
5
5
  <TR><TD BORDER="1" STYLE="ROUNDED"> left </TD><TD BORDER="1"> None </TD></TR>
6
6
  <TR><TD BORDER="1" STYLE="ROUNDED"> key </TD><TD BORDER="1"> 5 </TD></TR>
@@ -8,7 +8,7 @@ digraph memory_graph {
8
8
  <TR><TD BORDER="1" STYLE="ROUNDED"> right </TD><TD BORDER="1"> None </TD></TR>
9
9
  </TABLE>
10
10
  > xlabel="Node"]
11
- node134455640930432 [label=<
11
+ node134196776859856 [label=<
12
12
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
13
13
  <TR><TD BORDER="1" STYLE="ROUNDED"> left </TD><TD BORDER="1"> None </TD></TR>
14
14
  <TR><TD BORDER="1" STYLE="ROUNDED"> key </TD><TD BORDER="1"> 15 </TD></TR>
@@ -16,34 +16,34 @@ digraph memory_graph {
16
16
  <TR><TD BORDER="1" STYLE="ROUNDED"> right </TD><TD BORDER="1"> None </TD></TR>
17
17
  </TABLE>
18
18
  > xlabel="Node"]
19
- node134455640930512 [label=<
19
+ node134196776859936 [label=<
20
20
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
21
21
  <TR><TD BORDER="1" STYLE="ROUNDED"> left </TD><TD BORDER="1" STYLE="ROUNDED"> key </TD><TD BORDER="1" STYLE="ROUNDED"> value </TD><TD BORDER="1" STYLE="ROUNDED"> right </TD></TR>
22
22
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> 20 </TD><TD BORDER="1"> twenty </TD><TD BORDER="1"> None </TD></TR>
23
23
  </TABLE>
24
24
  > xlabel="Node"]
25
- node134455640930512:ref0 -> node134455640930432:table [style=solid]
26
- node134455655526256 [label=<
25
+ node134196776859936:ref0 -> node134196776859856:table [style=solid]
26
+ node134196791832432 [label=<
27
27
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
28
28
  <TR><TD BORDER="1" STYLE="ROUNDED"> left </TD><TD BORDER="1" STYLE="ROUNDED"> key </TD><TD BORDER="1" STYLE="ROUNDED"> value </TD><TD BORDER="1" STYLE="ROUNDED"> right </TD></TR>
29
29
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> 10 </TD><TD BORDER="1"> ten </TD><TD BORDER="1" PORT="ref1"> </TD></TR>
30
30
  </TABLE>
31
31
  > xlabel="Node"]
32
- node134455655526256:ref0 -> node134455640685072:table [style=solid]
33
- node134455655526256:ref1 -> node134455640930512:table [style=solid]
34
- node134455642149216 [label=<
32
+ node134196791832432:ref0 -> node134196776614496:table [style=solid]
33
+ node134196791832432:ref1 -> node134196776859936:table [style=solid]
34
+ node134196778143760 [label=<
35
35
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="seagreen1" PORT="table">
36
36
  <TR><TD BORDER="1" STYLE="ROUNDED"> _root </TD><TD BORDER="1" STYLE="ROUNDED"> _count </TD></TR>
37
37
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> 4 </TD></TR>
38
38
  </TABLE>
39
39
  > xlabel=AVLTree]
40
- node134455642149216:ref0 -> node134455655526256:table [style=solid]
41
- node134455644882880 [label=<
40
+ node134196778143760:ref0 -> node134196791832432:table [style=solid]
41
+ node134196780812224 [label=<
42
42
  <TABLE BORDER="3" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="#60a5ff" PORT="table">
43
43
  <TR><TD BORDER="1" STYLE="ROUNDED"> tree </TD></TR>
44
44
  <TR><TD BORDER="1" PORT="ref0"> </TD></TR>
45
45
  </TABLE>
46
46
  > xlabel=dict]
47
- node134455644882880:ref0 -> node134455642149216:table [style=solid]
48
- subgraph { rank=same; node134455640685072 -> node134455640930512[weight=10, style=invis]; }
47
+ node134196780812224:ref0 -> node134196778143760:table [style=solid]
48
+ subgraph { rank=same; node134196776614496 -> node134196776859936[weight=10, style=invis]; }
49
49
  }
@@ -1,22 +1,22 @@
1
1
  digraph memory_graph {
2
2
  node [shape=plaintext]
3
- node134455655526256 [label=<
3
+ node134196791832432 [label=<
4
4
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
5
5
  <TR><TD BORDER="1"> key:10 value:ten </TD></TR>
6
6
  </TABLE>
7
7
  > xlabel="Node"]
8
- node134455642149216 [label=<
8
+ node134196778143760 [label=<
9
9
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="seagreen1" PORT="table">
10
10
  <TR><TD BORDER="1" STYLE="ROUNDED"> _root </TD><TD BORDER="1" STYLE="ROUNDED"> _count </TD></TR>
11
11
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> 4 </TD></TR>
12
12
  </TABLE>
13
13
  > xlabel=AVLTree]
14
- node134455642149216:ref0 -> node134455655526256:table [style=solid]
15
- node134455644882880 [label=<
14
+ node134196778143760:ref0 -> node134196791832432:table [style=solid]
15
+ node134196780812224 [label=<
16
16
  <TABLE BORDER="3" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="#60a5ff" PORT="table">
17
17
  <TR><TD BORDER="1" STYLE="ROUNDED"> tree </TD></TR>
18
18
  <TR><TD BORDER="1" PORT="ref0"> </TD></TR>
19
19
  </TABLE>
20
20
  > xlabel=dict]
21
- node134455644882880:ref0 -> node134455642149216:table [style=solid]
21
+ node134196780812224:ref0 -> node134196778143760:table [style=solid]
22
22
  }
@@ -1,6 +1,6 @@
1
1
  digraph memory_graph {
2
2
  node [shape=plaintext]
3
- node134455640685072 [label=<
3
+ node134196776614496 [label=<
4
4
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
5
5
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> left: </TD></TR>
6
6
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> None </TD></TR>
@@ -12,7 +12,7 @@ digraph memory_graph {
12
12
  <TR><TD BORDER="0"><font color="#505050">7</font></TD><TD BORDER="1"> None </TD></TR>
13
13
  </TABLE>
14
14
  > xlabel="Node"]
15
- node134455640930432 [label=<
15
+ node134196776859856 [label=<
16
16
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
17
17
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> left: </TD></TR>
18
18
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> None </TD></TR>
@@ -24,34 +24,34 @@ digraph memory_graph {
24
24
  <TR><TD BORDER="0"><font color="#505050">7</font></TD><TD BORDER="1"> None </TD></TR>
25
25
  </TABLE>
26
26
  > xlabel="Node"]
27
- node134455640930512 [label=<
27
+ node134196776859936 [label=<
28
28
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
29
29
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="0"><font color="#505050">2</font></TD><TD BORDER="0"><font color="#505050">3</font></TD><TD BORDER="0"><font color="#505050">4</font></TD><TD BORDER="0"><font color="#505050">5</font></TD><TD BORDER="0"><font color="#505050">6</font></TD><TD BORDER="0"><font color="#505050">7</font></TD></TR>
30
30
  <TR><TD BORDER="1"> left: </TD><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> key: </TD><TD BORDER="1"> 20 </TD><TD BORDER="1"> value: </TD><TD BORDER="1"> twenty </TD><TD BORDER="1"> right: </TD><TD BORDER="1"> None </TD></TR>
31
31
  </TABLE>
32
32
  > xlabel="Node"]
33
- node134455640930512:ref0 -> node134455640930432:table [style=solid]
34
- node134455655526256 [label=<
33
+ node134196776859936:ref0 -> node134196776859856:table [style=solid]
34
+ node134196791832432 [label=<
35
35
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
36
36
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="0"><font color="#505050">2</font></TD><TD BORDER="0"><font color="#505050">3</font></TD><TD BORDER="0"><font color="#505050">4</font></TD><TD BORDER="0"><font color="#505050">5</font></TD><TD BORDER="0"><font color="#505050">6</font></TD><TD BORDER="0"><font color="#505050">7</font></TD></TR>
37
37
  <TR><TD BORDER="1"> left: </TD><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> key: </TD><TD BORDER="1"> 10 </TD><TD BORDER="1"> value: </TD><TD BORDER="1"> ten </TD><TD BORDER="1"> right: </TD><TD BORDER="1" PORT="ref1"> </TD></TR>
38
38
  </TABLE>
39
39
  > xlabel="Node"]
40
- node134455655526256:ref0 -> node134455640685072:table [style=solid]
41
- node134455655526256:ref1 -> node134455640930512:table [style=solid]
42
- node134455642149216 [label=<
40
+ node134196791832432:ref0 -> node134196776614496:table [style=solid]
41
+ node134196791832432:ref1 -> node134196776859936:table [style=solid]
42
+ node134196778143760 [label=<
43
43
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="seagreen1" PORT="table">
44
44
  <TR><TD BORDER="1" STYLE="ROUNDED"> _root </TD><TD BORDER="1" STYLE="ROUNDED"> _count </TD></TR>
45
45
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> 4 </TD></TR>
46
46
  </TABLE>
47
47
  > xlabel=AVLTree]
48
- node134455642149216:ref0 -> node134455655526256:table [style=solid]
49
- node134455644882880 [label=<
48
+ node134196778143760:ref0 -> node134196791832432:table [style=solid]
49
+ node134196780812224 [label=<
50
50
  <TABLE BORDER="3" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="#60a5ff" PORT="table">
51
51
  <TR><TD BORDER="1" STYLE="ROUNDED"> tree </TD></TR>
52
52
  <TR><TD BORDER="1" PORT="ref0"> </TD></TR>
53
53
  </TABLE>
54
54
  > xlabel=dict]
55
- node134455644882880:ref0 -> node134455642149216:table [style=solid]
56
- subgraph { rank=same; node134455640685072 -> node134455640930512[weight=10, style=invis]; }
55
+ node134196780812224:ref0 -> node134196778143760:table [style=solid]
56
+ subgraph { rank=same; node134196776614496 -> node134196776859936[weight=10, style=invis]; }
57
57
  }
@@ -1,49 +1,49 @@
1
1
  digraph memory_graph {
2
2
  node [shape=plaintext]
3
- node134455640685072 [label=<
3
+ node134196776614496 [label=<
4
4
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
5
5
  <TR><TD BORDER="0"> </TD><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="0"><font color="#505050">1</font></TD></TR>
6
6
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 5 </TD><TD BORDER="1"> five </TD></TR>
7
7
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> None </TD><TD BORDER="1"> None </TD></TR>
8
8
  </TABLE>
9
9
  > xlabel="Node 2⨯2"]
10
- node134455640930432 [label=<
10
+ node134196776859856 [label=<
11
11
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
12
12
  <TR><TD BORDER="0"> </TD><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="0"><font color="#505050">1</font></TD></TR>
13
13
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 15 </TD><TD BORDER="1"> fifteen </TD></TR>
14
14
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1"> None </TD><TD BORDER="1"> None </TD></TR>
15
15
  </TABLE>
16
16
  > xlabel="Node 2⨯2"]
17
- node134455640930512 [label=<
17
+ node134196776859936 [label=<
18
18
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
19
19
  <TR><TD BORDER="0"> </TD><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="0"><font color="#505050">1</font></TD></TR>
20
20
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 20 </TD><TD BORDER="1"> twenty </TD></TR>
21
21
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> None </TD></TR>
22
22
  </TABLE>
23
23
  > xlabel="Node 2⨯2"]
24
- node134455640930512:ref0 -> node134455640930432:table [style=solid]
25
- node134455655526256 [label=<
24
+ node134196776859936:ref0 -> node134196776859856:table [style=solid]
25
+ node134196791832432 [label=<
26
26
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="sandybrown" PORT="table">
27
27
  <TR><TD BORDER="0"> </TD><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="0"><font color="#505050">1</font></TD></TR>
28
28
  <TR><TD BORDER="0"><font color="#505050">0</font></TD><TD BORDER="1"> 10 </TD><TD BORDER="1"> ten </TD></TR>
29
29
  <TR><TD BORDER="0"><font color="#505050">1</font></TD><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1" PORT="ref1"> </TD></TR>
30
30
  </TABLE>
31
31
  > xlabel="Node 2⨯2"]
32
- node134455655526256:ref0 -> node134455640685072:table [style=solid]
33
- node134455655526256:ref1 -> node134455640930512:table [style=solid]
34
- node134455642149216 [label=<
32
+ node134196791832432:ref0 -> node134196776614496:table [style=solid]
33
+ node134196791832432:ref1 -> node134196776859936:table [style=solid]
34
+ node134196778143760 [label=<
35
35
  <TABLE BORDER="1" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="seagreen1" PORT="table">
36
36
  <TR><TD BORDER="1" STYLE="ROUNDED"> _root </TD><TD BORDER="1" STYLE="ROUNDED"> _count </TD></TR>
37
37
  <TR><TD BORDER="1" PORT="ref0"> </TD><TD BORDER="1"> 4 </TD></TR>
38
38
  </TABLE>
39
39
  > xlabel=AVLTree]
40
- node134455642149216:ref0 -> node134455655526256:table [style=solid]
41
- node134455644882880 [label=<
40
+ node134196778143760:ref0 -> node134196791832432:table [style=solid]
41
+ node134196780812224 [label=<
42
42
  <TABLE BORDER="3" CELLBORDER="1" CELLSPACING="5" CELLPADDING="0" BGCOLOR="#60a5ff" PORT="table">
43
43
  <TR><TD BORDER="1" STYLE="ROUNDED"> tree </TD></TR>
44
44
  <TR><TD BORDER="1" PORT="ref0"> </TD></TR>
45
45
  </TABLE>
46
46
  > xlabel=dict]
47
- node134455644882880:ref0 -> node134455642149216:table [style=solid]
48
- subgraph { rank=same; node134455640685072 -> node134455640930512[weight=10, style=invis]; }
47
+ node134196780812224:ref0 -> node134196778143760:table [style=solid]
48
+ subgraph { rank=same; node134196776614496 -> node134196776859936[weight=10, style=invis]; }
49
49
  }