Skip to content

fix DotExpr for fusions and improve missing field semantics - #7297

Open
mccanne wants to merge 1 commit into
mainfrom
dot-fusion-none
Open

fix DotExpr for fusions and improve missing field semantics#7297
mccanne wants to merge 1 commit into
mainfrom
dot-fusion-none

Conversation

@mccanne

@mccanne mccanne commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator

This commit makes DotExpr's work with fusion and nones. There is currently a slow-path defuse whenever a none value or missing-field error is encountered. We can improve this later.

In making these changes, we realized it would be better semantics for a reference to a non-existent field always return an error even for the "?." operator. Instead, ok() with a none operator should be used when missing fields are expected.

Ok-pushdown will be added in a subsequent PR where the defuse step required to create the structured error can be avoided when we know the dot operation is wrapped in an ok() or is_ok(). We added the flag to the DotExpr struct but still need to wire it up.

This commit makes DotExpr's work with fusion and nones.  There is
currently a slow-path defuse whenever a none value or missing-field
error is encountered.  We can improve this later.

In making these changes, we realized it would be better semantics for
a reference to a non-existent field always return an error even for
the "?." operator.  Instead, ok() with a none operator should be used
when missing fields are expected.

Ok-pushdown will be added in a subsequent PR where the defuse step
required to create the structured error can be avoided when we know
the dot operation is wrapped in an ok() or is_ok().  We added the
flag to the DotExpr struct but still need to wire it up.
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