// Generated from WebIDL - DO NOT EDIT
// Source: @webref/idl/url
///|
/// URL interface
pub type URL
///|
pub extern "js" fn URL::to_js_value(self : URL) -> JsValue =
#| (self) => self
///|
/// Cast JsValue to URL (unchecked)
pub extern "js" fn URL::from_js_value(v : JsValue) -> URL =
#| (v) => v
///|
/// Safely cast JsValue to URL (checked with instanceof)
pub extern "js" fn URL::from_js_value_opt(v : JsValue) -> URL? =
#| (v) => (v instanceof URL) ? { $tag: 1, _0: v } : { $tag: 0 }
///|
/// Safely cast JsValue to URL (checked with instanceof)
pub extern "js" fn JsValue::as_url(self : JsValue) -> URL? =
#| (self) => (self instanceof URL) ? { $tag: 1, _0: self } : { $tag: 0 }
///|
/// Cast JsValue to URL (unchecked)
pub extern "js" fn JsValue::to_url(self : JsValue) -> URL =
#| (self) => self
///|
/// Error type for throwing methods
pub(all) enum URLConstructorError {
TypeError(JsError)
OtherError(JsError)
} derive(Show)
///|
pub extern "js" fn URL::new(url : String) -> Result[URL, URLConstructorError] =
#| (url) => (() => { try { return { $tag: 1, _0: new URL(url) }; } catch(e) { return { $tag: 0, _0: (() => { const n = (e && e.name) || ''; if (n === 'TypeError') return { $tag: 0, _0: e }; return { $tag: 1, _0: e }; })() }; } })()
///|
pub extern "js" fn URL::new_with_base(
url : String,
base : String,
) -> Result[URL, URLConstructorError] =
#| (url, base) => (() => { try { return { $tag: 1, _0: new URL(url, base) }; } catch(e) { return { $tag: 0, _0: (() => { const n = (e && e.name) || ''; if (n === 'TypeError') return { $tag: 0, _0: e }; return { $tag: 1, _0: e }; })() }; } })()
///|
pub extern "js" fn URL::parse(url : String) -> URL? =
#| (url) => (() => { const v = URL.parse(url); return v == null ? { $tag: 0 } : { $tag: 1, _0: v }; })()
///|
pub extern "js" fn URL::parse_with_base(url : String, base : String) -> URL? =
#| (url, base) => (() => { const v = URL.parse(url, base); return v == null ? { $tag: 0 } : { $tag: 1, _0: v }; })()
///|
pub extern "js" fn URL::can_parse(url : String) -> Bool =
#| (url) => URL.canParse(url)
///|
pub extern "js" fn URL::can_parse_with_base(
url : String,
base : String,
) -> Bool =
#| (url, base) => URL.canParse(url, base)
///|
pub extern "js" fn URL::get_href(self : URL) -> String =
#| (self) => self.href
///|
pub extern "js" fn URL::set_href(self : URL, value : String) -> Unit =
#| (self, value) => { self.href = value }
///|
pub extern "js" fn URL::get_origin(self : URL) -> String =
#| (self) => self.origin
///|
pub extern "js" fn URL::get_protocol(self : URL) -> String =
#| (self) => self.protocol
///|
pub extern "js" fn URL::set_protocol(self : URL, value : String) -> Unit =
#| (self, value) => { self.protocol = value }
///|
pub extern "js" fn URL::get_username(self : URL) -> String =
#| (self) => self.username
///|
pub extern "js" fn URL::set_username(self : URL, value : String) -> Unit =
#| (self, value) => { self.username = value }
///|
pub extern "js" fn URL::get_password(self : URL) -> String =
#| (self) => self.password
///|
pub extern "js" fn URL::set_password(self : URL, value : String) -> Unit =
#| (self, value) => { self.password = value }
///|
pub extern "js" fn URL::get_host(self : URL) -> String =
#| (self) => self.host
///|
pub extern "js" fn URL::set_host(self : URL, value : String) -> Unit =
#| (self, value) => { self.host = value }
///|
pub extern "js" fn URL::get_hostname(self : URL) -> String =
#| (self) => self.hostname
///|
pub extern "js" fn URL::set_hostname(self : URL, value : String) -> Unit =
#| (self, value) => { self.hostname = value }
///|
pub extern "js" fn URL::get_port(self : URL) -> String =
#| (self) => self.port
///|
pub extern "js" fn URL::set_port(self : URL, value : String) -> Unit =
#| (self, value) => { self.port = value }
///|
pub extern "js" fn URL::get_pathname(self : URL) -> String =
#| (self) => self.pathname
///|
pub extern "js" fn URL::set_pathname(self : URL, value : String) -> Unit =
#| (self, value) => { self.pathname = value }
///|
pub extern "js" fn URL::get_search(self : URL) -> String =
#| (self) => self.search
///|
pub extern "js" fn URL::set_search(self : URL, value : String) -> Unit =
#| (self, value) => { self.search = value }
///|
pub extern "js" fn URL::get_search_params(self : URL) -> URLSearchParams =
#| (self) => self.searchParams
///|
pub extern "js" fn URL::get_hash(self : URL) -> String =
#| (self) => self.hash
///|
pub extern "js" fn URL::set_hash(self : URL, value : String) -> Unit =
#| (self, value) => { self.hash = value }
///|
pub extern "js" fn URL::to_json(self : URL) -> String =
#| (self) => self.toJSON()
///|
pub extern "js" fn URL::create_object_url(obj : BlobOrMediaSource) -> String =
#| (obj) => URL.createObjectURL(obj)
///|
pub extern "js" fn URL::revoke_object_url(url : String) -> Unit =
#| (url) => URL.revokeObjectURL(url)
///|
/// URLSearchParams interface
pub type URLSearchParams
///|
pub extern "js" fn URLSearchParams::to_js_value(
self : URLSearchParams,
) -> JsValue =
#| (self) => self
///|
/// Cast JsValue to URLSearchParams (unchecked)
pub extern "js" fn URLSearchParams::from_js_value(
v : JsValue,
) -> URLSearchParams =
#| (v) => v
///|
/// Safely cast JsValue to URLSearchParams (checked with instanceof)
pub extern "js" fn URLSearchParams::from_js_value_opt(
v : JsValue,
) -> URLSearchParams? =
#| (v) => (v instanceof URLSearchParams) ? { $tag: 1, _0: v } : { $tag: 0 }
///|
/// Safely cast JsValue to URLSearchParams (checked with instanceof)
pub extern "js" fn JsValue::as_url_search_params(
self : JsValue,
) -> URLSearchParams? =
#| (self) => (self instanceof URLSearchParams) ? { $tag: 1, _0: self } : { $tag: 0 }
///|
/// Cast JsValue to URLSearchParams (unchecked)
pub extern "js" fn JsValue::to_url_search_params(
self : JsValue,
) -> URLSearchParams =
#| (self) => self
///|
pub extern "js" fn URLSearchParams::new() -> URLSearchParams =
#| () => new URLSearchParams()
///|
pub extern "js" fn URLSearchParams::new_with_init(
init_ : ArrayOfArrayOfStringOrAnyOrString,
) -> URLSearchParams =
#| (init_) => new URLSearchParams(init_)
///|
pub extern "js" fn URLSearchParams::get_size(self : URLSearchParams) -> Int =
#| (self) => self.size
///|
pub extern "js" fn URLSearchParams::append(
self : URLSearchParams,
name : String,
value : String,
) -> Unit =
#| (self, name, value) => self.append(name, value)
///|
pub extern "js" fn URLSearchParams::delete(
self : URLSearchParams,
name : String,
) -> Unit =
#| (self, name) => self.delete(name)
///|
pub extern "js" fn URLSearchParams::delete_with_value(
self : URLSearchParams,
name : String,
value : String,
) -> Unit =
#| (self, name, value) => self.delete(name, value)
///|
pub extern "js" fn URLSearchParams::get(
self : URLSearchParams,
name : String,
) -> String? =
#| (self, name) => (self.get(name)) ?? undefined
///|
pub extern "js" fn URLSearchParams::get_all(
self : URLSearchParams,
name : String,
) -> Array[String] =
#| (self, name) => self.getAll(name)
///|
pub extern "js" fn URLSearchParams::has(
self : URLSearchParams,
name : String,
) -> Bool =
#| (self, name) => self.has(name)
///|
pub extern "js" fn URLSearchParams::has_with_value(
self : URLSearchParams,
name : String,
value : String,
) -> Bool =
#| (self, name, value) => self.has(name, value)
///|
pub extern "js" fn URLSearchParams::set(
self : URLSearchParams,
name : String,
value : String,
) -> Unit =
#| (self, name, value) => self.set(name, value)
///|
pub extern "js" fn URLSearchParams::sort(self : URLSearchParams) -> Unit =
#| (self) => self.sort()
///|
pub extern "js" fn URLSearchParams::keys(self : URLSearchParams) -> JsValue =
#| (self) => self.keys()
///|
pub extern "js" fn URLSearchParams::values(self : URLSearchParams) -> JsValue =
#| (self) => self.values()
///|
pub extern "js" fn URLSearchParams::entries(self : URLSearchParams) -> JsValue =
#| (self) => self.entries()
///|
pub extern "js" fn URLSearchParams::for_each(
self : URLSearchParams,
callback : JsValue,
) -> Unit =
#| (self, callback) => { self.forEach(callback) }