Skip to content

Commit

Permalink
added deserialize everywhere except MessageRef (due to lifetime compl…
Browse files Browse the repository at this point in the history
…aints)

changed cargo.toml to use tinyvec and url serde features
  • Loading branch information
josephhajduk committed Sep 6, 2024
1 parent be8b312 commit 487fa0b
Show file tree
Hide file tree
Showing 26 changed files with 65 additions and 81 deletions.
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ url = "2.0"

serde = { version = "1.0", optional = true, features = ["derive"] }
[features]
serde_serialize = ["serde"]
serde = ["dep:serde", "tinyvec/serde", "url/serde"]
6 changes: 3 additions & 3 deletions src/headers/accept.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ use std::fmt;

/// `Accept` header ([RFC 7826 section 18.1](https://tools.ietf.org/html/rfc7826#section-18.1)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Accept(Vec<MediaTypeRange>);

/// Media type range.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct MediaTypeRange {
/// Media type.
///
Expand All @@ -29,7 +29,7 @@ pub struct MediaTypeRange {

/// Media type.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum MediaType {
Text,
Image,
Expand Down
4 changes: 2 additions & 2 deletions src/headers/accept_ranges.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ use std::fmt;

/// `Accept-Ranges` header ([RFC 7826 section 18.5](https://tools.ietf.org/html/rfc7826#section-18.5)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct AcceptRanges(Vec<RangeUnit>);

/// Range units.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum RangeUnit {
/// Normal playback time.
Npt,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/allow.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use crate::Method;

/// `Allow` header ([RFC 7826 section 18.6](https://tools.ietf.org/html/rfc7826#section-18.6)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Allow(Vec<Method>);

impl std::ops::Deref for Allow {
Expand Down
2 changes: 1 addition & 1 deletion src/headers/content_length.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `Content-Length` header ([RFC 7826 section 18.17](https://tools.ietf.org/html/rfc7826#section-18.17)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct ContentLength(u64);

impl std::ops::Deref for ContentLength {
Expand Down
2 changes: 1 addition & 1 deletion src/headers/content_type.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `Content-Type` header ([RFC 7826 section 18.19](https://tools.ietf.org/html/rfc7826#section-18.19)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct ContentType {
/// Media type.
pub media_type: super::MediaType,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/cseq.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `CSeq` header ([RFC 7826 section 18.20](https://tools.ietf.org/html/rfc7826#section-18.20)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct CSeq(u32);

impl std::ops::Deref for CSeq {
Expand Down
6 changes: 3 additions & 3 deletions src/headers/media_properties.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ use std::fmt;

/// `Media-Properties` header ([RFC 7826 section 18.29](https://tools.ietf.org/html/rfc7826#section-18.29)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct MediaProperties(Vec<MediaProperty>);

/// Media properties.
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum MediaProperty {
/// Random access access is possible in given duration.
RandomAccess(Option<f64>),
Expand Down Expand Up @@ -72,7 +72,7 @@ impl fmt::Display for MediaProperty {

/// Scale range.
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum ScaleRange {
Scale(f64),
Range(f64, f64),
Expand Down
2 changes: 1 addition & 1 deletion src/headers/media_range.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use super::*;

/// `Media-Range` header ([RFC 7826 section 18.30](https://tools.ietf.org/html/rfc7826#section-18.30)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct MediaRange(Vec<Range>);

impl std::ops::Deref for MediaRange {
Expand Down
2 changes: 1 addition & 1 deletion src/headers/notify_reason.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use std::fmt;

/// `Notify-Reason` header ([RFC 7826 section 18.32](https://tools.ietf.org/html/rfc7826#section-18.32)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum NotifyReason {
EndOfStream,
MediaPropertiesUpdate,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/pipelined_requests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `Pipelined-Requests` header ([RFC 7826 section 18.33](https://tools.ietf.org/html/rfc7826#section-18.33)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct PipelinedRequests(u32);

impl std::ops::Deref for PipelinedRequests {
Expand Down
2 changes: 1 addition & 1 deletion src/headers/public.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use crate::Method;

/// `Public` header ([RFC 7826 section 18.39](https://tools.ietf.org/html/rfc7826#section-18.39)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Public(Vec<Method>);

impl std::ops::Deref for Public {
Expand Down
16 changes: 8 additions & 8 deletions src/headers/range.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ use std::fmt;

/// `Range` header ([RFC 7826 section 18.40](https://tools.ietf.org/html/rfc7826#section-18.40)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum Range {
/// Normal Play Time Range ([RFC 7826 section 4.4.2](https://tools.ietf.org/html/rfc7826#section-4.4.2)).
Npt(NptRange),
Expand Down Expand Up @@ -50,7 +50,7 @@ impl std::str::FromStr for Range {

/// Normal Play Time Range ([RFC 7826 section 4.4.2](https://tools.ietf.org/html/rfc7826#section-4.4.2)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum NptRange {
/// Empty range.
Empty,
Expand Down Expand Up @@ -107,7 +107,7 @@ impl std::str::FromStr for NptRange {

/// Normal Play Time ([RFC 7826 section 4.4.2](https://tools.ietf.org/html/rfc7826#section-4.4.2)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum NptTime {
/// Now.
Now,
Expand Down Expand Up @@ -194,7 +194,7 @@ impl std::str::FromStr for NptTime {

/// SMPTE-Relative Timecode Range ([RFC 7826 section 4.4.1](https://tools.ietf.org/html/rfc7826#section-4.4.1)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum SmpteRange {
/// Empty range.
Empty(SmpteType),
Expand Down Expand Up @@ -255,7 +255,7 @@ impl std::str::FromStr for SmpteRange {

/// SMPTE-Relative Timecode Type ([RFC 7826 section 4.4.1](https://tools.ietf.org/html/rfc7826#section-4.4.1)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum SmpteType {
/// SMPTE 30 frames per second timecodes.
Smpte,
Expand Down Expand Up @@ -294,7 +294,7 @@ impl std::str::FromStr for SmpteType {

/// SMPTE-Relative Timecode ([RFC 7826 section 4.4.1](https://tools.ietf.org/html/rfc7826#section-4.4.1)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct SmpteTime {
/// Hours (0-23).
pub hours: u8,
Expand Down Expand Up @@ -396,7 +396,7 @@ impl std::str::FromStr for SmpteTime {

/// Absolute Time (UTC) Time Range ([RFC 7826 section 4.4.3](https://tools.ietf.org/html/rfc7826#section-4.4.3)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum UtcRange {
/// Empty range.
Empty,
Expand Down Expand Up @@ -453,7 +453,7 @@ impl std::str::FromStr for UtcRange {

/// Absolute Time (UTC) Time ([RFC 7826 section 4.4.3](https://tools.ietf.org/html/rfc7826#section-4.4.3)).
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct UtcTime {
/// YYYYMMDD date.
pub date: u32,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/require.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use super::*;

/// `Require` header ([RFC 7826 section 18.43](https://tools.ietf.org/html/rfc7826#section-18.43)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Require(Vec<String>);

impl std::ops::Deref for Require {
Expand Down
10 changes: 5 additions & 5 deletions src/headers/rtp_info.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use std::collections::BTreeMap;

/// `RTP-Info` header ([RFC 7826 section 18.45](https://tools.ietf.org/html/rfc7826#section-18.45)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum RtpInfos {
V1(Vec<v1::RtpInfo>),
V2(Vec<v2::RtpInfo>),
Expand Down Expand Up @@ -46,7 +46,7 @@ pub mod v1 {

/// RTP-Info.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct RtpInfo {
/// Stream URI.
pub uri: url::Url,
Expand Down Expand Up @@ -78,7 +78,7 @@ pub mod v1 {

fn rtp_info(input: &[u8]) -> IResult<&[u8], RtpInfo> {
#[derive(Clone, Default)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
struct Info<'a> {
uri: Option<&'a str>,
seq: Option<&'a str>,
Expand Down Expand Up @@ -132,7 +132,7 @@ pub mod v2 {

/// RTP-Info.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct RtpInfo {
/// Stream URI.
pub uri: url::Url,
Expand All @@ -142,7 +142,7 @@ pub mod v2 {

/// SSRC Information.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct SsrcInfo {
/// SSRC of this stream.
pub ssrc: u32,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/scale.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `Scale` header ([RFC 7826 section 18.46](https://tools.ietf.org/html/rfc7826#section-18.46)).
#[derive(Debug, Clone, Copy, PartialEq, PartialOrd)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Scale(f64);

impl std::ops::Deref for Scale {
Expand Down
2 changes: 1 addition & 1 deletion src/headers/seek_style.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use std::fmt;

/// `Seek-Style` header ([RFC 7826 section 18.47](https://tools.ietf.org/html/rfc7826#section-18.47)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum SeekStyle {
Rap,
CoRap,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/session.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `Session` header ([RFC 7826 section 18.49](https://tools.ietf.org/html/rfc7826#section-18.49)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Session(
/// Session identifier.
pub String,
Expand Down
2 changes: 1 addition & 1 deletion src/headers/speed.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use super::*;

/// `Speed` header ([RFC 7826 section 18.50](https://tools.ietf.org/html/rfc7826#section-18.50)).
#[derive(Debug, Clone, Copy, PartialEq, PartialOrd)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Speed(f64);

impl std::ops::Deref for Speed {
Expand Down
2 changes: 1 addition & 1 deletion src/headers/supported.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use super::*;

/// `Supported` header ([RFC 7826 section 18.51](https://tools.ietf.org/html/rfc7826#section-18.51)).
#[derive(Debug, Clone)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Supported(Vec<String>);

impl std::ops::Deref for Supported {
Expand Down
18 changes: 9 additions & 9 deletions src/headers/transport.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ use std::fmt;

/// `Transport` header ([RFC 7826 section 18.54](https://tools.ietf.org/html/rfc7826#section-18.54)).
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Transports(Vec<Transport>);

impl std::ops::Deref for Transports {
Expand Down Expand Up @@ -53,7 +53,7 @@ impl<'a> From<&'a [Transport]> for Transports {

/// Transport.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[allow(clippy::large_enum_variant)]
pub enum Transport {
/// RTP media transport.
Expand All @@ -64,7 +64,7 @@ pub enum Transport {

/// RTP profiles.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum RtpProfile {
/// Audio/video profile.
Avp,
Expand Down Expand Up @@ -111,7 +111,7 @@ impl<'a> From<&'a str> for RtpProfile {

/// RTP transport description.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct RtpTransport {
/// RTP profile.
pub profile: RtpProfile,
Expand All @@ -123,7 +123,7 @@ pub struct RtpTransport {

/// RTP transport parameters.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct RtpTransportParameters {
/// Unicast transport.
pub unicast: bool,
Expand Down Expand Up @@ -317,7 +317,7 @@ impl TryFrom<TransportParameters> for RtpTransportParameters {

/// Lower RTP transport protocol.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum RtpLowerTransport {
/// TCP.
Tcp,
Expand Down Expand Up @@ -356,7 +356,7 @@ impl fmt::Display for RtpLowerTransport {

/// Transport mode.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum TransportMode {
/// Play mode.
Play,
Expand Down Expand Up @@ -395,7 +395,7 @@ impl fmt::Display for TransportMode {

/// Other transport description.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct OtherTransport {
/// Transport specification.
pub spec: String,
Expand All @@ -407,7 +407,7 @@ pub struct OtherTransport {

/// Transport parameters.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[cfg_attr(feature = "serde_serialize", derive(serde::Serialize))]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct TransportParameters(pub BTreeMap<String, Option<String>>);

mod parser {
Expand Down
Loading

0 comments on commit 487fa0b

Please sign in to comment.