Struct url::ParseOptions [−][src]
pub struct ParseOptions<'a> { /* fields omitted */ }
Full configuration for the URL parser.
Implementations
impl<'a> ParseOptions<'a>
[src]
impl<'a> ParseOptions<'a>
[src]pub fn base_url(self, new: Option<&'a Url>) -> Self
[src]
Change the base URL
pub fn encoding_override(self, new: EncodingOverride<'a>) -> Self
[src]
Override the character encoding of query strings. This is a legacy concept only relevant for HTML.
pub fn syntax_violation_callback(
self,
new: Option<&'a dyn Fn(SyntaxViolation)>
) -> Self
[src]
self,
new: Option<&'a dyn Fn(SyntaxViolation)>
) -> Self
Call the provided function or closure for a non-fatal SyntaxViolation
when it occurs during parsing. Note that since the provided function is
Fn
, the caller might need to utilize interior mutability, such as with
a RefCell
, to collect the violations.
Example
use std::cell::RefCell; use url::{Url, SyntaxViolation}; let violations = RefCell::new(Vec::new()); let url = Url::options() .syntax_violation_callback(Some(&|v| violations.borrow_mut().push(v))) .parse("https:////example.com")?; assert_eq!(url.as_str(), "https://example.com/"); assert_eq!(violations.into_inner(), vec!(SyntaxViolation::ExpectedDoubleSlash));
pub fn parse(self, input: &str) -> Result<Url, ParseError>
[src]
Parse an URL string with the configuration so far.
Trait Implementations
impl<'a> Clone for ParseOptions<'a>
[src]
impl<'a> Clone for ParseOptions<'a>
[src]