// Do not edit. This file is generated.
// MoonBit type: NavigationType
// Specifications: html.idl
///|
pub(all) enum NavigationType {
Push
Replace
Reload
Traverse
} derive(Eq)
///|
pub impl Show for NavigationType with output(
self : NavigationType,
logger : &Logger,
) -> Unit {
match self {
NavigationType::Push => logger.write_string("Push")
NavigationType::Replace => logger.write_string("Replace")
NavigationType::Reload => logger.write_string("Reload")
NavigationType::Traverse => logger.write_string("Traverse")
}
}
///|
pub impl TJsValue for NavigationType with to_js(self : NavigationType) -> JsValue {
match self {
NavigationType::Push => TJsValue::to_js("push")
NavigationType::Replace => TJsValue::to_js("replace")
NavigationType::Reload => TJsValue::to_js("reload")
NavigationType::Traverse => TJsValue::to_js("traverse")
}
}
///|
pub fn NavigationType::from(value : String) -> NavigationType? {
match value {
"push" => Some(NavigationType::Push)
"replace" => Some(NavigationType::Replace)
"reload" => Some(NavigationType::Reload)
"traverse" => Some(NavigationType::Traverse)
_ => None
}
}
///|
fn NavigationType::from_unchecked(value : String) -> NavigationType {
match value {
"push" => NavigationType::Push
"replace" => NavigationType::Replace
"reload" => NavigationType::Reload
"traverse" => NavigationType::Traverse
_ => NavigationType::Push
}
}
///|
pub fn NavigationType::value(self : NavigationType) -> String {
match self {
NavigationType::Push => "push"
NavigationType::Replace => "replace"
NavigationType::Reload => "reload"
NavigationType::Traverse => "traverse"
}
}
///|
pub impl FromJsAny for NavigationType with from_js_any(value : JsAny) -> NavigationType {
NavigationType::from_unchecked(value)
}