)]}'
{
  "commit": "bea75e02d8c1fa77f3e6958c0bed422a8ca0e4b0",
  "tree": "e3ddd97d64b02bb438fd74a1602bbcab76b00ed0",
  "parents": [
    "05f47385e82949e1576e33eefc1a5d7b44461ef8"
  ],
  "author": {
    "name": "dplotnikov",
    "email": "dplotnikov@google.com",
    "time": "Thu Aug 27 16:58:10 2026"
  },
  "committer": {
    "name": "dplotnikov",
    "email": "dplotnikov@google.com",
    "time": "Thu Aug 27 22:25:12 2026"
  },
  "message": "[Pratt parser] Simplify helper methods and inlining\n\nInline single-callsite helper functions (initTokenStream, parse,\nnewLogicManager, receiverCallOrMacro, globalCallOrMacro) to simplify\npratt_parser.go while preserving stack frame sizes and recursive descent\nperformance boundaries.\n\n| Category | ANTLR (Max Depth OK) | Pratt (Max Depth OK) | Pratt Advantage |\n| :--- | :--- | :--- | :--- |\n| **Parens** (`(((...42...)))`) | 20 | unlimited | **unlimited** |\n| **Unary** (`! ! ! ... true`) | unlimited | unlimited | **1.0x** |\n| **Binary** (`1 + (1 + (...42...))`) | 21 | 93 | **~4.4x** |\n| **List** (`[[[...42...]]]`) | 18 | 85 | **~4.7x** |\n\n| Benchmark Category | ns/op | B/op | allocs/op |\n| :--- | :--- | :--- | :--- |\n| **Simple** | 27,429 ns/op | 13,535 B/op | 404 allocs/op |\n| **Complex** | 107,297 ns/op | 51,864 B/op | 1,397 allocs/op |\n| **Macros** | 50,519 ns/op | 23,883 B/op | 641 allocs/op |\n| **Errors** | 83,839 ns/op | 37,764 B/op | 1,176 allocs/op |\n| **Parallel/Simple** | 6,732 ns/op | 13,494 B/op | 404 allocs/op |\n| **Parallel/Complex** | 26,721 ns/op | 51,865 B/op | 1,397 allocs/op |\n| **Parallel/Macros** | 11,902 ns/op | 23,732 B/op | 641 allocs/op |\n| **Parallel/Errors** | 21,489 ns/op | 37,659 B/op | 1,176 allocs/op |\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f9163322d55494b41cc82259681cfe797df53e02",
      "old_mode": 33188,
      "old_path": "parser/pratt_parser.go",
      "new_id": "1ab416aff437046a4ea7b7728972439feb225550",
      "new_mode": 33188,
      "new_path": "parser/pratt_parser.go"
    }
  ]
}
