pub enum ServiceMapping {
Basic,
Enhanced,
EnhancedEmptyStructures,
}Expand description
Which of the two service mappings of DDS-RPC 1.0 §7.5.1 a generator writes the topic types of.
The Basic mapping is the default: §7.5.1.1 is the one every DDS implementation can carry, and the Enhanced one (§7.5.1.2) needs XTypes. An interface does not say which of the two it is for — the same IDL has both mappings — so the choice is the generator’s.
Variants§
Basic
§7.5.1.1: a Request structure with a header and a Call
union, a Reply structure with a header and a Return union.
Enhanced
§7.5.1.2: @Choice @Autoid Request and Reply structures
over the operations, without a header. An operation with nothing to
carry has the dummy member of §7.5.1.1.4 rule 3c, as the example
of §7.5.1.2.6 shows (EmptyOperationStyle::DummyMember).
EnhancedEmptyStructures
Self::Enhanced, with an operation that has nothing to carry as
an empty structure marked @Empty (§7.5.1.2.1.3,
EmptyOperationStyle::EmptyAnnotation): the other reading of the
clause.
Implementations§
Source§impl ServiceMapping
impl ServiceMapping
Sourcepub const fn is_enhanced(self) -> bool
pub const fn is_enhanced(self) -> bool
Whether this is one of the Enhanced readings.
Sourcepub const fn empty_style(self) -> EmptyOperationStyle
pub const fn empty_style(self) -> EmptyOperationStyle
How an operation with nothing to carry is mapped.