// GENERATED — DO NOT EDIT

///|
#borrow(str, variant)
extern "c" fn moonbit_pango_parse_variant(
  str : Bytes,
  variant : Ref[Variant],
  warn : Bool,
) -> Bool = "moonbit_pango_parse_variant"

///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/func.parse_variant.html).
pub fn parse_variant(str : String, warn : Bool) -> Variant? {
  let variant = Ref(Variant::Normal)
  let result = moonbit_pango_parse_variant(
    @encoding/utf8.encode(str),
    variant,
    warn,
  )
  if result {
    Some(variant.val)
  } else {
    None
  }
}