-
Notifications
You must be signed in to change notification settings - Fork 463
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
XTypes topic and key annotations, Unions as top-level types #1067
XTypes topic and key annotations, Unions as top-level types #1067
Conversation
Also Added @sample_type
- @key on unions are a WIP in this commit - Various support code for these changes
At least temporarily since it's not complete. It needs additional marshalling functions for at least arrays, maybe other cases.
Also add example of key union nested in struct to topic_annotations_test.idl TODO: Add generated code for KeyLessThan in keys_generator and support standalone unions.
Now at the point where a simple example appilcation can be compiled and run.
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.
Just a few notes on the new code... look like there are also some codacy/cppcheck issues.
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.
How about we have cmake copy everything into cmake_integration/Messenger_X? Also for Perl dependency we can make a script that runs perl script that runs messenger without PerlDDS.
Ah! Good idea.
The new tests are filling up the VMs disk
@mitza-oci It looks like the windows builds on Azure are working now, but Travis is being pushed over 50 minutes... |
If we get rid of the duplicate compiler tests for annotations, which is going to happen at some point anyway and combine this with #1211, it might bring Travis back down to under 50 minutes. |
@mitza-oci Do you know how the Java API generator knows that a type needs typesupport? I thought just enabling IDL4 in |
First |
The regular compiler tests now use annotations
8094457
to
04b594e
Compare
That's unfortunate, especially since it looked like at least one of them was almost done. |
Building on DOCGroup/ACE_TAO#723, this aligns
opendds_idl
closer to the XTypes standard by providing topic annotations such as@topic
and@key
as an alternative toDCPS_DATA
pragma statements (addressing #366) and allowing unions to be used as topic types (addressing #486). This also makes IDL4 support the default for OpenDDS.TODO
tests/FACE/Compiler
tests@nested
and changes agreed on in DDSXTY13-69struct
orunion
) whether or not to generate type support is determined by these rules:@topic
is applied@nested
is also applied and@nested.value
is true@nested
is applied@nested.value
is false.@default_nested
is applied, generate by default if@default_nested.value
is false.@default_nested
isn't applied, inherit the parent module's default.#pragma DCPS_DATA_TYPE
tests/DCPS/Compiler/annotations
for@nested
and@default_nested
.--idl-version 4 --unknown-annotations ignore
totao_idl
.#pragma DCPS_DATA_TYPE
.--default-nested
marshal_generator.cpp
Have Java API work with AnnotationsWill be addressed in another PR