boa_engine/builtins/temporal/
error.rs1use temporal_rs::error::{ErrorKind, TemporalError};
2
3use crate::{JsError, JsNativeError};
4
5impl From<TemporalError> for JsNativeError {
6 #[cfg_attr(feature = "native-backtrace", track_caller)]
7 fn from(value: TemporalError) -> Self {
8 match value.kind() {
9 ErrorKind::Range | ErrorKind::Syntax => {
10 JsNativeError::range().with_message(value.into_message().to_owned())
11 }
12 ErrorKind::Type => JsNativeError::typ().with_message(value.into_message().to_owned()),
13 ErrorKind::Generic => {
14 JsNativeError::error().with_message(value.into_message().to_owned())
15 }
16 ErrorKind::Assert => JsNativeError::error().with_message("internal engine error"),
17 }
18 }
19}
20
21impl From<TemporalError> for JsError {
22 #[cfg_attr(feature = "native-backtrace", track_caller)]
23 fn from(value: TemporalError) -> Self {
24 let native: JsNativeError = value.into();
25 native.into()
26 }
27}