-
Notifications
You must be signed in to change notification settings - Fork 2
Migrate NormalizeForm to use visitor pattern #42
Open
Description
Once Delphi.Forms.Visitor (#41) ships, migrate NormalizeForm in
Delphi.Forms.Normalize to use the visitor for traversal instead of
its ad-hoc recursive NormalizeObject procedure.
The visitor walks the tree; the normalization logic just checks each
object's properties and removes matching ones. This eliminates the
custom recursion through children and collection items.
Scope
- Implement a
TNormalizeVisitorthat removes properties per rules
inVisitObject - Replace
NormalizeObjectrecursion withWalkForm(Form, Visitor) -
NormalizeFormpublic API unchanged -- still takesTFormFileand
TFormNormalizeRules - All existing normalization tests still pass with identical behavior
Acceptance criteria
- All 16 normalization tests pass unchanged
- No ad-hoc recursion remains in
Delphi.Forms.Normalize - Public API unchanged (backward compatible)
Metadata
Metadata
Assignees
Type
Fields
Give feedbackNo fields configured for issues without a type.