@@ -165,7 +165,7 @@ impl JsonFormat {
165165 /// # Errors
166166 ///
167167 /// Returns `Err` if `s` does not meet the above requirements.
168- pub fn comma < S : AsRef < str > > ( mut self , s : S ) -> Result < Self , Error > {
168+ pub fn comma < S : AsRef < str > > ( mut self , s : S ) -> Result < Self , JsonSyntaxError > {
169169 self . comma = validate_string ( s, Some ( ',' ) ) ?;
170170 Ok ( self )
171171 }
@@ -179,7 +179,7 @@ impl JsonFormat {
179179 /// # Errors
180180 ///
181181 /// Returns `Err` if `s` does not meet the above requirements.
182- pub fn colon < S : AsRef < str > > ( mut self , s : S ) -> Result < Self , Error > {
182+ pub fn colon < S : AsRef < str > > ( mut self , s : S ) -> Result < Self , JsonSyntaxError > {
183183 self . colon = validate_string ( s, Some ( ':' ) ) ?;
184184 Ok ( self )
185185 }
@@ -196,7 +196,7 @@ impl JsonFormat {
196196 ///
197197 /// Returns `Err` if `s` contains a string that contains any character
198198 /// other than those listed above.
199- pub fn indent < S : AsRef < str > > ( mut self , s : Option < S > ) -> Result < Self , Error > {
199+ pub fn indent < S : AsRef < str > > ( mut self , s : Option < S > ) -> Result < Self , JsonSyntaxError > {
200200 self . indent = s. map ( |s| validate_string ( s, None ) ) . transpose ( ) ?;
201201 Ok ( self )
202202 }
@@ -478,7 +478,7 @@ pub type JsonFrmtr<'a> = internal::JsonFormatterBase<internal::JsonFmt<'a>>;
478478/// Error returned when an invalid string is passed to certain [`JsonFormat`]
479479/// methods.
480480#[ derive( Clone , Copy , Debug , Eq , Hash , PartialEq ) ]
481- pub enum Error {
481+ pub enum JsonSyntaxError {
482482 /// Returned when the given string contains an invalid/unexpected
483483 /// character. Contains the character in question.
484484 InvalidCharacter ( char ) ,
@@ -494,9 +494,9 @@ pub enum Error {
494494 MultipleSeparators ( char ) ,
495495}
496496
497- impl fmt:: Display for Error {
497+ impl fmt:: Display for JsonSyntaxError {
498498 fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
499- use Error :: * ;
499+ use JsonSyntaxError :: * ;
500500 match self {
501501 InvalidCharacter ( c) => write ! ( f, "string contains unexpected character {c:?}" ) ,
502502 MissingSeparator ( c) => write ! ( f, "no occurrence of {c:?} found in string" ) ,
@@ -505,26 +505,29 @@ impl fmt::Display for Error {
505505 }
506506}
507507
508- impl std:: error:: Error for Error { }
508+ impl std:: error:: Error for JsonSyntaxError { }
509509
510- fn validate_string < S : AsRef < str > > ( s : S , sep : Option < char > ) -> Result < CompactString , Error > {
510+ fn validate_string < S : AsRef < str > > (
511+ s : S ,
512+ sep : Option < char > ,
513+ ) -> Result < CompactString , JsonSyntaxError > {
511514 let s = s. as_ref ( ) ;
512515 let mut seen_sep = false ;
513516 for ch in s. chars ( ) {
514517 match ( sep, ch) {
515518 ( Some ( sep_) , ch) if sep_ == ch => {
516519 if std:: mem:: replace ( & mut seen_sep, true ) {
517- return Err ( Error :: MultipleSeparators ( sep_) ) ;
520+ return Err ( JsonSyntaxError :: MultipleSeparators ( sep_) ) ;
518521 }
519522 }
520523 // RFC 8259, section 2
521524 ( _, ' ' | '\t' | '\n' | '\r' ) => ( ) ,
522- ( _, ch) => return Err ( Error :: InvalidCharacter ( ch) ) ,
525+ ( _, ch) => return Err ( JsonSyntaxError :: InvalidCharacter ( ch) ) ,
523526 }
524527 }
525528 if let Some ( sep_) = sep {
526529 if !seen_sep {
527- return Err ( Error :: MissingSeparator ( sep_) ) ;
530+ return Err ( JsonSyntaxError :: MissingSeparator ( sep_) ) ;
528531 }
529532 }
530533 Ok ( s. into ( ) )
@@ -543,52 +546,55 @@ mod tests {
543546 #[ case( "? " , Ok ( "? " . into( ) ) ) ]
544547 #[ case( " ? " , Ok ( " ? " . into( ) ) ) ]
545548 #[ case( " \t ?\r \n " , Ok ( " \t ?\r \n " . into( ) ) ) ]
546- #[ case( "" , Err ( Error :: MissingSeparator ( '?' ) ) ) ]
547- #[ case( " " , Err ( Error :: MissingSeparator ( '?' ) ) ) ]
548- #[ case( "??" , Err ( Error :: MultipleSeparators ( '?' ) ) ) ]
549- #[ case( "? ?" , Err ( Error :: MultipleSeparators ( '?' ) ) ) ]
550- #[ case( "\x0C " , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
551- #[ case( "\x0B " , Err ( Error :: InvalidCharacter ( '\x0B' ) ) ) ]
552- #[ case( "\u{A0} " , Err ( Error :: InvalidCharacter ( '\u{A0}' ) ) ) ]
553- #[ case( "\u{85} " , Err ( Error :: InvalidCharacter ( '\u{85}' ) ) ) ]
554- #[ case( "\u{1680} " , Err ( Error :: InvalidCharacter ( '\u{1680}' ) ) ) ]
555- #[ case( "\u{180E} " , Err ( Error :: InvalidCharacter ( '\u{180E}' ) ) ) ]
556- #[ case( "\u{2000} " , Err ( Error :: InvalidCharacter ( '\u{2000}' ) ) ) ]
557- #[ case( "\u{2001} " , Err ( Error :: InvalidCharacter ( '\u{2001}' ) ) ) ]
558- #[ case( "\u{2002} " , Err ( Error :: InvalidCharacter ( '\u{2002}' ) ) ) ]
559- #[ case( "\u{2003} " , Err ( Error :: InvalidCharacter ( '\u{2003}' ) ) ) ]
560- #[ case( "\u{2004} " , Err ( Error :: InvalidCharacter ( '\u{2004}' ) ) ) ]
561- #[ case( "\u{2005} " , Err ( Error :: InvalidCharacter ( '\u{2005}' ) ) ) ]
562- #[ case( "\u{2006} " , Err ( Error :: InvalidCharacter ( '\u{2006}' ) ) ) ]
563- #[ case( "\u{2007} " , Err ( Error :: InvalidCharacter ( '\u{2007}' ) ) ) ]
564- #[ case( "\u{2008} " , Err ( Error :: InvalidCharacter ( '\u{2008}' ) ) ) ]
565- #[ case( "\u{2009} " , Err ( Error :: InvalidCharacter ( '\u{2009}' ) ) ) ]
566- #[ case( "\u{200A} " , Err ( Error :: InvalidCharacter ( '\u{200A}' ) ) ) ]
567- #[ case( "\u{200B} " , Err ( Error :: InvalidCharacter ( '\u{200B}' ) ) ) ]
568- #[ case( "\u{200C} " , Err ( Error :: InvalidCharacter ( '\u{200C}' ) ) ) ]
569- #[ case( "\u{200D} " , Err ( Error :: InvalidCharacter ( '\u{200D}' ) ) ) ]
570- #[ case( "\u{2028} " , Err ( Error :: InvalidCharacter ( '\u{2028}' ) ) ) ]
571- #[ case( "\u{2029} " , Err ( Error :: InvalidCharacter ( '\u{2029}' ) ) ) ]
572- #[ case( "\u{202F} " , Err ( Error :: InvalidCharacter ( '\u{202F}' ) ) ) ]
573- #[ case( "\u{205F} " , Err ( Error :: InvalidCharacter ( '\u{205F}' ) ) ) ]
574- #[ case( "\u{2060} " , Err ( Error :: InvalidCharacter ( '\u{2060}' ) ) ) ]
575- #[ case( "\u{3000} " , Err ( Error :: InvalidCharacter ( '\u{3000}' ) ) ) ]
576- #[ case( "\u{FEFF} " , Err ( Error :: InvalidCharacter ( '\u{FEFF}' ) ) ) ]
577- #[ case( "\x0C ?" , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
578- #[ case( "?\x0C " , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
579- #[ case( "?\x0C ?" , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
580- #[ case( "??\x0C " , Err ( Error :: MultipleSeparators ( '?' ) ) ) ]
581- #[ case( "." , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
582- #[ case( ".?" , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
583- #[ case( "?." , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
584- #[ case( "?.?" , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
585- #[ case( "??." , Err ( Error :: MultipleSeparators ( '?' ) ) ) ]
586- #[ case( "☃" , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
587- #[ case( "☃?" , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
588- #[ case( "?☃" , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
589- #[ case( "?☃?" , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
590- #[ case( "??☃" , Err ( Error :: MultipleSeparators ( '?' ) ) ) ]
591- fn test_validate_string_sep ( #[ case] s : & str , #[ case] r : Result < CompactString , Error > ) {
549+ #[ case( "" , Err ( JsonSyntaxError :: MissingSeparator ( '?' ) ) ) ]
550+ #[ case( " " , Err ( JsonSyntaxError :: MissingSeparator ( '?' ) ) ) ]
551+ #[ case( "??" , Err ( JsonSyntaxError :: MultipleSeparators ( '?' ) ) ) ]
552+ #[ case( "? ?" , Err ( JsonSyntaxError :: MultipleSeparators ( '?' ) ) ) ]
553+ #[ case( "\x0C " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
554+ #[ case( "\x0B " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0B' ) ) ) ]
555+ #[ case( "\u{A0} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{A0}' ) ) ) ]
556+ #[ case( "\u{85} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{85}' ) ) ) ]
557+ #[ case( "\u{1680} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{1680}' ) ) ) ]
558+ #[ case( "\u{180E} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{180E}' ) ) ) ]
559+ #[ case( "\u{2000} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2000}' ) ) ) ]
560+ #[ case( "\u{2001} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2001}' ) ) ) ]
561+ #[ case( "\u{2002} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2002}' ) ) ) ]
562+ #[ case( "\u{2003} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2003}' ) ) ) ]
563+ #[ case( "\u{2004} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2004}' ) ) ) ]
564+ #[ case( "\u{2005} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2005}' ) ) ) ]
565+ #[ case( "\u{2006} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2006}' ) ) ) ]
566+ #[ case( "\u{2007} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2007}' ) ) ) ]
567+ #[ case( "\u{2008} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2008}' ) ) ) ]
568+ #[ case( "\u{2009} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2009}' ) ) ) ]
569+ #[ case( "\u{200A} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200A}' ) ) ) ]
570+ #[ case( "\u{200B} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200B}' ) ) ) ]
571+ #[ case( "\u{200C} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200C}' ) ) ) ]
572+ #[ case( "\u{200D} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200D}' ) ) ) ]
573+ #[ case( "\u{2028} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2028}' ) ) ) ]
574+ #[ case( "\u{2029} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2029}' ) ) ) ]
575+ #[ case( "\u{202F} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{202F}' ) ) ) ]
576+ #[ case( "\u{205F} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{205F}' ) ) ) ]
577+ #[ case( "\u{2060} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2060}' ) ) ) ]
578+ #[ case( "\u{3000} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{3000}' ) ) ) ]
579+ #[ case( "\u{FEFF} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{FEFF}' ) ) ) ]
580+ #[ case( "\x0C ?" , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
581+ #[ case( "?\x0C " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
582+ #[ case( "?\x0C ?" , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
583+ #[ case( "??\x0C " , Err ( JsonSyntaxError :: MultipleSeparators ( '?' ) ) ) ]
584+ #[ case( "." , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
585+ #[ case( ".?" , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
586+ #[ case( "?." , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
587+ #[ case( "?.?" , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
588+ #[ case( "??." , Err ( JsonSyntaxError :: MultipleSeparators ( '?' ) ) ) ]
589+ #[ case( "☃" , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
590+ #[ case( "☃?" , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
591+ #[ case( "?☃" , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
592+ #[ case( "?☃?" , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
593+ #[ case( "??☃" , Err ( JsonSyntaxError :: MultipleSeparators ( '?' ) ) ) ]
594+ fn test_validate_string_sep (
595+ #[ case] s : & str ,
596+ #[ case] r : Result < CompactString , JsonSyntaxError > ,
597+ ) {
592598 assert_eq ! ( validate_string( s, Some ( '?' ) ) , r) ;
593599 }
594600
@@ -597,50 +603,53 @@ mod tests {
597603 #[ case( " " , Ok ( " " . into( ) ) ) ]
598604 #[ case( " " , Ok ( " " . into( ) ) ) ]
599605 #[ case( " \t \r \n " , Ok ( " \t \r \n " . into( ) ) ) ]
600- #[ case( "?" , Err ( Error :: InvalidCharacter ( '?' ) ) ) ]
601- #[ case( " ?" , Err ( Error :: InvalidCharacter ( '?' ) ) ) ]
602- #[ case( "? " , Err ( Error :: InvalidCharacter ( '?' ) ) ) ]
603- #[ case( " ? " , Err ( Error :: InvalidCharacter ( '?' ) ) ) ]
604- #[ case( "??" , Err ( Error :: InvalidCharacter ( '?' ) ) ) ]
605- #[ case( "\x0C " , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
606- #[ case( "\x0B " , Err ( Error :: InvalidCharacter ( '\x0B' ) ) ) ]
607- #[ case( "\u{A0} " , Err ( Error :: InvalidCharacter ( '\u{A0}' ) ) ) ]
608- #[ case( "\u{85} " , Err ( Error :: InvalidCharacter ( '\u{85}' ) ) ) ]
609- #[ case( "\u{1680} " , Err ( Error :: InvalidCharacter ( '\u{1680}' ) ) ) ]
610- #[ case( "\u{180E} " , Err ( Error :: InvalidCharacter ( '\u{180E}' ) ) ) ]
611- #[ case( "\u{2000} " , Err ( Error :: InvalidCharacter ( '\u{2000}' ) ) ) ]
612- #[ case( "\u{2001} " , Err ( Error :: InvalidCharacter ( '\u{2001}' ) ) ) ]
613- #[ case( "\u{2002} " , Err ( Error :: InvalidCharacter ( '\u{2002}' ) ) ) ]
614- #[ case( "\u{2003} " , Err ( Error :: InvalidCharacter ( '\u{2003}' ) ) ) ]
615- #[ case( "\u{2004} " , Err ( Error :: InvalidCharacter ( '\u{2004}' ) ) ) ]
616- #[ case( "\u{2005} " , Err ( Error :: InvalidCharacter ( '\u{2005}' ) ) ) ]
617- #[ case( "\u{2006} " , Err ( Error :: InvalidCharacter ( '\u{2006}' ) ) ) ]
618- #[ case( "\u{2007} " , Err ( Error :: InvalidCharacter ( '\u{2007}' ) ) ) ]
619- #[ case( "\u{2008} " , Err ( Error :: InvalidCharacter ( '\u{2008}' ) ) ) ]
620- #[ case( "\u{2009} " , Err ( Error :: InvalidCharacter ( '\u{2009}' ) ) ) ]
621- #[ case( "\u{200A} " , Err ( Error :: InvalidCharacter ( '\u{200A}' ) ) ) ]
622- #[ case( "\u{200B} " , Err ( Error :: InvalidCharacter ( '\u{200B}' ) ) ) ]
623- #[ case( "\u{200C} " , Err ( Error :: InvalidCharacter ( '\u{200C}' ) ) ) ]
624- #[ case( "\u{200D} " , Err ( Error :: InvalidCharacter ( '\u{200D}' ) ) ) ]
625- #[ case( "\u{2028} " , Err ( Error :: InvalidCharacter ( '\u{2028}' ) ) ) ]
626- #[ case( "\u{2029} " , Err ( Error :: InvalidCharacter ( '\u{2029}' ) ) ) ]
627- #[ case( "\u{202F} " , Err ( Error :: InvalidCharacter ( '\u{202F}' ) ) ) ]
628- #[ case( "\u{205F} " , Err ( Error :: InvalidCharacter ( '\u{205F}' ) ) ) ]
629- #[ case( "\u{2060} " , Err ( Error :: InvalidCharacter ( '\u{2060}' ) ) ) ]
630- #[ case( "\u{3000} " , Err ( Error :: InvalidCharacter ( '\u{3000}' ) ) ) ]
631- #[ case( "\u{FEFF} " , Err ( Error :: InvalidCharacter ( '\u{FEFF}' ) ) ) ]
632- #[ case( "\x0C " , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
633- #[ case( " \x0C " , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
634- #[ case( " \x0C " , Err ( Error :: InvalidCharacter ( '\x0C' ) ) ) ]
635- #[ case( "." , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
636- #[ case( ". " , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
637- #[ case( " ." , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
638- #[ case( " . " , Err ( Error :: InvalidCharacter ( '.' ) ) ) ]
639- #[ case( "☃" , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
640- #[ case( "☃ " , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
641- #[ case( " ☃" , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
642- #[ case( " ☃ " , Err ( Error :: InvalidCharacter ( '☃' ) ) ) ]
643- fn test_validate_string_no_sep ( #[ case] s : & str , #[ case] r : Result < CompactString , Error > ) {
606+ #[ case( "?" , Err ( JsonSyntaxError :: InvalidCharacter ( '?' ) ) ) ]
607+ #[ case( " ?" , Err ( JsonSyntaxError :: InvalidCharacter ( '?' ) ) ) ]
608+ #[ case( "? " , Err ( JsonSyntaxError :: InvalidCharacter ( '?' ) ) ) ]
609+ #[ case( " ? " , Err ( JsonSyntaxError :: InvalidCharacter ( '?' ) ) ) ]
610+ #[ case( "??" , Err ( JsonSyntaxError :: InvalidCharacter ( '?' ) ) ) ]
611+ #[ case( "\x0C " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
612+ #[ case( "\x0B " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0B' ) ) ) ]
613+ #[ case( "\u{A0} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{A0}' ) ) ) ]
614+ #[ case( "\u{85} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{85}' ) ) ) ]
615+ #[ case( "\u{1680} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{1680}' ) ) ) ]
616+ #[ case( "\u{180E} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{180E}' ) ) ) ]
617+ #[ case( "\u{2000} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2000}' ) ) ) ]
618+ #[ case( "\u{2001} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2001}' ) ) ) ]
619+ #[ case( "\u{2002} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2002}' ) ) ) ]
620+ #[ case( "\u{2003} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2003}' ) ) ) ]
621+ #[ case( "\u{2004} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2004}' ) ) ) ]
622+ #[ case( "\u{2005} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2005}' ) ) ) ]
623+ #[ case( "\u{2006} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2006}' ) ) ) ]
624+ #[ case( "\u{2007} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2007}' ) ) ) ]
625+ #[ case( "\u{2008} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2008}' ) ) ) ]
626+ #[ case( "\u{2009} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2009}' ) ) ) ]
627+ #[ case( "\u{200A} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200A}' ) ) ) ]
628+ #[ case( "\u{200B} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200B}' ) ) ) ]
629+ #[ case( "\u{200C} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200C}' ) ) ) ]
630+ #[ case( "\u{200D} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{200D}' ) ) ) ]
631+ #[ case( "\u{2028} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2028}' ) ) ) ]
632+ #[ case( "\u{2029} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2029}' ) ) ) ]
633+ #[ case( "\u{202F} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{202F}' ) ) ) ]
634+ #[ case( "\u{205F} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{205F}' ) ) ) ]
635+ #[ case( "\u{2060} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{2060}' ) ) ) ]
636+ #[ case( "\u{3000} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{3000}' ) ) ) ]
637+ #[ case( "\u{FEFF} " , Err ( JsonSyntaxError :: InvalidCharacter ( '\u{FEFF}' ) ) ) ]
638+ #[ case( "\x0C " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
639+ #[ case( " \x0C " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
640+ #[ case( " \x0C " , Err ( JsonSyntaxError :: InvalidCharacter ( '\x0C' ) ) ) ]
641+ #[ case( "." , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
642+ #[ case( ". " , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
643+ #[ case( " ." , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
644+ #[ case( " . " , Err ( JsonSyntaxError :: InvalidCharacter ( '.' ) ) ) ]
645+ #[ case( "☃" , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
646+ #[ case( "☃ " , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
647+ #[ case( " ☃" , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
648+ #[ case( " ☃ " , Err ( JsonSyntaxError :: InvalidCharacter ( '☃' ) ) ) ]
649+ fn test_validate_string_no_sep (
650+ #[ case] s : & str ,
651+ #[ case] r : Result < CompactString , JsonSyntaxError > ,
652+ ) {
644653 assert_eq ! ( validate_string( s, None ) , r) ;
645654 }
646655
@@ -1166,19 +1175,19 @@ mod tests {
11661175
11671176 #[ test]
11681177 fn test_display_invalid_character ( ) {
1169- let e = Error :: InvalidCharacter ( 'ö' ) ;
1178+ let e = JsonSyntaxError :: InvalidCharacter ( 'ö' ) ;
11701179 assert_eq ! ( e. to_string( ) , "string contains unexpected character 'ö'" ) ;
11711180 }
11721181
11731182 #[ test]
11741183 fn test_display_missing_separator ( ) {
1175- let e = Error :: MissingSeparator ( '?' ) ;
1184+ let e = JsonSyntaxError :: MissingSeparator ( '?' ) ;
11761185 assert_eq ! ( e. to_string( ) , "no occurrence of '?' found in string" ) ;
11771186 }
11781187
11791188 #[ test]
11801189 fn test_display_multiple_separators ( ) {
1181- let e = Error :: MultipleSeparators ( '?' ) ;
1190+ let e = JsonSyntaxError :: MultipleSeparators ( '?' ) ;
11821191 assert_eq ! ( e. to_string( ) , "multiple occurrences of '?' found in string" ) ;
11831192 }
11841193}
0 commit comments