[Updt] Mtp 0.3.0
This commit is contained in:
parent
fd185c56eb
commit
4ffe8a434f
33 changed files with 1480 additions and 1531 deletions
|
|
@ -21,14 +21,6 @@ pub enum RouteTarget {
|
|||
}
|
||||
|
||||
impl RouteTarget {
|
||||
pub fn wire_id(self) -> Option<u64> {
|
||||
let (kind, id) = match self {
|
||||
Self::User(id) => (USER_TARGET_KIND, id),
|
||||
Self::Iota(id) => (IOTA_TARGET_KIND, id),
|
||||
};
|
||||
(id > 0 && id <= TARGET_ID_MASK).then_some(kind | id)
|
||||
}
|
||||
|
||||
pub fn from_wire_id(value: u64) -> Option<Self> {
|
||||
let id = value & TARGET_ID_MASK;
|
||||
if id == 0 || value & !(TARGET_KIND_MASK | TARGET_ID_MASK) != 0 {
|
||||
|
|
@ -40,12 +32,6 @@ impl RouteTarget {
|
|||
_ => None,
|
||||
}
|
||||
}
|
||||
|
||||
pub const fn id(self) -> u64 {
|
||||
match self {
|
||||
Self::User(id) | Self::Iota(id) => id,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Error)]
|
||||
|
|
@ -183,10 +169,11 @@ mod tests {
|
|||
use mtp::codec::DataValue;
|
||||
|
||||
fn wire(target: RouteTarget) -> u64 {
|
||||
let Some(value) = target.wire_id() else {
|
||||
panic!("valid route target was rejected");
|
||||
let (kind, id) = match target {
|
||||
RouteTarget::User(id) => (USER_TARGET_KIND, id),
|
||||
RouteTarget::Iota(id) => (IOTA_TARGET_KIND, id),
|
||||
};
|
||||
value
|
||||
kind | id
|
||||
}
|
||||
|
||||
fn relay_frame() -> CommunicationValue {
|
||||
|
|
|
|||
Loading…
Reference in a new issue