Current section
Files
Jump to
Current section
Files
src/utils/option.ffi.mjs
// src/utils/option.ffi.ts
import {
Option$isNone,
Option$None,
Option$Some,
Option$Some$0
} from "../../gleam_stdlib/gleam/option.mjs";
function toOption(value) {
return value === null || value === void 0 ? Option$None() : Option$Some(value);
}
function optionToValue(option) {
return Option$isNone(option) ? void 0 : Option$Some$0(option);
}
function mapOption(value, transform) {
return value === null || value === void 0 ? Option$None() : Option$Some(transform(value));
}
function setIfSome(target, key, option) {
if (Option$isNone(option)) return;
target[key] = Option$Some$0(option);
}
function mapIfSome(target, key, option, transform) {
if (Option$isNone(option)) return;
target[key] = transform(Option$Some$0(option));
}
export {
mapIfSome,
mapOption,
optionToValue,
setIfSome,
toOption
};