Skip to main content

ApduDef

Trait ApduDef 

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

Implemented by every typed APDU object; drives crate::AnyApdu dispatch.

Required Associated Constants§

Source

const TAG: ApduTag

The object’s 3-byte apdu_tag (EN 50221 Table 58).

Source

const NAME: &'static str

Diagnostic name, SCREAMING_SNAKE, suffix-free: CA_PMT, PROFILE_ENQ, APPLICATION_INFO, DATE_TIME.

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§

Source§

impl ApduDef<'_> for ApplicationInfoEnq

Source§

const TAG: ApduTag = tag::APPLICATION_INFO_ENQ

Source§

const NAME: &'static str = "APPLICATION_INFO_ENQ"

Source§

impl ApduDef<'_> for AskRelease

Source§

const TAG: ApduTag = tag::ASK_RELEASE

Source§

const NAME: &'static str = "ASK_RELEASE"

Source§

impl ApduDef<'_> for CaInfo

Source§

const TAG: ApduTag = tag::CA_INFO

Source§

const NAME: &'static str = "CA_INFO"

Source§

impl ApduDef<'_> for CaInfoEnq

Source§

const TAG: ApduTag = tag::CA_INFO_ENQ

Source§

const NAME: &'static str = "CA_INFO_ENQ"

Source§

impl ApduDef<'_> for CaPmtReply

Source§

const TAG: ApduTag = tag::CA_PMT_REPLY

Source§

const NAME: &'static str = "CA_PMT_REPLY"

Source§

impl ApduDef<'_> for ClearReplace

Source§

const TAG: ApduTag = tag::CLEAR_REPLACE

Source§

const NAME: &'static str = "CLEAR_REPLACE"

Source§

impl ApduDef<'_> for CloseMmi

Source§

const TAG: ApduTag = tag::CLOSE_MMI

Source§

const NAME: &'static str = "CLOSE_MMI"

Source§

impl ApduDef<'_> for CommsReply

Source§

const TAG: ApduTag = tag::COMMS_REPLY

Source§

const NAME: &'static str = "COMMS_REPLY"

Source§

impl ApduDef<'_> for DateTime

Source§

const TAG: ApduTag = tag::DATE_TIME

Source§

const NAME: &'static str = "DATE_TIME"

Source§

impl ApduDef<'_> for DateTimeEnq

Source§

const TAG: ApduTag = tag::DATE_TIME_ENQ

Source§

const NAME: &'static str = "DATE_TIME_ENQ"

Source§

impl ApduDef<'_> for DisplayControl

Source§

const TAG: ApduTag = tag::DISPLAY_CONTROL

Source§

const NAME: &'static str = "DISPLAY_CONTROL"

Source§

impl ApduDef<'_> for DisplayMessage

Source§

const TAG: ApduTag = tag::DISPLAY_MESSAGE

Source§

const NAME: &'static str = "DISPLAY_MESSAGE"

Source§

impl ApduDef<'_> for DisplayReply

Source§

const TAG: ApduTag = tag::DISPLAY_REPLY

Source§

const NAME: &'static str = "DISPLAY_REPLY"

Source§

impl ApduDef<'_> for DownloadReply

Source§

const TAG: ApduTag = tag::DOWNLOAD_REPLY

Source§

const NAME: &'static str = "DOWNLOAD_REPLY"

Source§

impl ApduDef<'_> for EnterMenu

Source§

const TAG: ApduTag = tag::ENTER_MENU

Source§

const NAME: &'static str = "ENTER_MENU"

Source§

impl ApduDef<'_> for FlushDownload

Source§

const TAG: ApduTag = tag::FLUSH_DOWNLOAD

Source§

const NAME: &'static str = "FLUSH_DOWNLOAD"

Source§

impl ApduDef<'_> for KeypadControl

Source§

const TAG: ApduTag = tag::KEYPAD_CONTROL

Source§

const NAME: &'static str = "KEYPAD_CONTROL"

Source§

impl ApduDef<'_> for Keypress

Source§

const TAG: ApduTag = tag::KEYPRESS

Source§

const NAME: &'static str = "KEYPRESS"

Source§

impl ApduDef<'_> for MenuAnsw

Source§

const TAG: ApduTag = tag::MENU_ANSW

Source§

const NAME: &'static str = "MENU_ANSW"

Source§

impl ApduDef<'_> for Profile

Source§

const TAG: ApduTag = tag::PROFILE

Source§

const NAME: &'static str = "PROFILE"

Source§

impl ApduDef<'_> for ProfileChange

Source§

const TAG: ApduTag = tag::PROFILE_CHANGE

Source§

const NAME: &'static str = "PROFILE_CHANGE"

Source§

impl ApduDef<'_> for ProfileEnq

Source§

const TAG: ApduTag = tag::PROFILE_ENQ

Source§

const NAME: &'static str = "PROFILE_ENQ"

Source§

impl ApduDef<'_> for Replace

Source§

const TAG: ApduTag = tag::REPLACE

Source§

const NAME: &'static str = "REPLACE"

Source§

impl ApduDef<'_> for SceneControl

Source§

const TAG: ApduTag = tag::SCENE_CONTROL

Source§

const NAME: &'static str = "SCENE_CONTROL"

Source§

impl ApduDef<'_> for SceneDoneMessage

Source§

const TAG: ApduTag = tag::SCENE_DONE

Source§

const NAME: &'static str = "SCENE_DONE"

Source§

impl ApduDef<'_> for SceneEndMark

Source§

const TAG: ApduTag = tag::SCENE_END_MARK

Source§

const NAME: &'static str = "SCENE_END_MARK"

Source§

impl ApduDef<'_> for Tune

Source§

const TAG: ApduTag = tag::TUNE

Source§

const NAME: &'static str = "TUNE"

Source§

impl<'a> ApduDef<'a> for Answ<'a>

Source§

const TAG: ApduTag = tag::ANSW

Source§

const NAME: &'static str = "ANSW"

Source§

impl<'a> ApduDef<'a> for ApplicationInfo<'a>

Source§

const TAG: ApduTag = tag::APPLICATION_INFO

Source§

const NAME: &'static str = "APPLICATION_INFO"

Source§

impl<'a> ApduDef<'a> for CaPmt<'a>

Source§

const TAG: ApduTag = tag::CA_PMT

Source§

const NAME: &'static str = "CA_PMT"

Source§

impl<'a> ApduDef<'a> for CommsCmd<'a>

Source§

const TAG: ApduTag = tag::COMMS_CMD

Source§

const NAME: &'static str = "COMMS_CMD"

Source§

impl<'a> ApduDef<'a> for CommsRcv<'a>

Source§

const TAG: ApduTag = tag::COMMS_RCV_LAST

Source§

const NAME: &'static str = "COMMS_RCV"

Source§

impl<'a> ApduDef<'a> for CommsSend<'a>

Source§

const TAG: ApduTag = tag::COMMS_SEND_LAST

Source§

const NAME: &'static str = "COMMS_SEND"

Source§

impl<'a> ApduDef<'a> for ConnectionDescriptor<'a>

Source§

const TAG: ApduTag = tag::CONNECTION_DESCRIPTOR

Source§

const NAME: &'static str = "CONNECTION_DESCRIPTOR"

Source§

impl<'a> ApduDef<'a> for Enq<'a>

Source§

const TAG: ApduTag = tag::ENQ

Source§

const NAME: &'static str = "ENQ"

Source§

impl<'a> ApduDef<'a> for List<'a>

Source§

const TAG: ApduTag = tag::LIST_LAST

Source§

const NAME: &'static str = "LIST"

Source§

impl<'a> ApduDef<'a> for Menu<'a>

Source§

const TAG: ApduTag = tag::MENU_LAST

Source§

const NAME: &'static str = "MENU"

Source§

impl<'a> ApduDef<'a> for SubtitleDownload<'a>

Source§

const TAG: ApduTag = tag::SUBTITLE_DOWNLOAD_LAST

Source§

const NAME: &'static str = "SUBTITLE_DOWNLOAD"

Source§

impl<'a> ApduDef<'a> for SubtitleSegment<'a>

Source§

const TAG: ApduTag = tag::SUBTITLE_SEGMENT_LAST

Source§

const NAME: &'static str = "SUBTITLE_SEGMENT"

Source§

impl<'a> ApduDef<'a> for Text<'a>

Source§

const TAG: ApduTag = tag::TEXT_LAST

Source§

const NAME: &'static str = "TEXT"