package Glib;
our @ISA = qw();
sub CHECK_VERSION { my ($_class, $_required_major, $_required_minor, $_required_micro) = @_ }
sub GET_VERSION_INFO { my ($_class) = @_ }
sub MAJOR_VERSION() {}
sub MICRO_VERSION() {}
sub MINOR_VERSION() {}
sub critical { my ($_class, $_domain, $_message) = @_ }
sub dl_load_flags() {}
sub error { my ($_class, $_domain, $_message) = @_ }
sub filename_display_basename { my ($_filename) = @_ }
sub filename_display_name { my ($_filename) = @_ }
sub filename_from_unicode { my ($_class_or_filename, $_o_filename) = @_ }
sub filename_from_uri { my (@_more_paras) = @_ }
sub filename_to_unicode { my ($_class_or_filename, $_o_filename) = @_ }
sub filename_to_uri { my (@_more_paras) = @_ }
sub get_application_name() {}
sub get_home_dir() {}
sub get_language_names() {}
sub get_real_name() {}
sub get_system_config_dirs() {}
sub get_system_data_dirs() {}
sub get_tmp_dir() {}
sub get_user_cache_dir() {}
sub get_user_config_dir() {}
sub get_user_data_dir() {}
sub get_user_name() {}
sub get_user_special_dir { my ($_directory) = @_ }
sub install_exception_handler { my ($_class, $_func, $_o_data) = @_ }
sub log { my ($_class, $_log_domain, $_log_level, $_message) = @_ }
sub main_depth() {}
sub major_version() {}
sub message { my ($_class, $_domain, $_message) = @_ }
sub micro_version() {}
sub minor_version() {}
sub remove_exception_handler { my ($_class, $_tag) = @_ }
sub set_application_name { my ($_application_name) = @_ }
sub strerror { my ($_err) = @_ }
sub strsignal { my ($_signum) = @_ }
sub warning { my ($_class, $_domain, $_message) = @_ }

package Glib::BookmarkFile;
our @ISA = qw();
sub DESTROY { my ($_bookmark_file) = @_ }
sub add_application { my ($_bookmark_file, $_uri, $_name, $_exec) = @_ }
sub add_group { my ($_bookmark_file, $_uri, $_group) = @_ }
sub get_added { my ($_bookmark_file, $_uri) = @_ }
sub get_app_info { my ($_bookmark_file, $_uri, $_name) = @_ }
sub get_applications { my ($_bookmark_file, $_uri) = @_ }
sub get_description { my ($_bookmark_file, $_uri) = @_ }
sub get_groups { my ($_bookmark_file, $_uri) = @_ }
sub get_icon { my ($_bookmark_file, $_uri) = @_ }
sub get_is_private { my ($_bookmark_file, $_uri) = @_ }
sub get_mime_type { my ($_bookmark_file, $_uri) = @_ }
sub get_modified { my ($_bookmark_file, $_uri) = @_ }
sub get_size { my ($_bookmark_file) = @_ }
sub get_title { my ($_bookmark_file, $_uri) = @_ }
sub get_uris { my ($_bookmark_file) = @_ }
sub get_visited { my ($_bookmark_file, $_uri) = @_ }
sub has_application { my ($_bookmark_file, $_uri, $_name) = @_ }
sub has_group { my ($_bookmark_file, $_uri, $_group) = @_ }
sub has_item { my ($_bookmark_file, $_uri) = @_ }
sub load_from_data { my ($_bookmark_file, $_buf) = @_ }
sub load_from_data_dirs { my ($_bookmark_file, $_file) = @_ }
sub load_from_file { my ($_bookmark_file, $_file) = @_ }
sub move_item { my ($_bookmark_file, $_old_uri, $_new_uri) = @_ }
sub new { my ($_class) = @_ }
sub remove_application { my ($_bookmark_file, $_uri, $_name) = @_ }
sub remove_group { my ($_bookmark_file, $_uri, $_group) = @_ }
sub remove_item { my ($_bookmark_file, $_uri) = @_ }
sub set_added { my ($_bookmark_file, $_uri, $_value) = @_ }
sub set_app_info { my ($_bookmark_file, $_uri, $_name, $_exec, $_count, $_stamp) = @_ }
sub set_description { my ($_bookmark_file, $_uri, $_description) = @_ }
sub set_groups { my ($_bookmark_file, $_uri, @_more_paras) = @_ }
sub set_icon { my ($_bookmark_file, $_uri, $_href, $_mime_type) = @_ }
sub set_is_private { my ($_bookmark_file, $_uri, $_is_private) = @_ }
sub set_mime_type { my ($_bookmark_file, $_uri, $_mime_type) = @_ }
sub set_modified { my ($_bookmark_file, $_uri, $_value) = @_ }
sub set_title { my ($_bookmark_file, $_uri, $_title) = @_ }
sub set_visited { my ($_bookmark_file, $_uri, $_value) = @_ }
sub to_data { my ($_bookmark_file) = @_ }
sub to_file { my ($_bookmark_file, $_file) = @_ }

package Glib::Boxed;
our @ISA = qw();
sub DESTROY { my ($_sv) = @_ }
sub copy { my ($_sv) = @_ }

package Glib::Child;
our @ISA = qw();
sub watch_add { my ($_class, $_pid, $_callback, $_o_data, $_o_priority) = @_ }

package Glib::CodeGen;
our @ISA = qw();
sub add_header() {}
sub add_register() {}
sub add_type_handler { my ($_undef, $_root_type, $_o_handler) = @_ }
sub add_typemap { my ($_type, $_typemap, $_input, $_o_output) = @_ }
sub gen_boxed_stuff { my ($_typemacro, $_classname, $_undef, $_o_package) = @_ }
sub gen_enum_stuff { my ($_typemacro, $_classname, $_undef, $_o_package) = @_ }
sub gen_error_domain_stuff { my ($_domain, $_enum, $_undef, $_o_package) = @_ }
sub gen_flags_stuff { my ($_typemacro, $_classname, $_undef, $_o_package) = @_ }
sub gen_object_stuff { my ($_typemacro, $_classname, $_root, $_o_package) = @_ }
sub parse_maps() {}
sub write_boot() {}

package Glib::Error;
our @ISA = qw();
sub code { my ($_error) = @_ }
sub domain { my ($_error) = @_ }
sub location { my ($_error) = @_ }
sub matches { my ($_error, $_domain, $_code) = @_ }
sub message { my ($_error) = @_ }
sub new { my ($_class, $_code, $_message) = @_ }
sub register { my ($_package, $_enum_package) = @_ }
sub throw { my ($_class, $_code, $_message) = @_ }
sub value { my ($_error) = @_ }

package Glib::Flags;
our @ISA = qw();
sub all { my ($_a, $_b, $_swap) = @_ }
sub as_arrayref { my ($_f, @_more_paras) = @_ }
sub bool { my ($_f, @_more_paras) = @_ }
sub Glib::Flags::eq { my ($_a, $_b, $_swap) = @_ }
sub Glib::Flags::ge { my ($_a, $_b, $_swap) = @_ }
sub intersect { my ($_a, $_b, $_swap) = @_ }
sub Glib::Flags::ne { my ($_a, $_b, $_swap) = @_ }
sub new { my ($_class, $_a) = @_ }
sub Glib::Flags::sub { my ($_a, $_b, $_swap) = @_ }
sub union { my ($_a, $_b, $_swap) = @_ }
sub Glib::Flags::xor { my ($_a, $_b, $_swap) = @_ }

package Glib::GenPod;
our @ISA = qw();
sub _pod_escape { my ($_o_str) = @_ }
sub _podify_pspecs { my ($_package, @_more_paras) = @_ }
sub _pspec_formatted_default { my ($_o_pspec) = @_ }
sub add_types { my (@_more_paras) = @_ }
sub compile_signature() {}
sub convert_arg_type() {}
sub convert_return_type_to_name() {}
sub convert_type() {}
sub fixup_arg_name() {}
sub fixup_default() {}
sub get_copyright() {}
sub mkdir_p() {}
sub podify_ancestors() {}
sub podify_child_properties() {}
sub podify_deprecated_by { my (@_more_paras) = @_ }
sub podify_enums_and_flags() {}
sub podify_interfaces() {}
sub podify_methods() {}
sub podify_pods() {}
sub podify_properties() {}
sub podify_see_alsos { my (@_more_paras) = @_ }
sub podify_signals() {}
sub podify_style_properties() {}
sub podify_values() {}
sub preprocess_pod() {}
sub set_authors() {}
sub set_copyright() {}
sub set_main_mod() {}
sub set_year() {}
sub xsdoc2pod() {}
sub xsub_to_pod() {}

package Glib::IO;
our @ISA = qw();
sub add_watch { my ($_class, $_fd, $_condition, $_callback, $_o_data, $_o_priority) = @_ }

package Glib::Idle;
our @ISA = qw();
sub add { my ($_class, $_callback, $_o_data, $_o_priority) = @_ }

package Glib::KeyFile;
our @ISA = qw();
sub DESTROY { my ($_key_file) = @_ }
sub get_boolean { my ($_key_file, $_group_name, $_key) = @_ }
sub get_boolean_list { my ($_key_file, $_group_name, $_key) = @_ }
sub get_comment { my ($_key_file, $_o_group_name, $_o_key) = @_ }
sub get_double { my ($_key_file, $_group_name, $_key) = @_ }
sub get_double_list { my ($_key_file, $_group_name, $_key) = @_ }
sub get_groups { my ($_key_file) = @_ }
sub get_integer { my ($_key_file, $_group_name, $_key) = @_ }
sub get_integer_list { my ($_key_file, $_group_name, $_key) = @_ }
sub get_keys { my ($_key_file, $_group_name) = @_ }
sub get_locale_string { my ($_key_file, $_group_name, $_key, $_o_locale) = @_ }
sub get_locale_string_list { my ($_key_file, $_group_name, $_key, $_locale) = @_ }
sub get_start_group { my ($_key_file) = @_ }
sub get_string { my ($_key_file, $_group_name, $_key) = @_ }
sub get_string_list { my ($_key_file, $_group_name, $_key) = @_ }
sub get_value { my ($_key_file, $_group_name, $_key) = @_ }
sub has_group { my ($_key_file, $_group_name) = @_ }
sub has_key { my ($_key_file, $_group_name, $_key) = @_ }
sub load_from_data { my ($_key_file, $_buf, $_flags) = @_ }
sub load_from_data_dirs { my ($_key_file, $_file, $_flags) = @_ }
sub load_from_dirs { my ($_key_file, $_file, $_flags, @_more_paras) = @_ }
sub load_from_file { my ($_key_file, $_file, $_flags) = @_ }
sub new { my ($_class) = @_ }
sub remove_comment { my ($_key_file, $_o_group_name, $_o_key) = @_ }
sub remove_group { my ($_key_file, $_group_name) = @_ }
sub remove_key { my ($_key_file, $_group_name, $_key) = @_ }
sub set_boolean { my ($_key_file, $_group_name, $_key, $_value) = @_ }
sub set_boolean_list { my ($_key_file, $_group_name, $_key, @_more_paras) = @_ }
sub set_comment { my ($_key_file, $_group_name, $_key, $_comment) = @_ }
sub set_double { my ($_key_file, $_group_name, $_key, $_value) = @_ }
sub set_double_list { my ($_key_file, $_group_name, $_key, @_more_paras) = @_ }
sub set_integer { my ($_key_file, $_group_name, $_key, $_value) = @_ }
sub set_integer_list { my ($_key_file, $_group_name, $_key, @_more_paras) = @_ }
sub set_list_separator { my ($_key_file, $_separator) = @_ }
sub set_locale_string { my ($_key_file, $_group_name, $_key, $_locale, $_string) = @_ }
sub set_locale_string_list { my ($_key_file, $_group_name, $_key, $_locale, @_more_paras) = @_ }
sub set_string { my ($_key_file, $_group_name, $_key, $_value) = @_ }
sub set_string_list { my ($_key_file, $_group_name, $_key, @_more_paras) = @_ }
sub set_value { my ($_key_file, $_group_name, $_key, $_value) = @_ }
sub to_data { my ($_key_file) = @_ }

package Glib::Log;
our @ISA = qw();
sub default_handler { my ($_log_domain, $_log_level, $_message, @_more_paras) = @_ }
sub remove_handler { my ($_class, $_log_domain, $_handler_id) = @_ }
sub set_always_fatal { my ($_class, $_fatal_mask) = @_ }
sub set_default_handler { my ($_class, $_log_func, $_o_user_data) = @_ }
sub set_fatal_mask { my ($_class, $_log_domain, $_fatal_mask) = @_ }
sub set_handler { my ($_class, $_log_domain, $_log_levels, $_log_func, $_o_user_data) = @_ }

package Glib::MainContext;
our @ISA = qw();
sub DESTROY { my ($_maincontext) = @_ }
sub default { my ($_class) = @_ }
sub is_owner { my ($_context) = @_ }
sub iteration { my ($_context, $_may_block) = @_ }
sub new { my ($_class) = @_ }
sub pending { my ($_context) = @_ }

package Glib::MainLoop;
our @ISA = qw();
sub DESTROY { my ($_mainloop) = @_ }
sub get_context { my ($_loop) = @_ }
sub is_running { my ($_loop) = @_ }
sub new { my ($_class, $_o_context, $_o_is_running) = @_ }
sub quit { my ($_loop) = @_ }
sub run { my ($_loop) = @_ }

package Glib::MakeHelper;
our @ISA = qw();
sub do_pod_files() {}
sub get_configure_requires_yaml { my (@_more_paras) = @_ }
sub postamble_clean() {}
sub postamble_docs { my ($_class, @_more_paras) = @_ }
sub postamble_docs_full { my (@_more_paras) = @_ }
sub postamble_precompiled_headers { my (@_more_paras) = @_ }
sub postamble_rpms() {}
sub read_source_list_file { my ($_class, $_o_filename) = @_ }
sub select_files_by_version { my ($_class, $_stem, $_major, $_o_minor) = @_ }

package Glib::Markup;
our @ISA = qw();
sub escape_text { my ($_text) = @_ }

package Glib::Object;
our @ISA = qw();
sub CLONE { my ($_class) = @_ }
sub DESTROY { my ($_sv) = @_ }
sub find_property { my ($_object_or_class_name, @_more_paras) = @_ }
sub freeze_notify { my ($_object) = @_ }
sub get { my ($_object, @_more_paras) = @_ }
sub get_data { my ($_object, $_key) = @_ }
sub get_pointer { my ($_object) = @_ }
sub get_property { my ($_object, @_more_paras) = @_ }
sub list_properties { my ($_object_or_class_name, @_more_paras) = @_ }
sub new { my ($_class, @_more_paras) = @_ }
sub new_from_pointer { my ($_class, $_pointer, $_o_noinc) = @_ }
sub notify { my ($_object, $_property_name) = @_ }
sub set { my ($_object, @_more_paras) = @_ }
sub set_data { my ($_object, $_key, $_data) = @_ }
sub set_property { my ($_object, @_more_paras) = @_ }
sub set_threadsafe { my ($_class, $_threadsafe) = @_ }
sub signal_add_emission_hook { my ($_object_or_class_name, $_detailed_signal, $_hook_func, $_o_hook_data) = @_ }
sub signal_chain_from_overridden { my ($_instance, @_more_paras) = @_ }
sub signal_connect { my ($_instance, $_detailed_signal, $_callback, $_o_data) = @_ }
sub signal_connect_after { my ($_instance, $_detailed_signal, $_callback, $_o_data) = @_ }
sub signal_connect_swapped { my ($_instance, $_detailed_signal, $_callback, $_o_data) = @_ }
sub signal_emit { my ($_instance, $_name, @_more_paras) = @_ }
sub signal_get_invocation_hint { my ($_instance) = @_ }
sub signal_handler_block { my ($_object, $_handler_id) = @_ }
sub signal_handler_disconnect { my ($_object, $_handler_id) = @_ }
sub signal_handler_is_connected { my ($_object, $_handler_id) = @_ }
sub signal_handler_unblock { my ($_object, $_handler_id) = @_ }
sub signal_handlers_block_by_func { my ($_instance, $_func, $_o_data) = @_ }
sub signal_handlers_disconnect_by_func { my ($_instance, $_func, $_o_data) = @_ }
sub signal_handlers_unblock_by_func { my ($_instance, $_func, $_o_data) = @_ }
sub signal_query { my ($_object_or_class_name, $_name) = @_ }
sub signal_remove_emission_hook { my ($_object_or_class_name, $_signal_name, $_hook_id) = @_ }
sub signal_stop_emission_by_name { my ($_instance, $_detailed_signal) = @_ }
sub thaw_notify { my ($_object) = @_ }
sub tie_properties { my ($_object, $_o_all) = @_ }

package Glib::Object::Property;
our @ISA = qw();
sub FETCH() {}
sub STORE() {}
sub TIESCALAR() {}

package Glib::Object::Property::Readable;
our @ISA = qw();
sub FETCH() {}

package Glib::Object::Property::Writable;
our @ISA = qw();
sub STORE() {}

package Glib::Object::Subclass;
our @ISA = qw();
sub import { my ($_self, $_superclass, @_more_paras) = @_ }

package Glib::Object::_LazyLoader;
our @ISA = qw();
sub AUTOLOAD() {}
sub _load { my ($_package) = @_ }

package Glib::OptionContext;
our @ISA = qw();
sub add_group { my ($_context, $_group) = @_ }
sub add_main_entries { my ($_context, $_entries, $_translation_domain) = @_ }
sub get_help_enabled { my ($_context) = @_ }
sub get_ignore_unknown_options { my ($_context) = @_ }
sub get_main_group { my ($_context) = @_ }
sub new { my ($_class, $_parameter_string) = @_ }
sub parse { my ($_context) = @_ }
sub set_help_enabled { my ($_context, $_help_enabled) = @_ }
sub set_ignore_unknown_options { my ($_context, $_ignore_unknown) = @_ }
sub set_main_group { my ($_context, $_group) = @_ }

package Glib::OptionGroup;
our @ISA = qw();
sub new { my ($_class, @_more_paras) = @_ }
sub set_translate_func { my ($_group, $_func, $_o_data) = @_ }
sub set_translation_domain { my ($_group, $_domain) = @_ }

package Glib::Param::Char;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::Double;
our @ISA = qw();
sub get_epsilon { my ($_pspec) = @_ }
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::Enum;
our @ISA = qw();
sub get_enum_class { my ($_pspec_enum) = @_ }

package Glib::Param::Flags;
our @ISA = qw();
sub get_flags_class { my ($_pspec_flags) = @_ }

package Glib::Param::Float;
our @ISA = qw();
sub get_epsilon { my ($_pspec) = @_ }
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::GType;
our @ISA = qw();
sub get_is_a_type { my ($_pspec_gtype) = @_ }

package Glib::Param::Int;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::Int64;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::Long;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::UChar;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::UInt;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::UInt64;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::Param::ULong;
our @ISA = qw();
sub get_maximum { my ($_pspec) = @_ }
sub get_minimum { my ($_pspec) = @_ }

package Glib::ParamSpec;
our @ISA = qw();
sub DESTROY { my ($_pspec) = @_ }
sub IV { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub UV { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub boolean { my ($_class, $_name, $_nick, $_blurb, $_default_value, $_flags) = @_ }
sub boxed { my ($_class, $_name, $_nick, $_blurb, $_package, $_flags) = @_ }
sub char { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub double { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub enum { my ($_class, $_name, $_nick, $_blurb, $_enum_type, $_default_value, $_flags) = @_ }
sub flags { my ($_class, $_name, $_nick, $_blurb, $_flags_type, $_default_value, $_flags) = @_ }
sub float { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub get_blurb { my ($_pspec) = @_ }
sub get_default_value { my ($_pspec) = @_ }
sub get_flags { my ($_pspec) = @_ }
sub get_name { my ($_pspec) = @_ }
sub get_nick { my ($_pspec) = @_ }
sub get_owner_type { my ($_pspec) = @_ }
sub get_redirect_target { my ($_pspec) = @_ }
sub get_value_type { my ($_pspec) = @_ }
sub gtype { my ($_class, $_name, $_nick, $_blurb, $_is_a_type, $_flags) = @_ }
sub int { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub int64 { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub long { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub object { my ($_class, $_name, $_nick, $_blurb, $_package, $_flags) = @_ }
sub override { my ($_class, $_name, $_overridden) = @_ }
sub param_spec { my ($_class, $_name, $_nick, $_blurb, $_package, $_flags) = @_ }
sub scalar { my ($_class, $_name, $_nick, $_blurb, $_flags) = @_ }
sub string { my ($_class, $_name, $_nick, $_blurb, $_default_value, $_flags) = @_ }
sub uchar { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub uint { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub uint64 { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub ulong { my ($_class, $_name, $_nick, $_blurb, $_minimum, $_maximum, $_default_value, $_flags) = @_ }
sub unichar { my ($_class, $_name, $_nick, $_blurb, $_default_value, $_flags) = @_ }
sub value_validate { my ($_pspec, $_value) = @_ }
sub values_cmp { my ($_pspec, $_value1, $_value2) = @_ }

package Glib::ParseXSDoc;
our @ISA = qw();
sub canonicalize_xsubs() {}
sub clean_out_empty_pods() {}
sub deep_copy_ref() {}
sub is_module_line() {}
sub new() {}
sub package() {}
sub parse_file() {}
sub parse_xsub { my ($_self, @_more_paras) = @_ }
sub pkgdata() {}
sub preprocess_pods() {}
sub sanitize_type() {}
sub slurp_pod_paragraph() {}
sub split_aliases() {}
sub swizzle_pods() {}
sub xsdocparse { my (@_more_paras) = @_ }

package Glib::Source;
our @ISA = qw();
sub remove { my ($_class, $_tag) = @_ }

package Glib::Timeout;
our @ISA = qw();
sub add { my ($_class, $_interval, $_callback, $_o_data, $_o_priority) = @_ }
sub add_seconds { my ($_class, $_interval, $_callback, $_o_data, $_o_priority) = @_ }

package Glib::Type;
our @ISA = qw();
sub list_ancestors { my ($_class, $_package) = @_ }
sub list_interfaces { my ($_class, $_package) = @_ }
sub list_signals { my ($_class, $_package) = @_ }
sub list_values { my ($_class, $_package) = @_ }
sub package_from_cname { my ($_class, $_cname) = @_ }
sub register { my ($_class, $_parent_class, $_new_class, @_more_paras) = @_ }
sub register_enum { my ($_class, $_name, @_more_paras) = @_ }
sub register_flags { my ($_class, $_name, @_more_paras) = @_ }
sub register_object { my ($_class, $_parent_package, $_new_package, @_more_paras) = @_ }

package MY;
our @ISA = qw();
sub c_o() {}
sub const_cccmd() {}
sub dynamic_lib() {}
sub quiet_rule() {}
sub static_lib() {}
sub xs_c() {}
sub xs_o() {}