Re: Object Construction



On Wed, 30 Aug 2000, Eric Lemings wrote:

> Tim Janik wrote:
> > 
> > as far as g_type_create_instance() is concerned, that's a private
> > function for implementators of fundamental types, and as long as
> 
> Since it's a private function declared in a public header file,
> shouldn't it be marked as such?  Something like:
> 
> /* PRIVATE FUNCTIONS!!  USE AT YOUR PERIL!! */
> 
> Speaking of private functions, are there other private functions in that
> public header file?

pretty much everythign that goes under "implementation details" or
similar section marks. though in my local tree, i already went for a
more fine grained grouping:

/* --- protected (for fundamental type implementations) --- */
GTypePlugin*     g_type_get_plugin              (GType               type);
GType            g_type_fundamental_last        (void);
gboolean         g_type_check_flags             (GType               type,
                                                 GTypeFlags          flags);
GTypeInstance*   g_type_create_instance         (GType               type);
void             g_type_free_instance           (GTypeInstance      *instance);
void             g_type_add_class_cache_func    (gpointer            cache_data,
                                                 GTypeClassCacheFunc cache_func);
void             g_type_remove_class_cache_func (gpointer            cache_data,
                                                 GTypeClassCacheFunc cache_func);
void             g_type_class_unref_uncached    (gpointer            g_class);


/*< private >*/
GTypeClass*      g_type_check_class_cast        (GTypeClass         *g_class,
                                                 GType               is_a_type);
gboolean         g_type_class_is_a              (GTypeClass         *g_class,
                                                 GType               is_a_type);
GTypeInstance*   g_type_check_instance_cast     (GTypeInstance      *instance,
                                                 GType               iface_type);
gboolean         g_type_instance_conforms_to    (GTypeInstance      *instance,
                                                 GType               iface_type);
gboolean         g_type_check_is_value          (GTypeClass         *value);
gboolean         g_type_value_conforms_to       (GTypeClass         *value,
                                                 GType               type);
gboolean         g_type_check_instance          (GTypeInstance      *instance);
GTypeValueTable* g_type_value_table_peek        (GType               type);


> 
> Eric.
> 
> 

---
ciaoTJ






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]