// GENERATED — DO NOT EDIT

///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.AttrString.html).
pub type AttrString

///|
pub(open) trait IAttrString {
  fn as_attr_string(Self) -> AttrString
}

///|
pub impl IAttrString for AttrString with fn as_attr_string(self) {
  self
}

///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.AttrString.html).
#borrow(self_)
pub extern "c" fn AttrString::get_attr(self_ : AttrString) -> Attribute = "moonbit_pango_attr_string_attr_get"

///|
#borrow(self_)
extern "c" fn __ffi_moonbit_pango_attr_string_value_get(
  self_ : AttrString,
) -> Bytes = "moonbit_pango_attr_string_value_get"

///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.AttrString.html).
pub fn AttrString::get_value(self : AttrString) -> String {
  @encoding/utf8.decode_lossy(__ffi_moonbit_pango_attr_string_value_get(self))
}