-
Notifications
You must be signed in to change notification settings - Fork 194
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
[C++] Add the basic row format serializer for C++ class types via reflection #1144
Conversation
Great work! @PragmaTwice . We use encoder for row format encoding in Java and Python, and use serialization for object graph serialization. Do we need to keep consistent with Java and Python naming? |
Sure! Let me rename it to |
Hi @chaokunyang , I think I've finished the implementation phase of this patch now. Check row_encoder_test.cc for a simple use case. Current only basic types are supported, and just a raw trait API is provided, I will gradually support other features according to #1145. Feel free to review it when you are free : ) |
@PragmaTwice, very impressive and professional work, thank you so much for submitting the CPP serialization implementation for Fury. This is a very big step for fury cpp support, it not only enhances the project but also helps the development of our community. Can't tell how excited I am. |
Can we add a simple user doc to |
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 overall, I left some minor comments
I think the current interface (i.e. And maybe we can add these documentation after that. |
Got it |
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
What do these changes do?
In this PR, we will include a simple row format serializer for class types.
Currently, it only supports basic field types (support for nested types will be added in future PRs).
Since the object graph protocol is not implemented in C++, we only support row format.
However, I believe the serialization framework can be easily extended to other format.
Related issue number
#1145
Check code requirements