1. 03 Apr, 2023 1 commit
  2. 30 Mar, 2023 1 commit
  3. 29 Mar, 2023 1 commit
  4. 28 Mar, 2023 1 commit
  5. 22 Mar, 2023 1 commit
  6. 20 Mar, 2023 1 commit
  7. 17 Mar, 2023 2 commits
  8. 16 Mar, 2023 3 commits
  9. 01 Mar, 2023 1 commit
  10. 23 Feb, 2023 1 commit
  11. 13 Feb, 2023 1 commit
  12. 03 Feb, 2023 1 commit
  13. 21 Dec, 2022 1 commit
  14. 13 Dec, 2022 1 commit
  15. 29 Nov, 2022 1 commit
  16. 18 Nov, 2022 1 commit
  17. 14 Nov, 2022 1 commit
  18. 28 Oct, 2022 1 commit
  19. 25 Oct, 2022 1 commit
  20. 15 Sep, 2022 1 commit
  21. 12 Sep, 2022 1 commit
  22. 10 Sep, 2022 1 commit
  23. 09 Sep, 2022 1 commit
  24. 08 Sep, 2022 1 commit
  25. 07 Sep, 2022 2 commits
  26. 15 Aug, 2022 1 commit
  27. 13 Aug, 2022 1 commit
  28. 12 Aug, 2022 1 commit
  29. 04 Aug, 2022 1 commit
  30. 03 Aug, 2022 1 commit
  31. 29 Jul, 2022 1 commit
  32. 20 Jul, 2022 1 commit
    • Vyacheslav Egorov's avatar
      Use persistent hash map to store _inheritedWidgets (#107068) · 81300293
      Vyacheslav Egorov authored
      * Use persistent hash map to store _inheritedWidgets
      
      Instead of using a HashMap and copying it down the tree
      which leads to quadratic time and space complexity
      use a persistent data structure which can amortize
      the cost by sharing parts of the structure.
      
      The data shows HAMT based PersistentHashMap to be
      5-10x faster for building _inheritedWidgets and
      considerably more space effecient (e.g. bringing
      amount of memory allocated when constructing
      _inheritedWidgets in a tree with 150 InheritedWidget
      down to 70Kb from 970Kb).
      
      PersistentHashMap is slower than HashMap for
      access: 2-3x in relative terms, but in absolute
      terms we are only talking about ~0.2ns slow down
      per access and various app benchmarks we run have
      have not revealed any significant regressions.
      81300293
  33. 07 Jul, 2022 1 commit
  34. 22 Jun, 2022 1 commit
  35. 16 Jun, 2022 1 commit
  36. 09 Jun, 2022 1 commit