Skip to content

v0.6.8

Choose a tag to compare

@dsisco11 dsisco11 released this 02 Jan 17:43
· 24 commits to master since this release
692d4d9

v0.6.8 - Improved Debugging Experience

What's New

Enhanced debugger display for all AST nodes

Debugging TinyTokenizer syntax trees is now significantly faster and more informative. Instead of serializing entire sub-trees when you hover over a node in the debugger, you'll see concise summaries like:

RedLeaf:      Ident[0..5] "myVar"
RedBlock:     BraceBlock[0..50] '{' (3 children) "{ foo..."
FunctionCall: FunctionCall[0..15] "foo" (2 args)

Before & After

Before: Expanding a RedBlock in the watch window would trigger full serialization, showing something like { int x = 1; int y = 2; int z = 3; ... } (potentially thousands of characters, slow to compute).

After: Instant display of BraceBlock[0..127] '{' (12 children) "{ int x = 1; int..." — kind, position range, child count, and a 20-char preview.

Details

  • All Green nodes (GreenNode, GreenLeaf, GreenBlock, GreenList, GreenSyntaxNode, GreenTrivia)
  • All Red nodes (RedNode, RedLeaf, RedBlock, RedList, SyntaxNode and subclasses)
  • ToString() behavior unchanged — serialization still works as expected