Просмотр исходного кода

Merge pull request #47 from CraZySacX/master

Fix for rust commit 3dcd2157403163789aaf21a9ab3c4d30a7c6494d 'Switch to ...
Simon Sapin 12 лет назад
Родитель
Сommit
c3d32dae4c
4 измененных файлов с 16 добавлено и 4 удалено
  1. 2 2
      src/form_urlencoded.rs
  2. 2 0
      src/host.rs
  3. 2 0
      src/lib.rs
  4. 10 2
      src/parser.rs

+ 2 - 2
src/form_urlencoded.rs

@@ -81,7 +81,7 @@ pub fn parse_bytes(input: &[u8], encoding_override: Option<EncodingRef>,
     fn decode(input: Vec<u8>, encoding_override: EncodingRef) -> String {
         encoding_override.decode(
             percent_decode(input.as_slice()).as_slice(),
-            encoding::DecodeReplace).unwrap()
+            encoding::DecoderTrap::Replace).unwrap()
     }
 
     Some(pairs.into_iter().map(
@@ -115,7 +115,7 @@ pub fn serialize<'a, I: Iterator<(&'a str, &'a str)>>(
         let input = match encoding_override {
             None => input.as_bytes(),  // "Encode" to UTF-8
             Some(encoding) => {
-                keep_alive = encoding.encode(input, encoding::EncodeNcrEscape).unwrap();
+                keep_alive = encoding.encode(input, encoding::EncoderTrap::NcrEscape).unwrap();
                 keep_alive.as_slice()
             }
         };

+ 2 - 0
src/host.rs

@@ -6,6 +6,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+pub use Host::{Domain,Ipv6};
+
 use std::ascii::OwnedAsciiExt;
 use std::cmp;
 use std::fmt::{Formatter, FormatError, Show};

+ 2 - 0
src/lib.rs

@@ -128,6 +128,8 @@ use std::path;
 
 use encoding::EncodingRef;
 
+pub use SchemeData::{RelativeSchemeData,NonRelativeSchemeData};
+pub use SchemeType::{NonRelativeScheme,RelativeScheme,FileLikeRelativeScheme};
 pub use host::{Host, Domain, Ipv6, Ipv6Address};
 pub use parser::{
     ErrorHandler, ParseResult, ParseError,

+ 10 - 2
src/parser.rs

@@ -5,8 +5,16 @@
 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
+pub use ParseError::{
+    EmptyHost,InvalidScheme,InvalidPort,InvalidIpv6Address,InvalidDomainCharacter,
+    InvalidCharacter,InvalidBackslash,InvalidPercentEncoded,InvalidAtSymbolInUser,
+    ExpectedTwoSlashes,ExpectedInitialSlash,NonUrlCodePoint,RelativeUrlWithScheme,
+    RelativeUrlWithoutBase,RelativeUrlWithNonRelativeBase,
+    NonAsciiDomainsNotSupportedYet,CannotSetFileScheme,
+    CannotSetJavascriptScheme,CannotSetNonRelativeScheme
+};
 
-
+pub use self::Context::{SetterContext,UrlParserContext};
 use std::ascii::AsciiExt;
 use std::fmt::{Formatter, FormatError, Show};
 use std::str::CharRange;
@@ -645,7 +653,7 @@ pub fn parse_query<'a>(input: &'a str, context: Context, parser: &UrlParser)
     let encoded;
     let query_bytes = match parser.query_encoding_override {
         Some(encoding) => {
-            encoded = encoding.encode(query.as_slice(), encoding::EncodeReplace).unwrap();
+            encoded = encoding.encode(query.as_slice(), encoding::EncoderTrap::Replace).unwrap();
             encoded.as_slice()
         },
         None => query.as_bytes()  // UTF-8