Skip to content

expr: Remove lifetime from eager unary functions#35031

Merged
antiguru merged 2 commits intoMaterializeInc:mainfrom
antiguru:unary_gat
Feb 17, 2026
Merged

expr: Remove lifetime from eager unary functions#35031
antiguru merged 2 commits intoMaterializeInc:mainfrom
antiguru:unary_gat

Conversation

@antiguru
Copy link
Copy Markdown
Member

@antiguru antiguru commented Feb 16, 2026

Moves the lifetime parameter for EagerUnaryFunc from the trait to the associated types. This wasn't possible when we first implemented the traits. No behavior changes expected. The first commit contains the trait changes, the second the updated sqlfunc snapshots.

antiguru and others added 2 commits February 16, 2026 18:13
Move the lifetime parameter from `EagerUnaryFunc<'a>` to GATs on the
associated types (`Input<'a>`, `Output<'a>`) and the `call` method.
This enables more flexible lifetime handling in implementations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Moritz Hoffmann <mh@materialize.com>
@github-actions
Copy link
Copy Markdown
Contributor

Pre-merge checklist

  • The PR title is descriptive and will make sense in the git log.
  • This PR has adequate test coverage / QA involvement has been duly considered. (trigger-ci for additional test/nightly runs)
  • If this PR includes major user-facing behavior changes, I have pinged the relevant PM to schedule a changelog post.
  • This PR has an associated up-to-date design doc, is a design doc (template), or is sufficiently small to not require a design.
  • If this PR evolves an existing $T ⇔ Proto$T mapping (possibly in a backwards-incompatible way), then it is tagged with a T-proto label.
  • If this PR will require changes to cloud orchestration or tests, there is a companion cloud PR to account for those changes that is tagged with the release-blocker label (example).

@antiguru antiguru marked this pull request as ready for review February 16, 2026 18:38
@antiguru antiguru requested a review from a team as a code owner February 16, 2026 18:38
@antiguru antiguru changed the title Move EagerUnaryFunc lifetime from trait to GATs expr: Remove lifetime from eager unary functions Feb 16, 2026
@antiguru antiguru merged commit efc8017 into MaterializeInc:main Feb 17, 2026
134 checks passed
@antiguru antiguru deleted the unary_gat branch February 17, 2026 10:07
patrickwwbutler pushed a commit to patrickwwbutler/materialize that referenced this pull request Feb 19, 2026
Moves the lifetime parameter for `EagerUnaryFunc` from the trait to the
associated types. This wasn't possible when we first implemented the
traits. No behavior changes expected. The first commit contains the
trait changes, the second the updated sqlfunc snapshots.

---------

Signed-off-by: Moritz Hoffmann <mh@materialize.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
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.

2 participants