GNOME Bugzilla – Bug 592283
Namespace issues
Last modified: 2009-09-01 17:52:31 UTC
I think we're approaching a release. That is an excellent time to consider the namespace of goffice. A lot of these functions, insofar they belong in goffice, really need to acquire a go_ prefix. welinder@anemone:~/gnome/goffice/goffice/.libs> nm libgoffice-0.8.so | grep ' T ' | grep -v ' T go' | grep -v foo 001039d8 T _fini 000cff20 T _go_combo_is_updating 0003d7a0 T _go_string_dump 0003e4d0 T _go_string_init 0003df10 T _go_string_shutdown 0002b7b4 T _init 0006ba50 T count_io_progress_set 0006bfd0 T count_io_progress_update 0003fb50 T datetime_g_months_between 0003f280 T datetime_g_to_serial 0003fc40 T datetime_g_years_between 0003ed00 T datetime_serial_raw_to_seconds 0003fe30 T datetime_serial_raw_to_serial 0003f300 T datetime_serial_to_g 0003fdc0 T datetime_serial_to_timet 0003ff20 T datetime_timet_to_seconds 0003ff60 T datetime_timet_to_serial 0003fe80 T datetime_timet_to_serial_raw 0003fce0 T datetime_weeknum 0003f5a0 T days_between_basis 000568a0 T e_xml_get_child_by_name 00056690 T e_xml_get_child_by_name_by_lang 000567e0 T e_xml_get_child_by_name_no_lang 0006b010 T error_info_add_details 0006af10 T error_info_add_details_list 0006aeb0 T error_info_free 0006b1d0 T error_info_new_from_errno 0006b240 T error_info_new_from_error_list 0006b140 T error_info_new_printf 0006b180 T error_info_new_str 0006b2b0 T error_info_new_str_with_details 0006b200 T error_info_new_str_with_details_list 0006b0b0 T error_info_new_vprintf 0006ad10 T error_info_peek_details 0006ad60 T error_info_peek_message 0006acb0 T error_info_peek_severity 0006ae60 T error_info_print 0003edd0 T gnm_date_convention_base 0006b8a0 T gnm_io_context_processing_file 0006b940 T gnm_io_context_set_num_files 0006b4d0 T gnm_io_warning 0006b830 T gnm_io_warning_unknown_font 0006b7c0 T gnm_io_warning_unknown_function 0006b720 T gnm_io_warning_unsupported_feature 0006b480 T gnm_io_warning_varargs 0006c150 T gnumeric_io_context_new 0006b510 T gnumeric_io_error_clear 0006b590 T gnumeric_io_error_display 0006b3b0 T gnumeric_io_error_info_set 0006b390 T gnumeric_io_error_occurred 0006b620 T gnumeric_io_error_push 0006c590 T gnumeric_io_error_string 0006b430 T gnumeric_io_error_unknown 0006b3a0 T gnumeric_io_warning_occurred 0006b6a0 T io_context_get_type 0006bd80 T io_progress_message 0006bbc0 T io_progress_range_pop 0006bcb0 T io_progress_range_push 0006b9c0 T io_progress_unset 0006be20 T io_progress_update 00034270 T libgoffice_init 00034210 T libgoffice_shutdown 00065fb0 T plugin_service_activate 00066650 T plugin_service_deactivate 00065cd0 T plugin_service_define 00066c40 T plugin_service_file_opener_get_type 00066be0 T plugin_service_file_saver_get_type 00066ca0 T plugin_service_general_get_type 00066090 T plugin_service_get_cbs 000661b0 T plugin_service_get_description 00066240 T plugin_service_get_id 00066130 T plugin_service_get_plugin 00065f50 T plugin_service_get_type 00066b20 T plugin_service_gobject_loader_get_type 00066760 T plugin_service_load 000662c0 T plugin_service_new 00066df0 T plugin_service_plugin_loader_generate_type 00066b80 T plugin_service_plugin_loader_get_type 00066ac0 T plugin_service_simple_get_type 00066550 T plugin_service_unload 00065dc0 T plugin_services_init 00065d60 T plugin_services_shutdown 0006bb10 T value_io_progress_set 0006c090 T value_io_progress_update 00056f50 T xml_node_get_bool 00056cd0 T xml_node_get_cstr 00056d20 T xml_node_get_double 00056e50 T xml_node_get_enum 00056940 T xml_node_get_gocolor 00056db0 T xml_node_get_int 00056c80 T xml_node_set_bool 00056a00 T xml_node_set_cstr 00056b60 T xml_node_set_double 00056a50 T xml_node_set_enum 00056af0 T xml_node_set_gocolor 00056c20 T xml_node_set_int
I just committed a major part of this. We're left with: welinder@anemone:~/gnome/goffice/goffice/.libs> nm libgoffice-0.8.so | grep ' T ' | grep -v ' T go' | grep -v foo 00104e38 T _fini 000d0120 T _go_combo_is_updating 0003d9a0 T _go_string_dump 0003e6d0 T _go_string_init 0003e110 T _go_string_shutdown 0002b960 T _init 0003fd50 T datetime_g_months_between 0003f480 T datetime_g_to_serial 0003fe40 T datetime_g_years_between 0003ef00 T datetime_serial_raw_to_seconds 00040030 T datetime_serial_raw_to_serial 0003f500 T datetime_serial_to_g 0003ffc0 T datetime_serial_to_timet 00040120 T datetime_timet_to_seconds 00040160 T datetime_timet_to_serial 00040080 T datetime_timet_to_serial_raw 0003fee0 T datetime_weeknum 00056aa0 T e_xml_get_child_by_name 00056890 T e_xml_get_child_by_name_by_lang 000569e0 T e_xml_get_child_by_name_no_lang 00034470 T libgoffice_init 00034410 T libgoffice_shutdown 00057150 T xml_node_get_bool 00056ed0 T xml_node_get_cstr 00056f20 T xml_node_get_double 00057050 T xml_node_get_enum 00056b40 T xml_node_get_gocolor 00056fb0 T xml_node_get_int 00056e80 T xml_node_set_bool 00056c00 T xml_node_set_cstr 00056d60 T xml_node_set_double 00056c50 T xml_node_set_enum 00056cf0 T xml_node_set_gocolor 00056e20 T xml_node_set_int
We're down to xml stuff now, plus some #defines related to colours and units. welinder@anemone:~/gnome/goffice> nm goffice/.libs/libgoffice-0.8.so | grep ' T ' | grep -v ' T go' | grep -v ' T foo' 00104e38 T _fini 000d0120 T _go_combo_is_updating 00037500 T _go_fonts_init 000372d0 T _go_fonts_shutdown 0003d9a0 T _go_string_dump 0003e6d0 T _go_string_init 0003e110 T _go_string_shutdown 0002b954 T _init 00056aa0 T e_xml_get_child_by_name 00056890 T e_xml_get_child_by_name_by_lang 000569e0 T e_xml_get_child_by_name_no_lang 00034470 T libgoffice_init 00034410 T libgoffice_shutdown 00057150 T xml_node_get_bool 00056ed0 T xml_node_get_cstr 00056f20 T xml_node_get_double 00057050 T xml_node_get_enum 00056b40 T xml_node_get_gocolor 00056fb0 T xml_node_get_int 00056e80 T xml_node_set_bool 00056c00 T xml_node_set_cstr 00056d60 T xml_node_set_double 00056c50 T xml_node_set_enum 00056cf0 T xml_node_set_gocolor 00056e20 T xml_node_set_int
link-symbols are done. unit defines are done. That leaves the color defines where the situation was improved.
go-color.h macros have been renamed. Anything else left?
This is the last I know of at this point: ./goffice/app/go-plugin-service-impl.h:#define GPS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GO_TYPE_PLUGIN_SERVICE, GOPluginServiceClass)) ./goffice/app/go-plugin-service-impl.h:#define GPS_GET_CLASS(o) GPS_CLASS (G_OBJECT_GET_CLASS (o)) ./goffice/app/go-plugin-service-impl.h:#define GPS_GOBJECT_LOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GO_TYPE_PLUGIN_SERVICE, GOPluginServiceGObjectLoaderClass)) ./goffice/app/go-plugin-service-impl.h:#define GPS_GOBJECT_LOADER_GET_CLASS(o) GPS_GOBJECT_LOADER_CLASS (G_OBJECT_GET_CLASS (o))
Damned, I missed that one, and this one is used in GChemUtils too. Replace with GOPS_ or GO_PS_?
GO_PLUGIN_SERVICE_ I think.
done.