Skip to content

feat(message-bus): match arguments with matchers#875

Merged
johngeorgewright merged 1 commit into
masterfrom
matchers
Jun 10, 2026
Merged

feat(message-bus): match arguments with matchers#875
johngeorgewright merged 1 commit into
masterfrom
matchers

Conversation

@johngeorgewright

Copy link
Copy Markdown
Collaborator

Allow a Matcher to stand in for a literal argument in any filter prefix (on, once, until, interceptEvent, generator/iterate, register, interceptInvoker, reader). Matching funnels through #argumentIndex, so a single match() helper covers every path.

Ships objectWith (deep-partial object containment) and predicate (arbitrary boolean test). A Matcher is any value implementing the [MatcherSymbol] method, so it can be mixed into other objects. invoke stays matcher-agnostic; its registration-args type is widened at the message-bus boundary.

Allow a Matcher to stand in for a literal argument in any filter prefix
(on, once, until, interceptEvent, generator/iterate, register,
interceptInvoker, reader). Matching funnels through #argumentIndex, so a
single match() helper covers every path.

Ships objectWith (deep-partial object containment) and predicate
(arbitrary boolean test). A Matcher is any value implementing the
[MatcherSymbol] method, so it can be mixed into other objects. invoke
stays matcher-agnostic; its registration-args type is widened at the
message-bus boundary.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@johngeorgewright johngeorgewright merged commit 827ceb1 into master Jun 10, 2026
3 checks passed
@johngeorgewright johngeorgewright deleted the matchers branch June 10, 2026 19:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant