summaryrefslogtreecommitdiff
path: root/ext/url/urlpattern.rs
diff options
context:
space:
mode:
Diffstat (limited to 'ext/url/urlpattern.rs')
-rw-r--r--ext/url/urlpattern.rs28
1 files changed, 14 insertions, 14 deletions
diff --git a/ext/url/urlpattern.rs b/ext/url/urlpattern.rs
index b6d9a1382..7d4e8ee71 100644
--- a/ext/url/urlpattern.rs
+++ b/ext/url/urlpattern.rs
@@ -1,7 +1,5 @@
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
-use deno_core::error::type_error;
-use deno_core::error::AnyError;
use deno_core::op2;
use urlpattern::quirks;
@@ -9,21 +7,23 @@ use urlpattern::quirks::MatchInput;
use urlpattern::quirks::StringOrInit;
use urlpattern::quirks::UrlPattern;
+#[derive(Debug, thiserror::Error)]
+#[error(transparent)]
+pub struct UrlPatternError(urlpattern::Error);
+
#[op2]
#[serde]
pub fn op_urlpattern_parse(
#[serde] input: StringOrInit,
#[string] base_url: Option<String>,
#[serde] options: urlpattern::UrlPatternOptions,
-) -> Result<UrlPattern, AnyError> {
- let init = urlpattern::quirks::process_construct_pattern_input(
- input,
- base_url.as_deref(),
- )
- .map_err(|e| type_error(e.to_string()))?;
+) -> Result<UrlPattern, UrlPatternError> {
+ let init =
+ quirks::process_construct_pattern_input(input, base_url.as_deref())
+ .map_err(UrlPatternError)?;
- let pattern = urlpattern::quirks::parse_pattern(init, options)
- .map_err(|e| type_error(e.to_string()))?;
+ let pattern =
+ quirks::parse_pattern(init, options).map_err(UrlPatternError)?;
Ok(pattern)
}
@@ -33,14 +33,14 @@ pub fn op_urlpattern_parse(
pub fn op_urlpattern_process_match_input(
#[serde] input: StringOrInit,
#[string] base_url: Option<String>,
-) -> Result<Option<(MatchInput, quirks::Inputs)>, AnyError> {
- let res = urlpattern::quirks::process_match_input(input, base_url.as_deref())
- .map_err(|e| type_error(e.to_string()))?;
+) -> Result<Option<(MatchInput, quirks::Inputs)>, UrlPatternError> {
+ let res = quirks::process_match_input(input, base_url.as_deref())
+ .map_err(UrlPatternError)?;
let (input, inputs) = match res {
Some((input, inputs)) => (input, inputs),
None => return Ok(None),
};
- Ok(urlpattern::quirks::parse_match_input(input).map(|input| (input, inputs)))
+ Ok(quirks::parse_match_input(input).map(|input| (input, inputs)))
}