// GENERATED — DO NOT EDIT
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.Attribute.html).
pub type Attribute
///|
pub(open) trait IAttribute {
fn as_attribute(Self) -> Attribute
fn as_color(Self) -> AttrColor? = _
fn as_float(Self) -> AttrFloat? = _
fn as_font_desc(Self) -> AttrFontDesc? = _
fn as_font_features(Self) -> AttrFontFeatures? = _
fn as_int(Self) -> AttrInt? = _
fn as_language(Self) -> AttrLanguage? = _
fn as_shape(Self) -> AttrShape? = _
fn as_size(Self) -> AttrSize? = _
fn as_string(Self) -> AttrString? = _
fn equal(Self, Attribute) -> Bool = _
}
///|
pub impl IAttribute for Attribute with fn as_attribute(self) {
self
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_color(
self_ : Attribute,
) -> @glib.Nullable[AttrColor] = "moonbit_pango_attribute_as_color"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_color.html).
pub fn Attribute::as_color(self : Attribute) -> AttrColor? {
let raw_result = moonbit_pango_attribute_as_color(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_float(
self_ : Attribute,
) -> @glib.Nullable[AttrFloat] = "moonbit_pango_attribute_as_float"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_float.html).
pub fn Attribute::as_float(self : Attribute) -> AttrFloat? {
let raw_result = moonbit_pango_attribute_as_float(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_font_desc(
self_ : Attribute,
) -> @glib.Nullable[AttrFontDesc] = "moonbit_pango_attribute_as_font_desc"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_font_desc.html).
pub fn Attribute::as_font_desc(self : Attribute) -> AttrFontDesc? {
let raw_result = moonbit_pango_attribute_as_font_desc(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_font_features(
self_ : Attribute,
) -> @glib.Nullable[AttrFontFeatures] = "moonbit_pango_attribute_as_font_features"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_font_features.html).
pub fn Attribute::as_font_features(self : Attribute) -> AttrFontFeatures? {
let raw_result = moonbit_pango_attribute_as_font_features(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_int(
self_ : Attribute,
) -> @glib.Nullable[AttrInt] = "moonbit_pango_attribute_as_int"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_int.html).
pub fn Attribute::as_int(self : Attribute) -> AttrInt? {
let raw_result = moonbit_pango_attribute_as_int(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_language(
self_ : Attribute,
) -> @glib.Nullable[AttrLanguage] = "moonbit_pango_attribute_as_language"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_language.html).
pub fn Attribute::as_language(self : Attribute) -> AttrLanguage? {
let raw_result = moonbit_pango_attribute_as_language(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_shape(
self_ : Attribute,
) -> @glib.Nullable[AttrShape] = "moonbit_pango_attribute_as_shape"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_shape.html).
pub fn Attribute::as_shape(self : Attribute) -> AttrShape? {
let raw_result = moonbit_pango_attribute_as_shape(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_size(
self_ : Attribute,
) -> @glib.Nullable[AttrSize] = "moonbit_pango_attribute_as_size"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_size.html).
pub fn Attribute::as_size(self : Attribute) -> AttrSize? {
let raw_result = moonbit_pango_attribute_as_size(self)
raw_result.to_option()
}
///|
#borrow(self_)
extern "c" fn moonbit_pango_attribute_as_string(
self_ : Attribute,
) -> @glib.Nullable[AttrString] = "moonbit_pango_attribute_as_string"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.as_string.html).
pub fn Attribute::as_string(self : Attribute) -> AttrString? {
let raw_result = moonbit_pango_attribute_as_string(self)
raw_result.to_option()
}
///|
#borrow(self_, attr2)
extern "c" fn moonbit_pango_attribute_equal(
self_ : Attribute,
attr2 : Attribute,
) -> Bool = "moonbit_pango_attribute_equal"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/method.Attribute.equal.html).
pub fn Attribute::equal(self : Attribute, attr2 : Attribute) -> Bool {
moonbit_pango_attribute_equal(self, attr2)
}
///|
impl IAttribute with fn as_color(self) -> AttrColor? {
self.as_attribute().as_color()
}
///|
impl IAttribute with fn as_float(self) -> AttrFloat? {
self.as_attribute().as_float()
}
///|
impl IAttribute with fn as_font_desc(self) -> AttrFontDesc? {
self.as_attribute().as_font_desc()
}
///|
impl IAttribute with fn as_font_features(self) -> AttrFontFeatures? {
self.as_attribute().as_font_features()
}
///|
impl IAttribute with fn as_int(self) -> AttrInt? {
self.as_attribute().as_int()
}
///|
impl IAttribute with fn as_language(self) -> AttrLanguage? {
self.as_attribute().as_language()
}
///|
impl IAttribute with fn as_shape(self) -> AttrShape? {
self.as_attribute().as_shape()
}
///|
impl IAttribute with fn as_size(self) -> AttrSize? {
self.as_attribute().as_size()
}
///|
impl IAttribute with fn as_string(self) -> AttrString? {
self.as_attribute().as_string()
}
///|
impl IAttribute with fn equal(self, attr2) -> Bool {
self.as_attribute().equal(attr2)
}
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.Attribute.html).
#borrow(self_)
pub extern "c" fn Attribute::get_start_index(self_ : Attribute) -> UInt = "moonbit_pango_attribute_start_index_get"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.Attribute.html).
#borrow(self_)
pub extern "c" fn Attribute::set_start_index(self_ : Attribute, value : UInt) = "moonbit_pango_attribute_start_index_set"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.Attribute.html).
#borrow(self_)
pub extern "c" fn Attribute::get_end_index(self_ : Attribute) -> UInt = "moonbit_pango_attribute_end_index_get"
///|
/// [Upstream documentation](https://gnome.pages.gitlab.gnome.org/pango/Pango/struct.Attribute.html).
#borrow(self_)
pub extern "c" fn Attribute::set_end_index(self_ : Attribute, value : UInt) = "moonbit_pango_attribute_end_index_set"