#[non_exhaustive]pub enum CiPlusApdu<'a> {
Multistream(MultistreamApdu),
ContentControl(ContentControlApdu),
MultistreamHostControl(MultistreamHostControlApdu<'a>),
SampleDecryption(SampleDecryptionApdu<'a>),
CicamPlayer(CicamPlayerApdu<'a>),
FileRetrieval(FileRetrievalApdu<'a>),
}Expand description
A parsed CI Plus APDU, scoped to the resource it arrived on.
One variant per resource dispatched this pass; each wraps that resource’s own
object enum (which dispatches on the leading apdu_tag).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Multistream(MultistreamApdu)
Multi-stream resource object (0x00900041).
ContentControl(ContentControlApdu)
Content Control multi-stream object (0x008C1041).
MultistreamHostControl(MultistreamHostControlApdu<'a>)
Multi-stream Host Control object (0x00200081 / base v3 0x00200043).
SampleDecryption(SampleDecryptionApdu<'a>)
Sample decryption object (0x00920041).
CicamPlayer(CicamPlayerApdu<'a>)
CICAM Player object (0x00930041).
FileRetrieval(FileRetrievalApdu<'a>)
Auxiliary File System object (0x00910041).
Implementations§
Source§impl<'a> CiPlusApdu<'a>
impl<'a> CiPlusApdu<'a>
Sourcepub fn parse(resource_id: ResourceId, body: &'a [u8]) -> Result<Self>
pub fn parse(resource_id: ResourceId, body: &'a [u8]) -> Result<Self>
Parse a CI Plus APDU, selecting the resource from resource_id
(classify) and then delegating to that resource’s object dispatch on
the leading apdu_tag.
Errors with Error::UnknownResource if resource_id is not a CI Plus
resource handled this pass.
Trait Implementations§
Source§impl<'a> Clone for CiPlusApdu<'a>
impl<'a> Clone for CiPlusApdu<'a>
Source§fn clone(&self) -> CiPlusApdu<'a>
fn clone(&self) -> CiPlusApdu<'a>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for CiPlusApdu<'a>
impl<'a> Debug for CiPlusApdu<'a>
impl<'a> Eq for CiPlusApdu<'a>
Source§impl<'a> PartialEq for CiPlusApdu<'a>
impl<'a> PartialEq for CiPlusApdu<'a>
Source§fn eq(&self, other: &CiPlusApdu<'a>) -> bool
fn eq(&self, other: &CiPlusApdu<'a>) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl<'a> Serialize for CiPlusApdu<'a>
impl<'a> Serialize for CiPlusApdu<'a>
Source§impl Serialize for CiPlusApdu<'_>
impl Serialize for CiPlusApdu<'_>
Source§type Error = Error
type Error = Error
The error type this implementer returns (usually the same as the
corresponding
Parse impl, but need not be).Source§fn serialized_len(&self) -> usize
fn serialized_len(&self) -> usize
Number of bytes
serialize_into will write.impl<'a> StructuralPartialEq for CiPlusApdu<'a>
Auto Trait Implementations§
impl<'a> Freeze for CiPlusApdu<'a>
impl<'a> RefUnwindSafe for CiPlusApdu<'a>
impl<'a> Send for CiPlusApdu<'a>
impl<'a> Sync for CiPlusApdu<'a>
impl<'a> Unpin for CiPlusApdu<'a>
impl<'a> UnsafeUnpin for CiPlusApdu<'a>
impl<'a> UnwindSafe for CiPlusApdu<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more