Skip to content
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

TAO IDL: Interface Annotations #967

Merged
merged 11 commits into from Oct 11, 2019

Conversation

@iguessthislldo
Copy link
Member

iguessthislldo commented Oct 5, 2019

Updated tao_idl to support annotations on interfaces, operations, and attributes.

Also Updated annotations.md With:

  • a list of what can be annotated
  • how to extend annotation support in the future
  • other minor fixes

TODO

  • Build TAO and OpenDDS with this to make sure I didn't break interfaces
  • Run Annotation Test with Memory Checks
  • Update TAO NEWS File
Used bison 3.4, but the generated code doesn't look very different.

Also Updated annotations.md with:
- a list of what can be annotated
- how to extend annotation support in the future
- other minor fixes
@iguessthislldo iguessthislldo changed the title tao_idl: annotations on interfaces and operations TAO IDL: Interfaces Annotations Oct 5, 2019
@iguessthislldo iguessthislldo changed the title TAO IDL: Interfaces Annotations TAO IDL: Interface Annotations Oct 5, 2019
@iguessthislldo

This comment has been minimized.

Copy link
Member Author

iguessthislldo commented Oct 7, 2019

So the fuzz has a check for #include <...>. I want to know if I can disable this check, because I don't think this convention is right since it forces the compiler to check the current directory for the header is definitely not there. fuzz.pl just says:

This check is suggested by Don Hinton to force user to use # " " instead of <> to avoid confict with Doxygen.

What kind of conflict was it and will it still happen? Regardless this sounds like Doxygen was/is being configured incorrectly to me.

@iguessthislldo iguessthislldo marked this pull request as ready for review Oct 7, 2019
@@ -345,11 +375,11 @@ these lines would also need to be added:
if (document)
{
const char *comment =
AST_Annotation_Member::narrow_from_decl ((*document)["comment"])->
dynamic_cast<AST_Annotation_Member *> ((*document)["comment"])->

This comment has been minimized.

Copy link
@knutpett

knutpett Oct 10, 2019

Contributor

Out of curiosity, why do you use dynamic_cast instead of narrow_from_decl?

This comment has been minimized.

Copy link
@iguessthislldo

iguessthislldo Oct 10, 2019

Author Member

narrow_from_decl is defined in include/idl_narrow.h where it's just a dyanmic_cast. It's a left over from an old narrowing system from the original pre C++98 compiler when they didn't apparently have dynamic_cast.

This comment has been minimized.

Copy link
@iguessthislldo

iguessthislldo Oct 10, 2019

Author Member

I guess I should also say that we should prefer standard C++ over pre-standard stuff whenever it's possible to.

This comment has been minimized.

Copy link
@jwillemsen

jwillemsen Oct 10, 2019

Member

Maybe make a todo to make this a global change in TAO_IDL to simplify the code overall

TAO/TAO_IDL/util/utl_global.cpp Outdated Show resolved Hide resolved
TAO/TAO_IDL/docs/annotations.md Outdated Show resolved Hide resolved
TAO/TAO_IDL/docs/annotations.md Outdated Show resolved Hide resolved
TAO/TAO_IDL/fe/idl.ypp Outdated Show resolved Hide resolved
TAO/TAO_IDL/fe/idl.ypp Outdated Show resolved Hide resolved
@iguessthislldo iguessthislldo requested a review from mitza-oci Oct 10, 2019
TAO/TAO_IDL/docs/annotations.md Outdated Show resolved Hide resolved
Co-Authored-By: Adam Mitz <mitza@objectcomputing.com>
@mitza-oci mitza-oci mentioned this pull request Oct 10, 2019
@knutpett

This comment has been minimized.

Copy link
Contributor

knutpett commented Oct 11, 2019

BE_post_init() in TAO/tests/IDLv4/annotations/be_init.cpp is quite long. Maybe split it in helper functions?

@iguessthislldo

This comment has been minimized.

Copy link
Member Author

iguessthislldo commented Oct 11, 2019

Sure, it's something I thought about doing when I originally created it, but never quite go around to doing.

…/ACE_TAO into igtd/iterface_annotations
@mitza-oci mitza-oci merged commit 8672cb2 into DOCGroup:master Oct 11, 2019
23 checks passed
23 checks passed
Codacy/PR Quality Review Up to standards. A positive pull request.
Details
CodeFactor 1 issue fixed. 1 issue found.
Details
DOCGroup.ACE_TAO Build #20191011.2 succeeded
Details
DOCGroup.ACE_TAO (Linux CLANG5) Linux CLANG5 succeeded
Details
DOCGroup.ACE_TAO (Linux CLANG6) Linux CLANG6 succeeded
Details
DOCGroup.ACE_TAO (Linux CLANG7) Linux CLANG7 succeeded
Details
DOCGroup.ACE_TAO (Linux CLANG8) Linux CLANG8 succeeded
Details
DOCGroup.ACE_TAO (Linux GCC4) Linux GCC4 succeeded
Details
DOCGroup.ACE_TAO (Linux GCC6) Linux GCC6 succeeded
Details
DOCGroup.ACE_TAO (Linux GCC7) Linux GCC7 succeeded
Details
DOCGroup.ACE_TAO (Linux GCC8) Linux GCC8 succeeded
Details
DOCGroup.ACE_TAO (MacOSX) MacOSX succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2015 Debug64) VisualStudio2015 Debug64 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2015 Release64) VisualStudio2015 Release64 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2017 Debug64) VisualStudio2017 Debug64 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2017 Release64) VisualStudio2017 Release64 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2017 WChar) VisualStudio2017 WChar succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2019 Debug32) VisualStudio2019 Debug32 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2019 Debug64) VisualStudio2019 Debug64 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2019 Release32) VisualStudio2019 Release32 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2019 Release64) VisualStudio2019 Release64 succeeded
Details
DOCGroup.ACE_TAO (VisualStudio2019 WChar) VisualStudio2019 WChar succeeded
Details
Travis CI - Pull Request Build Passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
4 participants
You can’t perform that action at this time.