Commit cbe879e
Separate normal and wrapper hook implementations with distinct types
This change introduces type-safe separation between normal hook implementations and wrapper implementations by:
- Creating WrapperImpl subclass for wrapper/hookwrapper implementations
- Modifying _multicall to handle normal and wrapper implementations separately
- Updating hook callers to maintain separate lists and enforce type constraints
- Adding factory method in HookimplConfiguration for proper type instantiation
- Ensuring historic hooks reject wrapper implementations at registration time
The separation improves type safety, clarifies execution flow, and maintains backward compatibility while providing better error messages for misuse.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>1 parent 44f68a0 commit cbe879e
2 files changed
+13
-7
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
63 | | - | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
64 | 69 | | |
65 | 70 | | |
66 | 71 | | |
| |||
549 | 554 | | |
550 | 555 | | |
551 | 556 | | |
552 | | - | |
553 | 557 | | |
554 | | - | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
555 | 562 | | |
556 | 563 | | |
557 | 564 | | |
| |||
576 | 583 | | |
577 | 584 | | |
578 | 585 | | |
579 | | - | |
580 | | - | |
581 | | - | |
| 586 | + | |
582 | 587 | | |
583 | 588 | | |
584 | 589 | | |
| |||
631 | 636 | | |
632 | 637 | | |
633 | 638 | | |
634 | | - | |
635 | 639 | | |
636 | 640 | | |
637 | 641 | | |
| |||
648 | 652 | | |
649 | 653 | | |
650 | 654 | | |
| 655 | + | |
651 | 656 | | |
652 | 657 | | |
653 | 658 | | |
| |||
0 commit comments