-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
is.na()
: handle FLAT and CONSTANT
#91
Conversation
is.na()
: handle FLAT and CONSTANT
expect_false(is_na_constant(FALSE)) | ||
|
||
skip("I don't know why it returns NA: will investigate") | ||
expect_true(is_na_constant(NA)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need to investigate what happens here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's what's happening: duckdb/duckdb-r#161 we get a SQLNULL
and that perhaps does not go though isna_any
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After some investigation, it appears we don't get to call the function at all when value
is a SQLNULL
, even if we add a bind step.
So I believe we should instead allow creation of a LOGICAL
NULL constant in duckdb/duckdb-r#161 and keep skip()
in the meantime
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@hannes: How does propagation of NULL
values work? The is.na()
function is special in that it needs to return TRUE
if passed an SQLNULL
, do we need to define this function in a special way?
We need a function here because is.na === is.na | is.nan
for doubles and is.na
for all other types.
Added some code for the |
closes #89