291 Commits (e264e926bb0b8328b1006d9fd962ba41e8247fd4)

Author SHA1 Message Date
Siegfried Pammer e264e926bb Enforce one child type per slot kind; de-alias shared kinds 2 weeks ago
Siegfried Pammer 37ff23f125 Type FirstOrNull/LastOrNull as nullable instead of suppressing 2 weeks ago
Siegfried Pammer 9212387e3d Maintain single-slot child indices by construction, like the IL AST 2 weeks ago
Siegfried Pammer a04be1dd53 Maintain child indices incrementally for a node's sole collection slot 2 weeks ago
Siegfried Pammer f1eff1a193 Keep child indices on in-place replacement to avoid O(N^2) rewrites 2 weeks ago
Siegfried Pammer 737800f703 Allocate the AstNodeCollection backing list lazily 2 weeks ago
Siegfried Pammer 721ef6032d Enumerate AST children with a zero-allocation struct enumerator 2 weeks ago
Siegfried Pammer cfc2872532 Document the AST source generator and how to extend it 2 weeks ago
Siegfried Pammer ed61b8a14e Replace the SlotKind enum with object-identity Slots kinds 2 weeks ago
Siegfried Pammer 930df9161f De-alias the declaration attribute slot to its own kind 2 weeks ago
Siegfried Pammer b23499503c Generate typed Slots; key 1:1-kind child access on them 2 weeks ago
Siegfried Pammer dc186be0a9 Add typed child accessors over CSharpSlotInfo<T> 2 weeks ago
Siegfried Pammer 603d43a8d9 Carry the child type on CSharpSlotInfo<T> 2 weeks ago
Siegfried Pammer 0a670d96bd Add AstNode.CheckInvariant to validate the AST after each transform 2 weeks ago
Siegfried Pammer b0c8b7b2e5 Enable nullable reference types across the remaining C# Syntax files 2 weeks ago
Siegfried Pammer 6088b3798a Remove stray blank lines at AST node class boundaries 2 weeks ago
Siegfried Pammer fcdf48cf45 Tidy AST generator: clearer name-accessor naming, drop the Role slot kind 2 weeks ago
Siegfried Pammer 440927f51a Drop the unused AstNode.flags field; store IsVerbatim as a bool 2 weeks ago
Siegfried Pammer f5b00ac234 Model optional AST names as nullable; fold [NameSlot] into [Slot] 2 weeks ago
Siegfried Pammer 33b6813834 Tighten AST child-access API and trim output-path overhead 2 weeks ago
Siegfried Pammer ca9a9c4f40 Guard the TypeSystemAstBuilder nullable-array NRE with a regression test 2 weeks ago
Siegfried Pammer 9d254cd041 Rename FirstOrNullObject/LastOrNullObject to FirstOrNull/LastOrNull 2 weeks ago
Siegfried Pammer 7218d95016 Remove leftover Role constants after the Role hierarchy deletion 2 weeks ago
Siegfried Pammer a42febd3c4 Refresh generated-code comments after the null-object removal 2 weeks ago
Siegfried Pammer ec543e8836 Remove the generator's null-node emission machinery 2 weeks ago
Siegfried Pammer 2ea569b005 Enable nullable reference types across the C# AST consumers 2 weeks ago
Siegfried Pammer 3c7f27f186 Seal leaf AST node classes 2 weeks ago
Siegfried Pammer 1a4a9dd41c Generate a single-pass child enumerator (GetChildNodes) 2 weeks ago
Siegfried Pammer 19f3238330 Normalize [Slot] attribute strings to bare SlotKind names 2 weeks ago
Siegfried Pammer 30f070558f Remove redundant AnonymousMethodExpression.HasParameterList 2 weeks ago
Siegfried Pammer 55a2637985 Convert trivial scalar properties to auto-properties 2 weeks ago
Siegfried Pammer 16db97d5f5 Generate node constructors 2 weeks ago
Siegfried Pammer 1cc8a62f95 Delete TokenRole; carry token text as constants 2 weeks ago
Siegfried Pammer 9285a7328d Delete the Role hierarchy; key the child API on SlotKind 2 weeks ago
Siegfried Pammer 9aa0ddd37b Replace AST null-objects with nullable reference types 2 weeks ago
Siegfried Pammer 1f4fd68b3f Make optional AST slots nullable 2 weeks ago
Siegfried Pammer 126cb3b18d Generate name-token slots from [NameSlot] string properties 2 weeks ago
Siegfried Pammer fe41cfeca5 Delete the NodeType enum and other dead node members 2 weeks ago
Siegfried Pammer 628f044beb Remove dead parsing-only properties and finish DoMatch generation 2 weeks ago
Siegfried Pammer f19b460418 Generate DoMatch for the remaining AST nodes 2 weeks ago
Siegfried Pammer 1faa499f73 Rewrite AST node grammar productions in W3C EBNF 2 weeks ago
Siegfried Pammer a2c765e2bd Generate DoMatch for the expression nodes 2 weeks ago
Siegfried Pammer 92f54a94a8 Support optional children in roles and generated DoMatch 2 weeks ago
Siegfried Pammer 140040b6c9 Annotate AST node classes with their C# grammar productions 2 weeks ago
Siegfried Pammer 785e36712d Enable nullable reference types across the C# transforms 2 weeks ago
Siegfried Pammer 71b2987e42 Decouple TokenRole from Role 2 weeks ago
Siegfried Pammer 89e7f5b662 Expose node.Slot and key child positions on SlotKind 2 weeks ago
Siegfried Pammer 76840e655f Port the pattern matcher to list-indexed slot children 2 weeks ago
Siegfried Pammer 94678e9c69 Flip AST storage from the linked list to slots 2 weeks ago
Siegfried Pammer 77d57b91dc Drop token nodes and move comments and directives to trivia 2 weeks ago