Perl updates

git-svn-id: http://svn.irssi.org/repos/irssi/trunk@707 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2000-10-01 21:46:48 +00:00 committed by cras
commit c48a05c3e8
25 changed files with 188 additions and 737 deletions

View file

@ -1,190 +0,0 @@
MODULE = Irssi PACKAGE = Irssi
void
channels()
PREINIT:
GSList *tmp;
HV *stash;
PPCODE:
stash = gv_stashpv("Irssi::Channel", 0);
for (tmp = channels; tmp != NULL; tmp = tmp->next) {
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
}
int
is_channel(text)
char *text
CODE:
RETVAL = ischannel(*text);
OUTPUT:
RETVAL
#*******************************
MODULE = Irssi PACKAGE = Irssi::Server
#*******************************
void
channels(server)
Irssi::Server server
PREINIT:
GSList *tmp;
HV *stash;
PPCODE:
stash = gv_stashpv("Irssi::Channel", 0);
for (tmp = server->channels; tmp != NULL; tmp = tmp->next) {
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
}
Irssi::Channel
channel_create(server, channel, automatic)
Irssi::Server server
char *channel
int automatic
Irssi::Channel
channel_find(server, channel)
Irssi::Server server
char *channel
void
channels_join(server, data, automatic)
Irssi::Server server
char *data
int automatic
#*******************************
MODULE = Irssi PACKAGE = Irssi::Channel PREFIX = channel_
#*******************************
void
values(channel)
Irssi::Channel channel
PREINIT:
HV *hv, *stash;
char *type;
PPCODE:
type = "channel";
hv = newHV();
hv_store(hv, "type", 4, new_pv(type), 0);
stash = gv_stashpv("Irssi::Server", 0);
hv_store(hv, "server", 6, sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(channel->server))), stash), 0);
hv_store(hv, "name", 4, new_pv(channel->name), 0);
hv_store(hv, "new_data", 8, newSViv(channel->new_data), 0);
hv_store(hv, "createtime", 10, newSViv(channel->createtime), 0);
hv_store(hv, "topic", 5, new_pv(channel->topic), 0);
hv_store(hv, "mode", 4, new_pv(channel->mode), 0);
hv_store(hv, "limit", 5, newSViv(channel->limit), 0);
hv_store(hv, "key", 3, new_pv(channel->key), 0);
hv_store(hv, "chanop", 6, newSViv(channel->chanop), 0);
hv_store(hv, "names_got", 9, newSViv(channel->names_got), 0);
hv_store(hv, "wholist", 7, newSViv(channel->wholist), 0);
hv_store(hv, "synced", 6, newSViv(channel->synced), 0);
hv_store(hv, "left", 4, newSViv(channel->left), 0);
hv_store(hv, "kicked", 6, newSViv(channel->kicked), 0);
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
void
channel_destroy(channel)
Irssi::Channel channel
Irssi::Channel
channel_find(channel)
char *channel
CODE:
RETVAL = channel_find(NULL, channel);
OUTPUT:
RETVAL
void
command(channel, cmd)
Irssi::Channel channel
char *cmd
CODE:
signal_emit("send command", 3, cmd, channel->server, channel);
Irssi::Nick
nicklist_insert(channel, nick, op, voice, send_massjoin)
Irssi::Channel channel
char *nick
int op
int voice
int send_massjoin
void
nicklist_remove(channel, nick)
Irssi::Channel channel
Irssi::Nick nick
Irssi::Nick
nicklist_find(channel, mask)
Irssi::Channel channel
char *mask
void
nicklist_getnicks(channel)
Irssi::Channel channel
PREINIT:
GSList *list, *tmp;
HV *stash;
PPCODE:
list = nicklist_getnicks(channel);
stash = gv_stashpv("Irssi::Nick", 0);
for (tmp = list; tmp != NULL; tmp = tmp->next) {
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
}
g_slist_free(list);
void
nicklist_get_same(server, nick)
Irssi::Server server
char *nick
PREINIT:
GSList *list, *tmp;
HV *chanstash, *nickstash;
PPCODE:
list = nicklist_get_same(server, nick);
chanstash = gv_stashpv("Irssi::Channel", 0);
nickstash = gv_stashpv("Irssi::Nick", 0);
for (tmp = list; tmp != NULL; tmp = tmp->next->next) {
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), chanstash)));
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->next->data))), nickstash)));
}
g_slist_free(list);
#*******************************
MODULE = Irssi PACKAGE = Irssi::Nick
#*******************************
void
values(nick)
Irssi::Nick nick
PREINIT:
HV *hv;
PPCODE:
hv = newHV();
hv_store(hv, "last_check", 10, newSViv(nick->last_check), 0);
hv_store(hv, "send_massjoin", 13, newSViv(nick->send_massjoin), 0);
hv_store(hv, "nick", 4, new_pv(nick->nick), 0);
hv_store(hv, "host", 4, new_pv(nick->host), 0);
hv_store(hv, "realname", 8, new_pv(nick->realname), 0);
hv_store(hv, "hops", 4, newSViv(nick->hops), 0);
hv_store(hv, "op", 2, newSViv(nick->op), 0);
hv_store(hv, "voice", 5, newSViv(nick->voice), 0);
hv_store(hv, "gone", 4, newSViv(nick->gone), 0);
hv_store(hv, "ircop", 5, newSViv(nick->ircop), 0);
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));