OpenDDS  Snapshot(2023/04/28-20:55)
Public Member Functions | Protected Member Functions | List of all members
OpenDDS::internal::SpecialSerializationAnnotation Class Reference

#include <annotations.h>

Inheritance diagram for OpenDDS::internal::SpecialSerializationAnnotation:
Inheritance graph
[legend]
Collaboration diagram for OpenDDS::internal::SpecialSerializationAnnotation:
Collaboration graph
[legend]

Public Member Functions

std::string definition () const
 
std::string name () const
 
std::string module () const
 
- Public Member Functions inherited from AnnotationWithValue< std::string >
virtual bool node_value_exists (AST_Decl *node, std::string &value) const
 
- Public Member Functions inherited from Annotation
 Annotation ()
 
virtual ~Annotation ()
 
virtual std::string fullname () const
 
AST_Annotation_Decl * declaration () const
 
AST_Annotation_Appl * find_on (AST_Decl *node) const
 
void cache ()
 

Protected Member Functions

std::string value_from_appl (AST_Annotation_Appl *appl) const
 

Detailed Description

Types with this annotation have a special serialization case in marshal_generator.

Definition at line 454 of file annotations.h.

Member Function Documentation

◆ definition()

std::string OpenDDS::internal::SpecialSerializationAnnotation::definition ( ) const
inlinevirtual

Implements Annotation.

Definition at line 456 of file annotations.h.

457  {
458  return
459  "module OpenDDS {\n"
460  " module internal {\n"
461  " @annotation special_serialization {\n"
462  " string template_name default \"\";\n"
463  " };\n"
464  " };\n"
465  "};\n";
466  }

◆ module()

std::string OpenDDS::internal::SpecialSerializationAnnotation::module ( void  ) const
inlinevirtual

Reimplemented from Annotation.

Definition at line 473 of file annotations.h.

474  {
475  return "::OpenDDS::internal::";
476  }

◆ name()

std::string OpenDDS::internal::SpecialSerializationAnnotation::name ( void  ) const
inlinevirtual

Implements Annotation.

Definition at line 468 of file annotations.h.

469  {
470  return "special_serialization";
471  }

◆ value_from_appl()

std::string OpenDDS::internal::SpecialSerializationAnnotation::value_from_appl ( AST_Annotation_Appl *  appl) const
inlineprotectedvirtual

Reimplemented from AnnotationWithValue< std::string >.

Definition at line 479 of file annotations.h.

References get_str_annotation_member_value(), and OPENDDS_END_VERSIONED_NAMESPACE_DECL.

480  {
481  return get_str_annotation_member_value(appl, "template_name");
482  }
std::string get_str_annotation_member_value(AST_Annotation_Appl *appl, const char *member_name)

The documentation for this class was generated from the following file: