implement Debug on WebRTC structs

This commit is contained in:
Théo Monnom
2022-10-29 15:00:38 +02:00
parent 3630e93054
commit 6497930912
7 changed files with 71 additions and 16 deletions
-3
View File
@@ -1,6 +1,3 @@
extern crate core;
extern crate core;
pub mod proto {
include!(concat!(env!("OUT_DIR"), "/livekit.rs"));
}
+24 -6
View File
@@ -1,21 +1,39 @@
use std::fmt;
macro_rules! id_str {
($($name:ident;)*) => {
$(
impl $name {
pub fn new(str: String) -> Self {
Self(str)
}
pub fn as_str(&self) -> &str {
&self.0
}
}
impl From<String> for $name {
fn from(str: String) -> $name {
$name(str)
}
}
impl From<$name> for String {
fn from(id: $name) -> String {
id.0
}
}
impl PartialEq<$name> for String {
fn eq(&self, u: &$name) -> bool {
*self == *u.0
}
}
impl From<$name> for String {
fn from(id: $name) -> String {
id.0
impl fmt::Display for $name {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
f.write_str(&self.0)
}
}
)*
@@ -23,13 +41,13 @@ macro_rules! id_str {
}
#[derive(Clone, Default, Debug, Eq, Hash, PartialEq, PartialOrd, Ord)]
pub struct ParticipantSid(pub String);
pub struct ParticipantSid(String);
#[derive(Clone, Default, Debug, Eq, Hash, PartialEq, PartialOrd, Ord)]
pub struct ParticipantIdentity(pub String);
pub struct ParticipantIdentity(String);
#[derive(Clone, Default, Debug, Eq, Hash, PartialEq, PartialOrd, Ord)]
pub struct TrackSid(pub String);
pub struct TrackSid(String);
id_str! {
ParticipantSid;
@@ -1,4 +1,3 @@
use core::num::flt2dec::Sign;
use parking_lot::Mutex;
use std::sync::atomic::{AtomicBool, AtomicU8, Ordering};
use std::sync::{Arc, Weak};