WIP of HighBoundary and LowBoundary - #372
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #372 +/- ##
==========================================
- Coverage 88.41% 88.25% -0.16%
==========================================
Files 54 54
Lines 4832 4895 +63
Branches 1359 1376 +17
==========================================
+ Hits 4272 4320 +48
- Misses 368 379 +11
- Partials 192 196 +4 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Well, this is kind of embarrassing, but... I just found an implement_missing_operators branch that I totally forgot about. It has a complete implementation of |
Your branch looks good for date/time but the numeric piece might need to be updated. From the CQL 1.5.3 spec: https://cql.hl7.org/09-b-cqlreference.html#highboundary but that doesn't fully make sense to me since I think others agreed because if you look at latest build spec: https://build.fhir.org/ig/HL7/cql/09-b-cqlreference.html#highboundary which I agree with, if you think of it as the high boundary of an interval with an open endpoint. Plus since I'm working on Decimals at the moment there would need to be rebasing anyway, so let's hold off for now and revisit that after the new Decimals are in. |
|
Ah, right. I totally forgot that I'll admit that
It still feels a little off to me (since, for example, 1.499999996 doesn't exist in a system that only supports 8 decimals of precision), but I at least understand the justification now -- and honestly it's not likely to make a tangible difference in the real world. As for what we do with this PR and my branch, I'm totally OK deferring. I mainly just wanted to document that other branch here so we could move forward without duplicating too much effort. Since my branch implements it incorrectly, however, it's no longer clear if adopting it would buy us much. |
This PR is a Work-In-Progress of implementing the HighBoundary and LowBoundary operators. (closes #159)
Turns out this depends on CQL Decimal specifics, so I didn't want to implement this before the upcoming "BigDecimal" work. Putting this up as a WIP/Draft mostly so that we don't forget about it if the BigDecimal effort takes a long time. The Date/Time/DateTime versions should be functional but there is likely some cleanup and de-duplication possible.
Pull requests into cql-execution require the following.
Submitter and reviewer should ✔ when done.
For items that are not-applicable, mark "N/A" and ✔.
Submitter:
npm run test:plusto run tests, lint, and prettier)cql4browsers.jsbuilt withnpm run build:browserifyif source changed.Reviewer:
Name: