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