-
Notifications
You must be signed in to change notification settings - Fork 39
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
Move schema and expression FFI code to separate module #360
Move schema and expression FFI code to separate module #360
Conversation
FFI code for schema and expressions have been moved to their own modules. Add prototype of the visitor to enable kernel expresison -> engine expression
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #360 +/- ##
==========================================
- Coverage 74.71% 74.69% -0.03%
==========================================
Files 43 45 +2
Lines 8361 8361
Branches 8361 8361
==========================================
- Hits 6247 6245 -2
- Misses 1727 1729 +2
Partials 387 387 ☔ View full report in Codecov by Sentry. |
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.
lgtm! thanks
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.
Nice!
Eventually we may also want to move the engine bits to their own file, but that's probably not necessary until we add more complete engine support (e.g. engine data, expressions, etc).
} | ||
|
||
// TODO move expression visitors to separate module | ||
|
||
// A set that can identify its contents by address | ||
pub struct ReferenceSet<T> { |
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.
aside: Right now, this is only used by the expression visitors.
Should we move it there? Or do we anticipate it being useful more generally?
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.
I think this would be useful in any Engine -> Kernel conversions, like how its used for expressions. Right now, I'm not sure if we'd have usecases where the engine must convert anything besides expressions. Perhaps schemas or some other metadata?
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.
lgtm and flagging this is breaking API change if we shuffle modules/etc. around (at least in rust it would be if e.g. it leads to import path changes)
This PR addresses points 1 & 2 in #358 by moving the schema visitor to the
schema.rs
module, and moving theKernelExpressionVisitor
to the moduleexpressions.rs
.