@@ -104,9 +104,6 @@ pub struct LinkValue {
104
104
/// Hint on the media type of the result of dereferencing
105
105
/// the link: `type`.
106
106
media_type : Option < Mime > ,
107
-
108
- /// Link Extension: `link-extension`.
109
- link_extension : Option < String >
110
107
}
111
108
112
109
/// A Media Descriptors Enum based on:
@@ -258,7 +255,6 @@ impl LinkValue {
258
255
title : None ,
259
256
title_star : None ,
260
257
media_type : None ,
261
- link_extension : None ,
262
258
}
263
259
}
264
260
@@ -307,11 +303,6 @@ impl LinkValue {
307
303
self . media_type . as_ref ( )
308
304
}
309
305
310
- /// Get the `LinkValue`'s `link-extension` parameter.
311
- pub fn link_extension ( & self ) -> Option < & str > {
312
- self . link_extension . as_ref ( ) . map ( AsRef :: as_ref)
313
- }
314
-
315
306
/// Add a `RelationType` to the `LinkValue`'s `rel` parameter.
316
307
pub fn push_rel ( mut self , rel : RelationType ) -> LinkValue {
317
308
let mut v = self . rel . take ( ) . unwrap_or ( Vec :: new ( ) ) ;
@@ -383,13 +374,6 @@ impl LinkValue {
383
374
384
375
self
385
376
}
386
-
387
- /// Set `LinkValue`'s `link-extension` parameter.
388
- pub fn set_link_extension < T : Into < String > > ( mut self , link_extension : T ) -> LinkValue {
389
- self . link_extension = Some ( link_extension. into ( ) ) ;
390
-
391
- self
392
- }
393
377
}
394
378
395
379
////////////////////////////////////////////////////////////////////////////////
@@ -464,9 +448,6 @@ impl fmt::Display for LinkValue {
464
448
if let Some ( ref media_type) = self . media_type {
465
449
try!( write ! ( f, "; type=\" {}\" " , media_type) ) ;
466
450
}
467
- if let Some ( ref link_extension) = self . link_extension {
468
- try!( write ! ( f, "; link-extension={}" , link_extension) ) ;
469
- }
470
451
471
452
Ok ( ( ) )
472
453
}
@@ -501,7 +482,6 @@ impl FromStr for Link {
501
482
title : None ,
502
483
title_star : None ,
503
484
media_type : None ,
504
- link_extension : None ,
505
485
}
506
486
} ,
507
487
}
@@ -642,16 +622,6 @@ impl FromStr for Link {
642
622
643
623
} ;
644
624
}
645
- } else if "link-extension" . eq_ignore_ascii_case ( link_param_name) {
646
- // Parse target attribute: `link-extension`.
647
- // https://tools.ietf.org/html/rfc5988#section-5.4
648
- if link_header. link_extension . is_none ( ) {
649
- link_header. link_extension = match link_param_split. next ( ) {
650
- None => return Err ( :: Error :: Header ) ,
651
- Some ( "" ) => return Err ( :: Error :: Header ) ,
652
- Some ( s) => Some ( String :: from ( s. trim ( ) ) ) ,
653
- } ;
654
- }
655
625
} else {
656
626
return Err ( :: Error :: Header ) ;
657
627
}
@@ -986,14 +956,13 @@ mod tests {
986
956
. push_media_desc ( MediaDesc :: Screen )
987
957
. set_title ( "previous chapter" )
988
958
. set_title_star ( "title* unparsed" )
989
- . set_media_type ( Mime ( Text , Plain , vec ! [ ] ) )
990
- . set_link_extension ( "link-extension unparsed" ) ;
959
+ . set_media_type ( Mime ( Text , Plain , vec ! [ ] ) ) ;
991
960
992
961
let link_header = b"<http://example.com/TheBook/chapter2>; \
993
962
rel=\" previous\" ; anchor=\" ../anchor/example/\" ; \
994
963
rev=\" next\" ; hreflang=de; media=\" screen\" ; \
995
964
title=\" previous chapter\" ; title*=title* unparsed; \
996
- type=\" text/plain\" ; link-extension=link-extension unparsed ";
965
+ type=\" text/plain\" ";
997
966
998
967
let expected_link = Link :: new ( vec ! [ link_value] ) ;
999
968
@@ -1046,8 +1015,7 @@ mod tests {
1046
1015
. push_media_desc ( MediaDesc :: Screen )
1047
1016
. set_title ( "previous chapter" )
1048
1017
. set_title_star ( "title* unparsed" )
1049
- . set_media_type ( Mime ( Text , Plain , vec ! [ ] ) )
1050
- . set_link_extension ( "link-extension unparsed" ) ;
1018
+ . set_media_type ( Mime ( Text , Plain , vec ! [ ] ) ) ;
1051
1019
1052
1020
let link = Link :: new ( vec ! [ link_value] ) ;
1053
1021
@@ -1058,7 +1026,7 @@ mod tests {
1058
1026
rel=\" previous\" ; anchor=\" /anchor/example/\" ; \
1059
1027
rev=\" next\" ; hreflang=de; media=\" screen\" ; \
1060
1028
title=\" previous chapter\" ; title*=title* unparsed; \
1061
- type=\" text/plain\" ; link-extension=link-extension unparsed ";
1029
+ type=\" text/plain\" ";
1062
1030
1063
1031
assert_eq ! ( link_header, expected_link_header) ;
1064
1032
}
0 commit comments