Skip to main content

DescriptorDef

Trait DescriptorDef 

Source
pub trait DescriptorDef<'a>: Parse<'a, Error = Error> {
    const TAG: u8;
    const NAME: &'static str;
}
Expand description

Implemented by every typed descriptor; drives crate::descriptors::AnyDescriptor dispatch. TAG is the wire descriptor_tag this type parses.

Required Associated Constants§

Source

const TAG: u8

Wire descriptor_tag.

Source

const NAME: &'static str

Diagnostic name. Convention (workspace-wide): SCREAMING_SNAKE, suffix-free — SHORT_EVENT, EXTENSION, NETWORK_NAME (no _descriptor suffix).

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<'a> DescriptorDef<'a> for AacDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "AAC"

Source§

impl<'a> DescriptorDef<'a> for Ac3Descriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "AC3"

Source§

impl<'a> DescriptorDef<'a> for AdaptationFieldDataDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "ADAPTATION_FIELD_DATA"

Source§

impl<'a> DescriptorDef<'a> for AncillaryDataDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "ANCILLARY_DATA"

Source§

impl<'a> DescriptorDef<'a> for AnnouncementSupportDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "ANNOUNCEMENT_SUPPORT"

Source§

impl<'a> DescriptorDef<'a> for ApplicationDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "APPLICATION"

Source§

impl<'a> DescriptorDef<'a> for ApplicationNameDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "APPLICATION_NAME"

Source§

impl<'a> DescriptorDef<'a> for ApplicationSignallingDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "APPLICATION_SIGNALLING"

Source§

impl<'a> DescriptorDef<'a> for ApplicationUsageDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "APPLICATION_USAGE"

Source§

impl<'a> DescriptorDef<'a> for AudioStreamDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "AUDIO_STREAM"

Source§

impl<'a> DescriptorDef<'a> for AuxiliaryVideoStreamDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "AUXILIARY_VIDEO_STREAM"

Source§

impl<'a> DescriptorDef<'a> for AvcTimingAndHrdDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "AVC_TIMING_AND_HRD"

Source§

impl<'a> DescriptorDef<'a> for AvcVideoDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "AVC_VIDEO"

Source§

impl<'a> DescriptorDef<'a> for BouquetNameDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "BOUQUET_NAME"

Source§

impl<'a> DescriptorDef<'a> for CaDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CA"

Source§

impl<'a> DescriptorDef<'a> for CaIdentifierDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CA_IDENTIFIER"

Source§

impl<'a> DescriptorDef<'a> for CableDeliverySystemDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CABLE_DELIVERY_SYSTEM"

Source§

impl<'a> DescriptorDef<'a> for CarouselIdentifierDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CAROUSEL_IDENTIFIER"

Source§

impl<'a> DescriptorDef<'a> for CellFrequencyLinkDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CELL_FREQUENCY_LINK"

Source§

impl<'a> DescriptorDef<'a> for CellListDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CELL_LIST"

Source§

impl<'a> DescriptorDef<'a> for ComponentDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "COMPONENT"

Source§

impl<'a> DescriptorDef<'a> for ContentDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CONTENT"

Source§

impl<'a> DescriptorDef<'a> for ContentIdentifierDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CONTENT_IDENTIFIER"

Source§

impl<'a> DescriptorDef<'a> for ContentLabelingDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "CONTENT_LABELING"

Source§

impl<'a> DescriptorDef<'a> for CopyrightDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "COPYRIGHT"

Source§

impl<'a> DescriptorDef<'a> for CountryAvailabilityDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "COUNTRY_AVAILABILITY"

Source§

impl<'a> DescriptorDef<'a> for DataBroadcastDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DATA_BROADCAST"

Source§

impl<'a> DescriptorDef<'a> for DataBroadcastIdDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DATA_BROADCAST_ID"

Source§

impl<'a> DescriptorDef<'a> for DataStreamAlignmentDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DATA_STREAM_ALIGNMENT"

Source§

impl<'a> DescriptorDef<'a> for DefaultAuthorityDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DEFAULT_AUTHORITY"

Source§

impl<'a> DescriptorDef<'a> for DsngDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DSNG"

Source§

impl<'a> DescriptorDef<'a> for DtsDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DTS"

Source§

impl<'a> DescriptorDef<'a> for DvbJApplicationDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DVB_J_APPLICATION"

Source§

impl<'a> DescriptorDef<'a> for DvbJApplicationLocationDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "DVB_J_APPLICATION_LOCATION"

Source§

impl<'a> DescriptorDef<'a> for EcmRepetitionRateDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "ECM_REPETITION_RATE"

Source§

impl<'a> DescriptorDef<'a> for EnhancedAc3Descriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "ENHANCED_AC3"

Source§

impl<'a> DescriptorDef<'a> for ExtendedEventDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "EXTENDED_EVENT"

Source§

impl<'a> DescriptorDef<'a> for ExtensionDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "EXTENSION"

Source§

impl<'a> DescriptorDef<'a> for ExternalApplicationAuthorisationDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "EXTERNAL_APPLICATION_AUTHORISATION"

Source§

impl<'a> DescriptorDef<'a> for ExternalEsIdDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "EXTERNAL_ES_ID"

Source§

impl<'a> DescriptorDef<'a> for FlexMuxTimingDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "FLEX_MUX_TIMING"

Source§

impl<'a> DescriptorDef<'a> for FmcDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "FMC"

Source§

impl<'a> DescriptorDef<'a> for FmxBufferSizeDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "FMX_BUFFER_SIZE"

Source§

impl<'a> DescriptorDef<'a> for FrequencyListDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "FREQUENCY_LIST"

Source§

impl<'a> DescriptorDef<'a> for FtaContentManagementDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "FTA_CONTENT_MANAGEMENT"

Source§

impl<'a> DescriptorDef<'a> for HevcVideoDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "HEVC_VIDEO"

Source§

impl<'a> DescriptorDef<'a> for HierarchyDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "HIERARCHY"

Source§

impl<'a> DescriptorDef<'a> for IbpDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "IBP"

Source§

impl<'a> DescriptorDef<'a> for IodDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "IOD"

Source§

impl<'a> DescriptorDef<'a> for Iso639LanguageDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "ISO_639_LANGUAGE"

Source§

impl<'a> DescriptorDef<'a> for J2kVideoDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "J2K_VIDEO"

Source§

impl<'a> DescriptorDef<'a> for LinkageDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "LINKAGE"

Source§

impl<'a> DescriptorDef<'a> for LocalTimeOffsetDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "LOCAL_TIME_OFFSET"

Source§

impl<'a> DescriptorDef<'a> for LogicalChannelDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "LOGICAL_CHANNEL"

Source§

impl<'a> DescriptorDef<'a> for MaximumBitrateDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MAXIMUM_BITRATE"

Source§

impl<'a> DescriptorDef<'a> for MetadataDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "METADATA"

Source§

impl<'a> DescriptorDef<'a> for MetadataPointerDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "METADATA_POINTER"

Source§

impl<'a> DescriptorDef<'a> for MetadataStdDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "METADATA_STD"

Source§

impl<'a> DescriptorDef<'a> for MosaicDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MOSAIC"

Source§

impl<'a> DescriptorDef<'a> for Mpeg2AacAudioDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MPEG2_AAC_AUDIO"

Source§

impl<'a> DescriptorDef<'a> for Mpeg4AudioDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MPEG4_AUDIO"

Source§

impl<'a> DescriptorDef<'a> for Mpeg4VideoDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MPEG4_VIDEO"

Source§

impl<'a> DescriptorDef<'a> for MultilingualBouquetNameDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MULTILINGUAL_BOUQUET_NAME"

Source§

impl<'a> DescriptorDef<'a> for MultilingualComponentDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MULTILINGUAL_COMPONENT"

Source§

impl<'a> DescriptorDef<'a> for MultilingualNetworkNameDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MULTILINGUAL_NETWORK_NAME"

Source§

impl<'a> DescriptorDef<'a> for MultilingualServiceNameDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MULTILINGUAL_SERVICE_NAME"

Source§

impl<'a> DescriptorDef<'a> for MultiplexBufferDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MULTIPLEX_BUFFER"

Source§

impl<'a> DescriptorDef<'a> for MultiplexBufferUtilizationDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MULTIPLEX_BUFFER_UTILIZATION"

Source§

impl<'a> DescriptorDef<'a> for MuxcodeDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MUXCODE"

Source§

impl<'a> DescriptorDef<'a> for MvcExtensionDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "MVC_EXTENSION"

Source§

impl<'a> DescriptorDef<'a> for NetworkNameDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "NETWORK_NAME"

Source§

impl<'a> DescriptorDef<'a> for NordigLogicalChannelV1

Source§

const TAG: u8 = TAG_V1

Source§

const NAME: &'static str = "NORDIG_LOGICAL_CHANNEL_V1"

Source§

impl<'a> DescriptorDef<'a> for NordigLogicalChannelV2

Source§

const TAG: u8 = TAG_V2

Source§

const NAME: &'static str = "NORDIG_LOGICAL_CHANNEL_V2"

Source§

impl<'a> DescriptorDef<'a> for NvodReferenceDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "NVOD_REFERENCE"

Source§

impl<'a> DescriptorDef<'a> for ParentalRatingDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "PARENTAL_RATING"

Source§

impl<'a> DescriptorDef<'a> for PartialTransportStreamDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "PARTIAL_TRANSPORT_STREAM"

Source§

impl<'a> DescriptorDef<'a> for PdcDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "PDC"

Source§

impl<'a> DescriptorDef<'a> for PrivateDataIndicatorDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "PRIVATE_DATA_INDICATOR"

Source§

impl<'a> DescriptorDef<'a> for PrivateDataSpecifierDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "PRIVATE_DATA_SPECIFIER"

Source§

impl<'a> DescriptorDef<'a> for RegistrationDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "REGISTRATION"

Source§

impl<'a> DescriptorDef<'a> for RelatedContentDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "RELATED_CONTENT"

Source§

impl<'a> DescriptorDef<'a> for S2SatelliteDeliverySystemDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "S2_SATELLITE_DELIVERY_SYSTEM"

Source§

impl<'a> DescriptorDef<'a> for SatelliteDeliverySystemDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SATELLITE_DELIVERY_SYSTEM"

Source§

impl<'a> DescriptorDef<'a> for ScramblingDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SCRAMBLING"

Source§

impl<'a> DescriptorDef<'a> for ServiceAvailabilityDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SERVICE_AVAILABILITY"

Source§

impl<'a> DescriptorDef<'a> for ServiceDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SERVICE"

Source§

impl<'a> DescriptorDef<'a> for ServiceIdentifierDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SERVICE_IDENTIFIER"

Source§

impl<'a> DescriptorDef<'a> for ServiceListDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SERVICE_LIST"

Source§

impl<'a> DescriptorDef<'a> for ServiceMoveDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SERVICE_MOVE"

Source§

impl<'a> DescriptorDef<'a> for ShortEventDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SHORT_EVENT"

Source§

impl<'a> DescriptorDef<'a> for ShortSmoothingBufferDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SHORT_SMOOTHING_BUFFER"

Source§

impl<'a> DescriptorDef<'a> for SimpleApplicationBoundaryDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SIMPLE_APPLICATION_BOUNDARY"

Source§

impl<'a> DescriptorDef<'a> for SimpleApplicationLocationDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SIMPLE_APPLICATION_LOCATION"

Source§

impl<'a> DescriptorDef<'a> for SlDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SL"

Source§

impl<'a> DescriptorDef<'a> for SmoothingBufferDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SMOOTHING_BUFFER"

Source§

impl<'a> DescriptorDef<'a> for StdDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "STD"

Source§

impl<'a> DescriptorDef<'a> for StreamIdentifierDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "STREAM_IDENTIFIER"

Source§

impl<'a> DescriptorDef<'a> for StuffingDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "STUFFING"

Source§

impl<'a> DescriptorDef<'a> for SubtitlingDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SUBTITLING"

Source§

impl<'a> DescriptorDef<'a> for SvcExtensionDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SVC_EXTENSION"

Source§

impl<'a> DescriptorDef<'a> for SystemClockDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "SYSTEM_CLOCK"

Source§

impl<'a> DescriptorDef<'a> for TargetBackgroundGridDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TARGET_BACKGROUND_GRID"

Source§

impl<'a> DescriptorDef<'a> for TelephoneDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TELEPHONE"

Source§

impl<'a> DescriptorDef<'a> for TeletextDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TELETEXT"

Source§

impl<'a> DescriptorDef<'a> for TerrestrialDeliverySystemDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TERRESTRIAL_DELIVERY_SYSTEM"

Source§

impl<'a> DescriptorDef<'a> for TimeShiftedEventDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TIME_SHIFTED_EVENT"

Source§

impl<'a> DescriptorDef<'a> for TimeShiftedServiceDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TIME_SHIFTED_SERVICE"

Source§

impl<'a> DescriptorDef<'a> for TimeSliceFecIdentifierDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TIME_SLICE_FEC_IDENTIFIER"

Source§

impl<'a> DescriptorDef<'a> for TransportProtocolDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TRANSPORT_PROTOCOL"

Source§

impl<'a> DescriptorDef<'a> for TransportStreamDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TRANSPORT_STREAM"

Source§

impl<'a> DescriptorDef<'a> for TvaIdDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "TVA_ID"

Source§

impl<'a> DescriptorDef<'a> for VbiDataDescriptor<'a>

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "VBI_DATA"

Source§

impl<'a> DescriptorDef<'a> for VbiTeletextDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "VBI_TELETEXT"

Source§

impl<'a> DescriptorDef<'a> for VideoStreamDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "VIDEO_STREAM"

Source§

impl<'a> DescriptorDef<'a> for VideoWindowDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "VIDEO_WINDOW"

Source§

impl<'a> DescriptorDef<'a> for XaitLocationDescriptor

Source§

const TAG: u8 = TAG

Source§

const NAME: &'static str = "XAIT_LOCATION"