mirror of
https://github.com/irssi/irssi.git
synced 2026-08-11 21:00:40 +02:00
perl changes - values() method doesn't exist anymore, instead of
$server->values()->{...} you now use directly $server->{...}
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@972 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
a99e93ef5d
commit
e95f309b50
22 changed files with 412 additions and 326 deletions
|
|
@ -6,12 +6,17 @@ PREINIT:
|
|||
GSList *tmp;
|
||||
PPCODE:
|
||||
for (tmp = channels; tmp != NULL; tmp = tmp->next) {
|
||||
CHANNEL_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))),
|
||||
irssi_get_stash(rec))));
|
||||
XPUSHs(sv_2mortal(irssi_bless((CHANNEL_REC *) tmp->data)));
|
||||
}
|
||||
|
||||
Irssi::Channel
|
||||
channel_find(channel)
|
||||
char *channel
|
||||
CODE:
|
||||
RETVAL = channel_find(NULL, channel);
|
||||
OUTPUT:
|
||||
RETVAL
|
||||
|
||||
#*******************************
|
||||
MODULE = Irssi PACKAGE = Irssi::Server
|
||||
#*******************************
|
||||
|
|
@ -23,10 +28,7 @@ PREINIT:
|
|||
GSList *tmp;
|
||||
PPCODE:
|
||||
for (tmp = server->channels; tmp != NULL; tmp = tmp->next) {
|
||||
CHANNEL_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))),
|
||||
irssi_get_stash(rec))));
|
||||
XPUSHs(sv_2mortal(irssi_bless((CHANNEL_REC *) tmp->data)));
|
||||
}
|
||||
|
||||
Irssi::Channel
|
||||
|
|
@ -47,17 +49,12 @@ nicklist_get_same(server, nick)
|
|||
char *nick
|
||||
PREINIT:
|
||||
GSList *list, *tmp;
|
||||
HV *nickstash;
|
||||
PPCODE:
|
||||
list = nicklist_get_same(server, nick);
|
||||
|
||||
nickstash = gv_stashpv("Irssi::Nick", 0);
|
||||
for (tmp = list; tmp != NULL; tmp = tmp->next->next) {
|
||||
CHANNEL_REC *channel = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(channel))),
|
||||
irssi_get_stash(channel))));
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->next->data))), nickstash)));
|
||||
XPUSHs(sv_2mortal(irssi_bless((CHANNEL_REC *) tmp->data)));
|
||||
XPUSHs(sv_2mortal(irssi_bless((NICK_REC *) tmp->next->data)));
|
||||
}
|
||||
g_slist_free(list);
|
||||
|
||||
|
|
@ -66,27 +63,15 @@ MODULE = Irssi PACKAGE = Irssi::Channel PREFIX = channel_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(channel)
|
||||
init(channel)
|
||||
Irssi::Channel channel
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
perl_channel_fill_hash(hv, channel);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
CODE:
|
||||
perl_channel_fill_hash(hvref(ST(0)), channel);
|
||||
|
||||
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
|
||||
|
|
@ -95,35 +80,43 @@ CODE:
|
|||
signal_emit("send command", 3, cmd, channel->server, channel);
|
||||
|
||||
Irssi::Nick
|
||||
nicklist_insert(channel, nick, op, voice, send_massjoin)
|
||||
nick_insert(channel, nick, op, voice, send_massjoin)
|
||||
Irssi::Channel channel
|
||||
char *nick
|
||||
int op
|
||||
int voice
|
||||
int send_massjoin
|
||||
CODE:
|
||||
RETVAL = nicklist_insert(channel, nick, op, voice, send_massjoin);
|
||||
OUTPUT:
|
||||
RETVAL
|
||||
|
||||
void
|
||||
nicklist_remove(channel, nick)
|
||||
nick_remove(channel, nick)
|
||||
Irssi::Channel channel
|
||||
Irssi::Nick nick
|
||||
CODE:
|
||||
nicklist_remove(channel, nick);
|
||||
|
||||
Irssi::Nick
|
||||
nicklist_find(channel, mask)
|
||||
nick_find(channel, mask)
|
||||
Irssi::Channel channel
|
||||
char *mask
|
||||
CODE:
|
||||
RETVAL = nicklist_find(channel, mask);
|
||||
OUTPUT:
|
||||
RETVAL
|
||||
|
||||
void
|
||||
nicklist_getnicks(channel)
|
||||
nicks(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)));
|
||||
XPUSHs(sv_2mortal(irssi_bless((NICK_REC *) tmp->data)));
|
||||
}
|
||||
g_slist_free(list);
|
||||
|
||||
|
|
@ -132,25 +125,8 @@ MODULE = Irssi PACKAGE = Irssi::Nick
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(nick)
|
||||
init(nick)
|
||||
Irssi::Nick nick
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "last_check", 10, newSViv(nick->last_check), 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, "gone", 4, newSViv(nick->gone), 0);
|
||||
hv_store(hv, "serverop", 8, newSViv(nick->serverop), 0);
|
||||
|
||||
hv_store(hv, "send_massjoin", 13, newSViv(nick->send_massjoin), 0);
|
||||
hv_store(hv, "op", 2, newSViv(nick->op), 0);
|
||||
hv_store(hv, "halfop", 6, newSViv(nick->halfop), 0);
|
||||
hv_store(hv, "voice", 5, newSViv(nick->voice), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
CODE:
|
||||
perl_nick_fill_hash(hvref(ST(0)), nick);
|
||||
|
||||
|
|
|
|||
|
|
@ -302,7 +302,7 @@ PREINIT:
|
|||
PPCODE:
|
||||
stash = gv_stashpv("Irssi::Command", 0);
|
||||
for (tmp = commands; tmp != NULL; tmp = tmp->next) {
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
|
||||
push_bless(tmp->data, stash);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -335,12 +335,13 @@ MODULE = Irssi PACKAGE = Irssi::Command PREFIX = command_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(cmd)
|
||||
init(cmd)
|
||||
Irssi::Command cmd
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "category", 8, new_pv(cmd->category), 0);
|
||||
hv_store(hv, "cmd", 3, new_pv(cmd->cmd), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
hv_store(hv, "category", 8, new_pv(cmd->category), 0);
|
||||
hv_store(hv, "cmd", 3, new_pv(cmd->cmd), 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ PREINIT:
|
|||
PPCODE:
|
||||
stash = gv_stashpv("Irssi::Ignore", 0);
|
||||
for (tmp = servers; tmp != NULL; tmp = tmp->next) {
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
|
||||
push_bless(tmp->data, stash);
|
||||
}
|
||||
|
||||
int
|
||||
|
|
@ -41,29 +41,31 @@ MODULE = Irssi PACKAGE = Irssi::Ignore PREFIX = ignore_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(ignore)
|
||||
init(ignore)
|
||||
Irssi::Ignore ignore
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
AV *av;
|
||||
char **tmp;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "mask", 4, new_pv(ignore->mask), 0);
|
||||
hv_store(hv, "servertag", 9, new_pv(ignore->servertag), 0);
|
||||
av = newAV();
|
||||
for (tmp = ignore->channels; *tmp != NULL; tmp++) {
|
||||
av_push(av, new_pv(*tmp));
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
hv_store(hv, "mask", 4, new_pv(ignore->mask), 0);
|
||||
hv_store(hv, "servertag", 9, new_pv(ignore->servertag), 0);
|
||||
av = newAV();
|
||||
for (tmp = ignore->channels; *tmp != NULL; tmp++) {
|
||||
av_push(av, new_pv(*tmp));
|
||||
}
|
||||
hv_store(hv, "channels", 8, newRV_noinc((SV*)av), 0);
|
||||
hv_store(hv, "pattern", 7, new_pv(ignore->pattern), 0);
|
||||
|
||||
hv_store(hv, "level", 5, newSViv(ignore->level), 0);
|
||||
hv_store(hv, "except_level", 12, newSViv(ignore->except_level), 0);
|
||||
|
||||
hv_store(hv, "regexp", 6, newSViv(ignore->regexp), 0);
|
||||
hv_store(hv, "fullword", 8, newSViv(ignore->fullword), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
}
|
||||
hv_store(hv, "channels", 8, newRV_noinc((SV*)av), 0);
|
||||
hv_store(hv, "pattern", 7, new_pv(ignore->pattern), 0);
|
||||
|
||||
hv_store(hv, "level", 5, newSViv(ignore->level), 0);
|
||||
hv_store(hv, "except_level", 12, newSViv(ignore->except_level), 0);
|
||||
|
||||
hv_store(hv, "regexp", 6, newSViv(ignore->regexp), 0);
|
||||
hv_store(hv, "fullword", 8, newSViv(ignore->fullword), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
|
||||
void
|
||||
ignore_add_rec(rec)
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ PREINIT:
|
|||
PPCODE:
|
||||
stash = gv_stashpv("Irssi::Log", 0);
|
||||
for (tmp = logs; tmp != NULL; tmp = tmp->next) {
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
|
||||
push_bless(tmp->data, stash);
|
||||
}
|
||||
|
||||
Irssi::Log
|
||||
|
|
@ -25,29 +25,30 @@ MODULE = Irssi PACKAGE = Irssi::Log PREFIX = log_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(log)
|
||||
init(log)
|
||||
Irssi::Log log
|
||||
PREINIT:
|
||||
HV *hv, *stash;
|
||||
AV *av;
|
||||
GSList *tmp;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "fname", 5, new_pv(log->fname), 0);
|
||||
hv_store(hv, "opened", 6, newSViv(log->opened), 0);
|
||||
hv_store(hv, "level", 5, newSViv(log->level), 0);
|
||||
hv_store(hv, "last", 4, newSViv(log->last), 0);
|
||||
hv_store(hv, "autoopen", 8, newSViv(log->autoopen), 0);
|
||||
hv_store(hv, "failed", 6, newSViv(log->failed), 0);
|
||||
hv_store(hv, "temp", 4, newSViv(log->temp), 0);
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
hv_store(hv, "fname", 5, new_pv(log->fname), 0);
|
||||
hv_store(hv, "opened", 6, newSViv(log->opened), 0);
|
||||
hv_store(hv, "level", 5, newSViv(log->level), 0);
|
||||
hv_store(hv, "last", 4, newSViv(log->last), 0);
|
||||
hv_store(hv, "autoopen", 8, newSViv(log->autoopen), 0);
|
||||
hv_store(hv, "failed", 6, newSViv(log->failed), 0);
|
||||
hv_store(hv, "temp", 4, newSViv(log->temp), 0);
|
||||
|
||||
stash = gv_stashpv("Irssi::LogItem", 0);
|
||||
av = newAV();
|
||||
for (tmp = log->items; tmp != NULL; tmp = tmp->next) {
|
||||
av_push(av, sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
|
||||
stash = gv_stashpv("Irssi::LogItem", 0);
|
||||
av = newAV();
|
||||
for (tmp = log->items; tmp != NULL; tmp = tmp->next) {
|
||||
av_push(av, sv_2mortal(new_bless(tmp->data, stash)));
|
||||
}
|
||||
hv_store(hv, "items", 4, newRV_noinc((SV*)av), 0);
|
||||
}
|
||||
hv_store(hv, "items", 4, newRV_noinc((SV*)av), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
|
||||
void
|
||||
log_item_add(log, type, name, server)
|
||||
|
|
@ -94,12 +95,14 @@ MODULE = Irssi PACKAGE = Irssi::LogItem
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(item)
|
||||
init(item)
|
||||
Irssi::LogItem item
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "type", 4, newSViv(item->type), 0);
|
||||
hv_store(hv, "name", 4, new_pv(item->name), 0);
|
||||
hv_store(hv, "servertag", 9, new_pv(item->servertag), 0);
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
hv_store(hv, "type", 4, newSViv(item->type), 0);
|
||||
hv_store(hv, "name", 4, new_pv(item->name), 0);
|
||||
hv_store(hv, "servertag", 9, new_pv(item->servertag), 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,8 +8,7 @@ PPCODE:
|
|||
for (tmp = queries; tmp != NULL; tmp = tmp->next) {
|
||||
QUERY_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))),
|
||||
irssi_get_stash(rec))));
|
||||
XPUSHs(sv_2mortal(irssi_bless(rec)));
|
||||
}
|
||||
|
||||
#*******************************
|
||||
|
|
@ -25,8 +24,7 @@ PPCODE:
|
|||
for (tmp = server->queries; tmp != NULL; tmp = tmp->next) {
|
||||
QUERY_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))),
|
||||
irssi_get_stash(rec))));
|
||||
XPUSHs(sv_2mortal(irssi_bless(rec)));
|
||||
}
|
||||
|
||||
Irssi::Query
|
||||
|
|
@ -46,14 +44,10 @@ MODULE = Irssi PACKAGE = Irssi::Query PREFIX = query_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(query)
|
||||
init(query)
|
||||
Irssi::Query query
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
perl_query_fill_hash(hv, query);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
CODE:
|
||||
perl_query_fill_hash(hvref(ST(0)), query);
|
||||
|
||||
void
|
||||
query_destroy(query)
|
||||
|
|
|
|||
|
|
@ -32,23 +32,24 @@ MODULE = Irssi PACKAGE = Irssi::Rawlog PREFIX = rawlog_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(rawlog)
|
||||
init(rawlog)
|
||||
Irssi::Rawlog rawlog
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
AV *av;
|
||||
GSList *tmp;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "logging", 7, newSViv(rawlog->logging), 0);
|
||||
hv_store(hv, "nlines", 6, newSViv(rawlog->nlines), 0);
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
hv_store(hv, "logging", 7, newSViv(rawlog->logging), 0);
|
||||
hv_store(hv, "nlines", 6, newSViv(rawlog->nlines), 0);
|
||||
|
||||
av = newAV();
|
||||
for (tmp = rawlog->lines; tmp != NULL; tmp = tmp->next) {
|
||||
av_push(av, new_pv(tmp->data));
|
||||
av = newAV();
|
||||
for (tmp = rawlog->lines; tmp != NULL; tmp = tmp->next) {
|
||||
av_push(av, new_pv(tmp->data));
|
||||
}
|
||||
hv_store(hv, "lines", 5, newRV_noinc((SV*)av), 0);
|
||||
}
|
||||
hv_store(hv, "lines", 5, newRV_noinc((SV*)av), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
|
||||
void
|
||||
rawlog_destroy(rawlog)
|
||||
|
|
|
|||
|
|
@ -6,10 +6,7 @@ PREINIT:
|
|||
GSList *tmp;
|
||||
PPCODE:
|
||||
for (tmp = servers; tmp != NULL; tmp = tmp->next) {
|
||||
SERVER_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))),
|
||||
irssi_get_stash(rec))));
|
||||
XPUSHs(sv_2mortal(irssi_bless((SERVER_REC *) tmp->data)));
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -20,7 +17,7 @@ PREINIT:
|
|||
PPCODE:
|
||||
stash = gv_stashpv("Irssi::Reconnect", 0);
|
||||
for (tmp = reconnects; tmp != NULL; tmp = tmp->next) {
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(tmp->data))), stash)));
|
||||
push_bless(tmp->data, stash);
|
||||
}
|
||||
|
||||
Irssi::Connect
|
||||
|
|
@ -43,14 +40,10 @@ MODULE = Irssi PACKAGE = Irssi::Server PREFIX = server_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(server)
|
||||
init(server)
|
||||
Irssi::Server server
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
perl_server_fill_hash(hv, server);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
CODE:
|
||||
perl_server_fill_hash(hvref(ST(0)), server);
|
||||
|
||||
Irssi::Server
|
||||
server_connect(conn)
|
||||
|
|
@ -148,14 +141,10 @@ MODULE = Irssi PACKAGE = Irssi::Connect PREFIX = server_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(conn)
|
||||
init(conn)
|
||||
Irssi::Connect conn
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
perl_connect_fill_hash(hv, conn);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
CODE:
|
||||
perl_connect_fill_hash(hvref(ST(0)), conn);
|
||||
|
||||
Irssi::Server
|
||||
server_connect(conn)
|
||||
|
|
@ -166,14 +155,14 @@ MODULE = Irssi PACKAGE = Irssi::Reconnect
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(reconnect)
|
||||
init(reconnect)
|
||||
Irssi::Reconnect reconnect
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
perl_connect_fill_hash(hv, reconnect->conn);
|
||||
hv_store(hv, "tag", 3, newSViv(reconnect->tag), 0);
|
||||
hv_store(hv, "next_connect", 12, newSViv(reconnect->next_connect), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
perl_reconnect_fill_hash(hv, reconnect->conn);
|
||||
hv_store(hv, "tag", 3, newSViv(reconnect->tag), 0);
|
||||
hv_store(hv, "next_connect", 12, newSViv(reconnect->next_connect), 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,10 +5,9 @@ theme_register(formats)
|
|||
SV *formats
|
||||
PREINIT:
|
||||
AV *av;
|
||||
SV *sv;
|
||||
FORMAT_REC *formatrecs;
|
||||
char *key, *value;
|
||||
int len, n, fpos, count;
|
||||
int len, n, fpos;
|
||||
CODE:
|
||||
|
||||
if (!SvROK(formats))
|
||||
|
|
@ -19,8 +18,8 @@ CODE:
|
|||
croak("formats list is invalid - not dividable by 3 (%d)", len);
|
||||
|
||||
formatrecs = g_new0(FORMAT_REC, len/2+2);
|
||||
formatrecs[fpos].tag = g_strdup(perl_get_package());
|
||||
formatrecs[fpos].def = g_strdup("Perl script");
|
||||
formatrecs[0].tag = g_strdup(perl_get_package());
|
||||
formatrecs[0].def = g_strdup("Perl script");
|
||||
|
||||
for (fpos = 1, n = 0; n < len; n++, fpos++) {
|
||||
key = SvPV(*av_fetch(av, n, 0), PL_na); n++;
|
||||
|
|
|
|||
|
|
@ -8,9 +8,7 @@ PREINIT:
|
|||
PPCODE:
|
||||
stash = gv_stashpv("Irssi::Window", 0);
|
||||
for (tmp = windows; tmp != NULL; tmp = tmp->next) {
|
||||
WINDOW_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))), stash)));
|
||||
push_bless(tmp->data, stash);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -134,32 +132,29 @@ MODULE = Irssi PACKAGE = Irssi::Window PREFIX=window_
|
|||
#*******************************
|
||||
|
||||
void
|
||||
values(window)
|
||||
init(window)
|
||||
Irssi::Window window
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "refnum", 6, newSViv(window->refnum), 0);
|
||||
hv_store(hv, "name", 4, new_pv(window->name), 0);
|
||||
CODE:
|
||||
hv = hvref(ST(0));
|
||||
if (hv != NULL) {
|
||||
hv_store(hv, "refnum", 6, newSViv(window->refnum), 0);
|
||||
hv_store(hv, "name", 4, new_pv(window->name), 0);
|
||||
|
||||
if (window->active) {
|
||||
hv_store(hv, "active", 6, sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(window->active))),
|
||||
irssi_get_stash(window->active)), 0);
|
||||
if (window->active)
|
||||
hv_store(hv, "active", 6, irssi_bless(window->active), 0);
|
||||
if (window->active_server)
|
||||
hv_store(hv, "active_server", 13, irssi_bless(window->active_server), 0);
|
||||
|
||||
hv_store(hv, "lines", 5, newSViv(window->lines), 0);
|
||||
|
||||
hv_store(hv, "level", 5, newSViv(window->level), 0);
|
||||
hv_store(hv, "new_data", 8, newSViv(window->new_data), 0);
|
||||
hv_store(hv, "last_color", 10, newSViv(window->last_color), 0);
|
||||
hv_store(hv, "last_timestamp", 14, newSViv(window->last_timestamp), 0);
|
||||
hv_store(hv, "last_line", 9, newSViv(window->last_line), 0);
|
||||
}
|
||||
if (window->active_server) {
|
||||
hv_store(hv, "active_server", 13, sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(window->active_server))),
|
||||
irssi_get_stash(window->active_server)), 0);
|
||||
}
|
||||
|
||||
hv_store(hv, "lines", 5, newSViv(window->lines), 0);
|
||||
|
||||
hv_store(hv, "level", 5, newSViv(window->level), 0);
|
||||
hv_store(hv, "new_data", 8, newSViv(window->new_data), 0);
|
||||
hv_store(hv, "last_color", 10, newSViv(window->last_color), 0);
|
||||
hv_store(hv, "last_timestamp", 14, newSViv(window->last_timestamp), 0);
|
||||
hv_store(hv, "last_line", 9, newSViv(window->last_line), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
|
||||
void
|
||||
items(window)
|
||||
|
|
@ -170,8 +165,7 @@ PPCODE:
|
|||
for (tmp = window->items; tmp != NULL; tmp = tmp->next) {
|
||||
CHANNEL_REC *rec = tmp->data;
|
||||
|
||||
XPUSHs(sv_2mortal(sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(rec))),
|
||||
irssi_get_stash(rec))));
|
||||
XPUSHs(sv_2mortal(irssi_bless(rec)));
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -263,19 +257,6 @@ OUTPUT:
|
|||
MODULE = Irssi PACKAGE = Irssi::Windowitem
|
||||
#*******************************
|
||||
|
||||
void
|
||||
values(item)
|
||||
Irssi::Windowitem item
|
||||
PREINIT:
|
||||
HV *hv;
|
||||
PPCODE:
|
||||
hv = newHV();
|
||||
hv_store(hv, "server", 6, sv_bless(newRV_noinc(newSViv(GPOINTER_TO_INT(item->server))),
|
||||
irssi_get_stash(item->server)), 0);
|
||||
hv_store(hv, "name", 4, new_pv(item->name), 0);
|
||||
hv_store(hv, "new_data", 8, newSViv(item->new_data), 0);
|
||||
XPUSHs(sv_2mortal(newRV_noinc((SV*)hv)));
|
||||
|
||||
void
|
||||
command(item, cmd)
|
||||
Irssi::Windowitem item
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
TYPEMAP
|
||||
Irssi::Chatnet T_PTROBJ
|
||||
Irssi::Server T_PTROBJ
|
||||
Irssi::Connect T_PTROBJ
|
||||
Irssi::Chatnet T_IrssiObj
|
||||
Irssi::Server T_IrssiObj
|
||||
Irssi::Connect T_IrssiObj
|
||||
Irssi::Reconnect T_PTROBJ
|
||||
Irssi::Channel T_PTROBJ
|
||||
Irssi::Query T_PTROBJ
|
||||
Irssi::Channel T_IrssiObj
|
||||
Irssi::Query T_IrssiObj
|
||||
Irssi::Command T_PTROBJ
|
||||
Irssi::Nick T_PTROBJ
|
||||
Irssi::Nick T_IrssiObj
|
||||
Irssi::Ignore T_PTROBJ
|
||||
Irssi::Log T_PTROBJ
|
||||
Irssi::LogItem T_PTROBJ
|
||||
|
|
@ -15,4 +15,15 @@ Irssi::Module T_PTROBJ
|
|||
Irssi::Theme T_PTROBJ
|
||||
Irssi::Keyinfo T_PTROBJ
|
||||
Irssi::Window T_PTROBJ
|
||||
Irssi::Windowitem T_PTROBJ
|
||||
Irssi::Windowitem T_IrssiObj
|
||||
|
||||
INPUT
|
||||
|
||||
T_IrssiObj
|
||||
$var = irssi_ref_object($arg)
|
||||
|
||||
OUTPUT
|
||||
|
||||
T_IrssiObj
|
||||
$arg = irssi_bless((SERVER_REC *)$var);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue