Added SILC Thread Queue API
[crypto.git] / apps / irssi / src / perl / perl-common.h
index 9fa85f07824fc10c8d21ae2d0b5844d5f1283fc4..32e6e6559f390c379b7515d9f90e9cff2b0e3936 100644 (file)
@@ -32,6 +32,14 @@ SV *perl_func_sv_inc(SV *func, const char *package);
 extern STRLEN PL_na;
 #endif
 
+#ifndef pTHX_
+#  define pTHX_
+#endif
+
+#ifndef aTHX_
+#  define aTHX_
+#endif
+
 #define iobject_bless(object) \
        ((object) == NULL ? &PL_sv_undef : \
        irssi_bless_iobject((object)->type, (object)->chat_type, object))
@@ -56,11 +64,21 @@ void irssi_add_plains(PLAIN_OBJECT_INIT_REC *objects);
 
 char *perl_get_use_list(void);
 
+void perl_command(const char *cmd, SERVER_REC *server, WI_ITEM_REC *item);
+
+void perl_chatnet_fill_hash(HV *hv, CHATNET_REC *chatnet);
+void perl_connect_fill_hash(HV *hv, SERVER_CONNECT_REC *conn);
+void perl_server_fill_hash(HV *hv, SERVER_REC *server);
+void perl_window_item_fill_hash(HV *hv, WI_ITEM_REC *item);
+void perl_channel_fill_hash(HV *hv, CHANNEL_REC *channel);
+void perl_query_fill_hash(HV *hv, QUERY_REC *query);
+void perl_nick_fill_hash(HV *hv, NICK_REC *nick);
+
 #define irssi_boot(x) { \
-       extern void boot_Irssi__##x(CV *cv); \
+       extern void boot_Irssi__##x(pTHX_ CV *cv); \
        irssi_callXS(boot_Irssi__##x, cv, mark); \
        }
-void irssi_callXS(void (*subaddr)(CV* cv), CV *cv, SV **mark);
+void irssi_callXS(void (*subaddr)(pTHX_ CV* cv), CV *cv, SV **mark);
 
 void perl_common_start(void);
 void perl_common_stop(void);