41 Commits (c803b71a474fbfce7040008c5554284462b91221)

Author SHA1 Message Date
Siegfried Pammer 0d2a137f02 Extract syntax tree generator emit helpers 5 days ago
Siegfried Pammer e264e926bb Enforce one child type per slot kind; de-alias shared kinds 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 721ef6032d Enumerate AST children with a zero-allocation struct enumerator 2 weeks ago
Siegfried Pammer ed61b8a14e Replace the SlotKind enum with object-identity Slots kinds 2 weeks ago
Siegfried Pammer b23499503c Generate typed Slots; key 1:1-kind child access on them 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 1d2e2721e8 Extract the generator's tuples into named record structs 2 weeks ago
Siegfried Pammer 5e077d29f1 Drop dead dot/Role stripping from the generator's SlotKindName 2 weeks ago
Siegfried Pammer 3573bddfa7 Add license headers to the generator helper files 2 weeks ago
Siegfried Pammer fcdf48cf45 Tidy AST generator: clearer name-accessor naming, drop the Role slot kind 2 weeks ago
Siegfried Pammer f5b00ac234 Model optional AST names as nullable; fold [NameSlot] into [Slot] 2 weeks ago
Siegfried Pammer 9618c35bae Drop redundant own-namespace qualifier from generated ctor params 2 weeks ago
Siegfried Pammer 4a310bd1a2 Fix pattern-placeholder operator indentation in the AST generator 2 weeks ago
Siegfried Pammer 8f64cc38cf Resolve generator marker types via GetTypeByMetadataName 2 weeks ago
Siegfried Pammer 9a17ecce1a Give EquatableArray content-based equality and hashing 2 weeks ago
Siegfried Pammer 560d4f9ff5 Format generated AST source like hand-written code 2 weeks ago
Siegfried Pammer d9c70d0732 Drop the unused RoleExpr field from the generator's Slots tuple 2 weeks ago
Siegfried Pammer 217f15d670 Remove dead generator helpers: IsTypeNode, GetTopLevelTypes, TreeTraversal 2 weeks ago
Siegfried Pammer 4461521333 Clarify that bare [Slot] strings are already the SlotKind name 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 1a4a9dd41c Generate a single-pass child enumerator (GetChildNodes) 2 weeks ago
Siegfried Pammer 16db97d5f5 Generate node constructors 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 f19b460418 Generate DoMatch for the remaining AST nodes 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 785e36712d Enable nullable reference types across the C# transforms 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 ba8e5b9641 Model AST children as [Slot] partial properties 2 weeks ago
Siegfried Pammer c174e4d6b1 Add the AST source generator for the C# syntax tree 2 weeks ago