pub struct ParserConfig {
pub version: IdlVersion,
pub compat: CompatMode,
pub vendor: VendorExt,
pub profile: Profile,
pub features: IdlFeatures,
}Expand description
Konfiguration fuer den Top-Level-Parser.
§Beispiel
use zerodds_idl::config::ParserConfig;
let cfg = ParserConfig::default();
assert_eq!(cfg.version, zerodds_idl::grammar::IdlVersion::V4_2);Fields§
§version: IdlVersionWelche IDL-Spec-Version geparst werden soll. Default: V4_2.
compat: CompatModeWie streng wird das OMG-Grammatik-Regelwerk durchgesetzt.
vendor: VendorExtWelche Vendor-Extension(s) zusaetzlich aktiv sind. Legacy-Hook;
pro-Konstrukt-Aktivierung steuert jetzt IdlFeatures.
profile: ProfileBuilding-Block-Profil (§2.3 + §9). Steuert welche Spec-Sektionen
(DDS-Basic, DDS-Extensible, Full mit CORBA/CCM) als gueltig
angesehen werden. Default DdsExtensible reflektiert den
ZeroDDS-Use-Case (DDS-Stack mit XTypes).
features: IdlFeaturesFeature-Flag-Maske fuer pro-Konstrukt-Aktivierung. Default
folgt dem profile-Feld; User kann zusaetzlich einzelne Flags
togglen (z.B. CORBA-Template-Modules in DDS-Extensible-Profil
fuer DDS-RPC-Service-Templates).
Implementations§
Source§impl ParserConfig
impl ParserConfig
Sourcepub const fn strict_4_2() -> Self
pub const fn strict_4_2() -> Self
Convenience: strikte OMG-IDL-4.2-Konfiguration (== Default).
Sourcepub const fn pragmatic_4_2() -> Self
pub const fn pragmatic_4_2() -> Self
Convenience: vendor-pragmatische Konfiguration mit lockerer
Strict-Auslegung (z.B. leere <member_list> zugelassen).
Sourcepub const fn plain_dds_4_2() -> Self
pub const fn plain_dds_4_2() -> Self
Convenience: Plain-DDS-Profil (§2.3a) — minimal DDS-Stack ohne XTypes-Erweiterungen, ohne CORBA/CCM-Konstrukte. Strict.
Sourcepub const fn full_4_2() -> Self
pub const fn full_4_2() -> Self
Convenience: Full-Profil — IDL 4.2 mit allen Building-Blocks (inkl. CORBA-Profile, falls in der Grammar aktiviert).
Sourcepub const fn opensplice_legacy() -> Self
pub const fn opensplice_legacy() -> Self
OpenSplice-Legacy-Migration-Profil: CORBA-Full + Legacy-Pragmas. Fuer Referenz-Kunden, die uralte OpenSplice-IDLs upgraden.
Sourcepub const fn opensplice_modern() -> Self
pub const fn opensplice_modern() -> Self
OpenSplice-Modern-Profil.
Sourcepub const fn rti_connext() -> Self
pub const fn rti_connext() -> Self
RTI-Connext-Profil.
Sourcepub const fn cyclonedds() -> Self
pub const fn cyclonedds() -> Self
Cyclone-DDS-Profil.
Trait Implementations§
Source§impl Clone for ParserConfig
impl Clone for ParserConfig
Source§fn clone(&self) -> ParserConfig
fn clone(&self) -> ParserConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ParserConfig
impl Debug for ParserConfig
Source§impl Default for ParserConfig
impl Default for ParserConfig
Source§impl Hash for ParserConfig
impl Hash for ParserConfig
Source§impl PartialEq for ParserConfig
impl PartialEq for ParserConfig
Source§fn eq(&self, other: &ParserConfig) -> bool
fn eq(&self, other: &ParserConfig) -> bool
self and other values to be equal, and is used by ==.