Expand description
DDS-WEB Sample Selector BNF Parser — Spec §7.4.8.
Implementiert §7.4.8 voll.
Spec-Quelle: OMG DDS-WEB 1.0 §7.4.8 (S. 51-53) — DataReader::read
mit SampleSelector-BNF-Grammar:
SampleSelector ::= FilterExpression ( ',' MetadataExpression )?
FilterExpression ::= Term ( ('AND' | 'OR') Term )*
Term ::= Atom | '(' FilterExpression ')'
Atom ::= FieldRef CompOp Literal
MetadataExpression ::= 'sample_state=' SampleState
| 'view_state=' ViewState
| 'instance_state='InstanceStateDer Parser liefert ein AST SampleSelector, das vom Caller in
eine DDS [QueryCondition] uebersetzt werden kann
(crates/dcps/src/query_condition.rs).
Structs§
- Sample
Selector - Top-Level-AST der Sample-Selector-Expression.
Enums§
- BoolOp
- Boolescher Operator.
- Compare
Op - Vergleichs-Operator (Spec §7.4.8).
- Filter
Expression - Filter-Expression — boolescher Ausdruck ueber Field-Referenzen.
- Instance
State Match - Spec §7.4.8 — Instance-State-Match.
- Literal
- Literal-Wert auf der rechten Seite eines Vergleichs.
- Metadata
Expression - Metadata-Expression aus Spec §7.4.8.
- Parse
Error - Parser-Fehler.
- Sample
State Match - Spec §7.4.8 — Sample-State-Match (DDS DCPS §2.2.2.5).
- View
State Match - Spec §7.4.8 — View-State-Match.
Functions§
- parse_
sample_ selector - Parst einen Sample-Selector-String laut Spec §7.4.8 BNF.