diff options
Diffstat (limited to 'src/perl/irc/Channel.xs')
-rw-r--r-- | src/perl/irc/Channel.xs | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/perl/irc/Channel.xs b/src/perl/irc/Channel.xs new file mode 100644 index 00000000..bd88be79 --- /dev/null +++ b/src/perl/irc/Channel.xs @@ -0,0 +1,54 @@ +#include "module.h" + +MODULE = Irssi::Irc::Channel PACKAGE = Irssi::Irc::Channel PREFIX = irc_ +PROTOTYPES: ENABLE + +void +bans(channel) + Irssi::Irc::Channel channel +PREINIT: + GSList *tmp; +PPCODE: + for (tmp = channel->banlist; tmp != NULL; tmp = tmp->next) { + XPUSHs(sv_2mortal(plain_bless(tmp->data, "Irssi::Irc::Ban"))); + } + +void +ebans(channel) + Irssi::Irc::Channel channel +PREINIT: + GSList *tmp; +PPCODE: + for (tmp = channel->ebanlist; tmp != NULL; tmp = tmp->next) { + XPUSHs(sv_2mortal(plain_bless(tmp->data, "Irssi::Irc::Ban"))); + } + +void +invites(channel) + Irssi::Irc::Channel channel +PREINIT: + GSList *tmp; +PPCODE: + for (tmp = channel->invitelist; tmp != NULL; tmp = tmp->next) { + XPUSHs(new_pv(tmp->data)); + } + +Irssi::Irc::Nick +irc_nick_insert(channel, nick, op, voice, send_massjoin) + Irssi::Irc::Channel channel + char *nick + int op + int voice + int send_massjoin +CODE: + RETVAL = irc_nicklist_insert(channel, nick, op, voice, send_massjoin); +OUTPUT: + RETVAL + +MODULE = Irssi::Irc::Channel PACKAGE = Irssi::Irc::Server PREFIX = irc_ + +Irssi::Irc::Channel +irc_channel_create(server, name, automatic) + Irssi::Irc::Server server + char *name + int automatic |