From 1b790a8b4d3fa2a78739b92f4540b61d4f868bae Mon Sep 17 00:00:00 2001 From: Stiopa Koltsov Date: Wed, 2 Oct 2024 15:27:20 -0700 Subject: [PATCH] NoneOr::from_option Reviewed By: JakobDegen Differential Revision: D63774249 fbshipit-source-id: d9a5a3c7571e31863193f88a92379c7487b99c13 --- starlark/src/values/types/none/none_or.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/starlark/src/values/types/none/none_or.rs b/starlark/src/values/types/none/none_or.rs index fc81ae4d..0d7e2b8c 100644 --- a/starlark/src/values/types/none/none_or.rs +++ b/starlark/src/values/types/none/none_or.rs @@ -51,6 +51,15 @@ impl NoneOr { } } + /// Convert a Rust [`Option`] to a [`NoneOr`]. + #[inline] + pub fn from_option(option: Option) -> Self { + match option { + None => NoneOr::None, + Some(x) => NoneOr::Other(x), + } + } + /// Is the value a [`NoneOr::None`]. pub fn is_none(&self) -> bool { matches!(self, NoneOr::None)