Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

cpp_st.hpp

Go to the documentation of this file.
00001 #ifndef Exc_Ruby___cpp__st__hpp_
00002 #define Exc_Ruby___cpp__st__hpp_
00003 
00009 extern "C"
00010 {
00011 #include "st.h"
00012 }
00013 
00014 namespace Exc_Ruby
00015 {
00016 
00017 namespace detail
00018 {
00019 
00020 extern "C" typedef int (*St_Insert_Signature)(
00021     register st_table *table,
00022     register char *key,
00023     char *value);
00024 extern "C" typedef int (*St_Lookup_Signature)(
00025     st_table *table,
00026     register char *key,
00027     char **value); 
00028 extern "C" typedef st_table* (*St_Init_Table_Signature)(
00029     struct st_hash_type *type);
00030 
00031 #define st_insert(table, key, value) \
00032   ((::Exc_Ruby::detail::St_Insert_Signature)(st_insert))(table, key, value)
00033 #define st_lookup(table, key, value) \
00034   ((::Exc_Ruby::detail::St_Lookup_Signature)(st_lookup))(table, key, value)
00035 #define st_init_table(type) \
00036   ((::Exc_Ruby::detail::St_Init_Table_Signature)(st_init_table))(type)
00037 
00038 } // namespace detail
00039 
00040 } // namespace Exc_Ruby
00041 
00042 #endif // Exc_Ruby___cpp__st__hpp_
00043 

Generated on Sat Jan 1 12:02:19 2005 for Exceptional Ruby by doxygen 1.3.6