@@ -324,6 +324,17 @@ impl<'a> SinkPortInfo<'a> {
324
324
}
325
325
}
326
326
}
327
+
328
+ /// Creates a copy with owned data.
329
+ pub fn to_owned ( & self ) -> SinkPortInfo < ' static > {
330
+ SinkPortInfo {
331
+ name : self . name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
332
+ description : self . description . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
333
+ #[ cfg( any( doc, feature = "pa_v14" ) ) ]
334
+ availability_group : self . availability_group . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
335
+ ..* self
336
+ }
337
+ }
327
338
}
328
339
329
340
/// Stores information about sinks.
@@ -725,6 +736,17 @@ impl<'a> SourcePortInfo<'a> {
725
736
}
726
737
}
727
738
}
739
+
740
+ /// Creates a copy with owned data.
741
+ pub fn to_owned ( & self ) -> SourcePortInfo < ' static > {
742
+ SourcePortInfo {
743
+ name : self . name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
744
+ description : self . description . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
745
+ #[ cfg( any( doc, feature = "pa_v14" ) ) ]
746
+ availability_group : self . availability_group . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
747
+ ..* self
748
+ }
749
+ }
728
750
}
729
751
730
752
/// Stores information about sources.
@@ -1123,6 +1145,19 @@ impl<'a> ServerInfo<'a> {
1123
1145
}
1124
1146
}
1125
1147
}
1148
+
1149
+ /// Creates a copy with owned data.
1150
+ pub fn to_owned ( & self ) -> ServerInfo < ' static > {
1151
+ ServerInfo {
1152
+ user_name : self . user_name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1153
+ host_name : self . host_name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1154
+ server_version : self . server_version . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1155
+ server_name : self . server_name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1156
+ default_sink_name : self . default_sink_name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1157
+ default_source_name : self . default_source_name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1158
+ ..* self
1159
+ }
1160
+ }
1126
1161
}
1127
1162
1128
1163
impl Introspector {
@@ -1503,6 +1538,15 @@ impl<'a> CardProfileInfo<'a> {
1503
1538
}
1504
1539
}
1505
1540
}
1541
+
1542
+ /// Creates a copy with owned data.
1543
+ pub fn to_owned ( & self ) -> CardProfileInfo < ' static > {
1544
+ CardProfileInfo {
1545
+ name : self . name . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1546
+ description : self . description . clone ( ) . map ( |o| Cow :: Owned ( o. into_owned ( ) ) ) ,
1547
+ ..* self
1548
+ }
1549
+ }
1506
1550
}
1507
1551
1508
1552
/// Stores information about a specific port of a card.
0 commit comments