@@ -148,8 +148,8 @@ where
148148 registry. encode (
149149 & mut DescriptorEncoder :: new (
150150 writer,
151- & registry. name_validation_scheme ( ) ,
152- & registry. escaping_scheme ( ) ,
151+ registry. name_validation_scheme ( ) ,
152+ registry. escaping_scheme ( ) ,
153153 )
154154 . into ( ) ,
155155 )
@@ -196,8 +196,8 @@ pub(crate) struct DescriptorEncoder<'a> {
196196 writer : & ' a mut dyn Write ,
197197 prefix : Option < & ' a Prefix > ,
198198 labels : & ' a [ ( Cow < ' static , str > , Cow < ' static , str > ) ] ,
199- name_validation_scheme : & ' a ValidationScheme ,
200- escaping_scheme : & ' a EscapingScheme ,
199+ name_validation_scheme : ValidationScheme ,
200+ escaping_scheme : EscapingScheme ,
201201}
202202
203203impl std:: fmt:: Debug for DescriptorEncoder < ' _ > {
@@ -207,11 +207,11 @@ impl std::fmt::Debug for DescriptorEncoder<'_> {
207207}
208208
209209impl DescriptorEncoder < ' _ > {
210- pub ( crate ) fn new < ' a > (
211- writer : & ' a mut dyn Write ,
212- name_validation_scheme : & ' a ValidationScheme ,
213- escaping_scheme : & ' a EscapingScheme ,
214- ) -> DescriptorEncoder < ' a > {
210+ pub ( crate ) fn new (
211+ writer : & ' _ mut dyn Write ,
212+ name_validation_scheme : ValidationScheme ,
213+ escaping_scheme : EscapingScheme ,
214+ ) -> DescriptorEncoder < ' _ > {
215215 DescriptorEncoder {
216216 writer,
217217 prefix : Default :: default ( ) ,
@@ -230,8 +230,8 @@ impl DescriptorEncoder<'_> {
230230 prefix,
231231 labels,
232232 writer : self . writer ,
233- name_validation_scheme : & self . name_validation_scheme ,
234- escaping_scheme : & self . escaping_scheme ,
233+ name_validation_scheme : self . name_validation_scheme ,
234+ escaping_scheme : self . escaping_scheme ,
235235 }
236236 }
237237
@@ -246,14 +246,12 @@ impl DescriptorEncoder<'_> {
246246 let mut escaped_prefix: Option < & Prefix > = None ;
247247 let escaped_prefix_value: Prefix ;
248248 if let Some ( prefix) = self . prefix {
249- escaped_prefix_value = Prefix :: from ( escape_name ( prefix. as_str ( ) , self . escaping_scheme ) ) ;
249+ escaped_prefix_value =
250+ Prefix :: from ( escape_name ( prefix. as_str ( ) , self . escaping_scheme ) . into_owned ( ) ) ;
250251 escaped_prefix = Some ( & escaped_prefix_value) ;
251252 }
252- let is_quoted_metric_name = is_quoted_metric_name (
253- escaped_name. as_str ( ) ,
254- escaped_prefix,
255- self . name_validation_scheme ,
256- ) ;
253+ let is_quoted_metric_name =
254+ is_quoted_metric_name ( & escaped_name, escaped_prefix, self . name_validation_scheme ) ;
257255 self . writer . write_str ( "# HELP " ) ?;
258256 if is_quoted_metric_name {
259257 self . writer . write_str ( "\" " ) ?;
@@ -262,7 +260,7 @@ impl DescriptorEncoder<'_> {
262260 self . writer . write_str ( prefix. as_str ( ) ) ?;
263261 self . writer . write_str ( "_" ) ?;
264262 }
265- self . writer . write_str ( escaped_name. as_str ( ) ) ?;
263+ self . writer . write_str ( & escaped_name) ?;
266264 if let Some ( unit) = unit {
267265 self . writer . write_str ( "_" ) ?;
268266 self . writer . write_str ( unit. as_str ( ) ) ?;
@@ -282,7 +280,7 @@ impl DescriptorEncoder<'_> {
282280 self . writer . write_str ( prefix. as_str ( ) ) ?;
283281 self . writer . write_str ( "_" ) ?;
284282 }
285- self . writer . write_str ( escaped_name. as_str ( ) ) ?;
283+ self . writer . write_str ( & escaped_name) ?;
286284 if let Some ( unit) = unit {
287285 self . writer . write_str ( "_" ) ?;
288286 self . writer . write_str ( unit. as_str ( ) ) ?;
@@ -303,7 +301,7 @@ impl DescriptorEncoder<'_> {
303301 self . writer . write_str ( prefix. as_str ( ) ) ?;
304302 self . writer . write_str ( "_" ) ?;
305303 }
306- self . writer . write_str ( escaped_name. as_str ( ) ) ?;
304+ self . writer . write_str ( & escaped_name) ?;
307305 self . writer . write_str ( "_" ) ?;
308306 self . writer . write_str ( unit. as_str ( ) ) ?;
309307 if is_quoted_metric_name {
@@ -343,8 +341,8 @@ pub(crate) struct MetricEncoder<'a> {
343341 unit : Option < & ' a Unit > ,
344342 const_labels : & ' a [ ( Cow < ' static , str > , Cow < ' static , str > ) ] ,
345343 family_labels : Option < & ' a dyn super :: EncodeLabelSet > ,
346- name_validation_scheme : & ' a ValidationScheme ,
347- escaping_scheme : & ' a EscapingScheme ,
344+ name_validation_scheme : ValidationScheme ,
345+ escaping_scheme : EscapingScheme ,
348346}
349347
350348impl std:: fmt:: Debug for MetricEncoder < ' _ > {
@@ -534,14 +532,12 @@ impl MetricEncoder<'_> {
534532 let mut escaped_prefix: Option < & Prefix > = None ;
535533 let escaped_prefix_value: Prefix ;
536534 if let Some ( prefix) = self . prefix {
537- escaped_prefix_value = Prefix :: from ( escape_name ( prefix. as_str ( ) , self . escaping_scheme ) ) ;
535+ escaped_prefix_value =
536+ Prefix :: from ( escape_name ( prefix. as_str ( ) , self . escaping_scheme ) . into_owned ( ) ) ;
538537 escaped_prefix = Some ( & escaped_prefix_value) ;
539538 }
540- let is_quoted_metric_name = is_quoted_metric_name (
541- escaped_name. as_str ( ) ,
542- escaped_prefix,
543- self . name_validation_scheme ,
544- ) ;
539+ let is_quoted_metric_name =
540+ is_quoted_metric_name ( & escaped_name, escaped_prefix, self . name_validation_scheme ) ;
545541 if is_quoted_metric_name {
546542 self . writer . write_str ( "{" ) ?;
547543 self . writer . write_str ( "\" " ) ?;
@@ -550,7 +546,7 @@ impl MetricEncoder<'_> {
550546 self . writer . write_str ( prefix. as_str ( ) ) ?;
551547 self . writer . write_str ( "_" ) ?;
552548 }
553- self . writer . write_str ( escaped_name. as_str ( ) ) ?;
549+ self . writer . write_str ( & escaped_name) ?;
554550 if let Some ( unit) = self . unit {
555551 self . writer . write_str ( "_" ) ?;
556552 self . writer . write_str ( unit. as_str ( ) ) ?;
@@ -576,14 +572,12 @@ impl MetricEncoder<'_> {
576572 let mut escaped_prefix: Option < & Prefix > = None ;
577573 let escaped_prefix_value: Prefix ;
578574 if let Some ( prefix) = self . prefix {
579- escaped_prefix_value = Prefix :: from ( escape_name ( prefix. as_str ( ) , self . escaping_scheme ) ) ;
575+ escaped_prefix_value =
576+ Prefix :: from ( escape_name ( prefix. as_str ( ) , self . escaping_scheme ) . into_owned ( ) ) ;
580577 escaped_prefix = Some ( & escaped_prefix_value) ;
581578 }
582- let is_quoted_metric_name = is_quoted_metric_name (
583- escaped_name. as_str ( ) ,
584- escaped_prefix,
585- self . name_validation_scheme ,
586- ) ;
579+ let is_quoted_metric_name =
580+ is_quoted_metric_name ( & escaped_name, escaped_prefix, self . name_validation_scheme ) ;
587581 if self . const_labels . is_empty ( )
588582 && additional_labels. is_none ( )
589583 && self . family_labels . is_none ( )
@@ -750,8 +744,8 @@ impl ExemplarValueEncoder<'_> {
750744pub ( crate ) struct LabelSetEncoder < ' a > {
751745 writer : & ' a mut dyn Write ,
752746 first : bool ,
753- name_validation_scheme : & ' a ValidationScheme ,
754- escaping_scheme : & ' a EscapingScheme ,
747+ name_validation_scheme : ValidationScheme ,
748+ escaping_scheme : EscapingScheme ,
755749}
756750
757751impl std:: fmt:: Debug for LabelSetEncoder < ' _ > {
@@ -765,8 +759,8 @@ impl std::fmt::Debug for LabelSetEncoder<'_> {
765759impl < ' a > LabelSetEncoder < ' a > {
766760 fn new (
767761 writer : & ' a mut dyn Write ,
768- name_validation_scheme : & ' a ValidationScheme ,
769- escaping_scheme : & ' a EscapingScheme ,
762+ name_validation_scheme : ValidationScheme ,
763+ escaping_scheme : EscapingScheme ,
770764 ) -> Self {
771765 Self {
772766 writer,
@@ -791,8 +785,8 @@ impl<'a> LabelSetEncoder<'a> {
791785pub ( crate ) struct LabelEncoder < ' a > {
792786 writer : & ' a mut dyn Write ,
793787 first : bool ,
794- name_validation_scheme : & ' a ValidationScheme ,
795- escaping_scheme : & ' a EscapingScheme ,
788+ name_validation_scheme : ValidationScheme ,
789+ escaping_scheme : EscapingScheme ,
796790}
797791
798792impl std:: fmt:: Debug for LabelEncoder < ' _ > {
@@ -818,8 +812,8 @@ impl LabelEncoder<'_> {
818812
819813pub ( crate ) struct LabelKeyEncoder < ' a > {
820814 writer : & ' a mut dyn Write ,
821- name_validation_scheme : & ' a ValidationScheme ,
822- escaping_scheme : & ' a EscapingScheme ,
815+ name_validation_scheme : ValidationScheme ,
816+ escaping_scheme : EscapingScheme ,
823817}
824818
825819impl std:: fmt:: Debug for LabelKeyEncoder < ' _ > {
@@ -840,12 +834,11 @@ impl<'a> LabelKeyEncoder<'a> {
840834impl std:: fmt:: Write for LabelKeyEncoder < ' _ > {
841835 fn write_str ( & mut self , s : & str ) -> std:: fmt:: Result {
842836 let escaped_name = escape_name ( s, self . escaping_scheme ) ;
843- let is_quoted_label_name =
844- is_quoted_label_name ( escaped_name. as_str ( ) , self . name_validation_scheme ) ;
837+ let is_quoted_label_name = is_quoted_label_name ( & escaped_name, self . name_validation_scheme ) ;
845838 if is_quoted_label_name {
846839 self . writer . write_str ( "\" " ) ?;
847840 }
848- self . writer . write_str ( escaped_name. as_str ( ) ) ?;
841+ self . writer . write_str ( & escaped_name) ?;
849842 if is_quoted_label_name {
850843 self . writer . write_str ( "\" " ) ?;
851844 }
@@ -1043,8 +1036,7 @@ mod tests {
10431036
10441037 encode ( & mut encoded, & registry) . unwrap ( ) ;
10451038
1046- let expected = "# HELP \" my.gauge\" \" My\n gau\n ge\" .\n "
1047- . to_owned ( )
1039+ let expected = "# HELP \" my.gauge\" \" My\n gau\n ge\" .\n " . to_owned ( )
10481040 + "# TYPE \" my.gauge\" \" gauge\n "
10491041 + "{\" my.gauge\" \" } inf\n "
10501042 + "# EOF\n " ;
@@ -1646,8 +1638,8 @@ mod tests {
16461638 unit : None ,
16471639 const_labels : & [ ] ,
16481640 family_labels : None ,
1649- name_validation_scheme : & UTF8Validation ,
1650- escaping_scheme : & NoEscaping ,
1641+ name_validation_scheme : UTF8Validation ,
1642+ escaping_scheme : NoEscaping ,
16511643 } ;
16521644
16531645 encoder. encode_labels :: < NoLabelSet > ( None ) . unwrap ( ) ;
@@ -1667,8 +1659,8 @@ mod tests {
16671659 unit : None ,
16681660 const_labels : & const_labels,
16691661 family_labels : Some ( & family_labels) ,
1670- name_validation_scheme : & UTF8Validation ,
1671- escaping_scheme : & NoEscaping ,
1662+ name_validation_scheme : UTF8Validation ,
1663+ escaping_scheme : NoEscaping ,
16721664 } ;
16731665
16741666 encoder. encode_labels ( Some ( & additional_labels) ) . unwrap ( ) ;
@@ -1688,12 +1680,15 @@ mod tests {
16881680 unit : None ,
16891681 const_labels : & const_labels,
16901682 family_labels : Some ( & family_labels) ,
1691- name_validation_scheme : & UTF8Validation ,
1692- escaping_scheme : & NoEscaping ,
1683+ name_validation_scheme : UTF8Validation ,
1684+ escaping_scheme : NoEscaping ,
16931685 } ;
16941686
16951687 encoder. encode_labels ( Some ( & additional_labels) ) . unwrap ( ) ;
1696- assert_eq ! ( buffer, "{\" service.name\" =\" t1\" ,\" whatever\\ whatever\" =\" t2\" ,\" t*3\" =\" t3\" }" ) ;
1688+ assert_eq ! (
1689+ buffer,
1690+ "{\" service.name\" =\" t1\" ,\" whatever\\ whatever\" =\" t2\" ,\" t*3\" =\" t3\" }"
1691+ ) ;
16971692 }
16981693
16991694 fn parse_with_python_client ( input : String ) {
0 commit comments