log.xs
来自「Linux下的多协议即时通讯程序源代码」· XS 代码 · 共 119 行
XS
119 行
#include "module.h"MODULE = Purple::Log PACKAGE = Purple::Log PREFIX = purple_log_PROTOTYPES: ENABLEBOOT:{ HV *type_stash = gv_stashpv("Purple::Log::Type", 1); HV *flags_stash = gv_stashpv("Purple::Log:ReadFlags::", 1); static const constiv *civ, type_const_iv[] = {#define const_iv(name) {#name, (IV)PURPLE_LOG_##name} const_iv(IM), const_iv(CHAT), const_iv(SYSTEM), }; static const constiv flags_const_iv[] = {#undef const_iv#define const_iv(name) {#name, (IV)PURPLE_LOG_READ_##name} const_iv(NO_NEWLINE), }; for (civ = type_const_iv + sizeof(type_const_iv) / sizeof(type_const_iv[0]); civ-- > type_const_iv; ) newCONSTSUB(type_stash, (char *)civ->name, newSViv(civ->iv)); for (civ = flags_const_iv + sizeof(flags_const_iv) / sizeof(flags_const_iv[0]); civ-- > flags_const_iv; ) newCONSTSUB(flags_stash, (char *)civ->name, newSViv(civ->iv));}intpurple_log_common_sizer(log) Purple::Log logvoidpurple_log_common_writer(log, ext) Purple::Log log const char *extgintpurple_log_compare(y, z) gconstpointer y gconstpointer zvoidpurple_log_free(log) Purple::Log loggchar_own *purple_log_get_log_dir(type, name, account) Purple::LogType type const char *name Purple::Account accountvoidpurple_log_get_log_sets()PREINIT: GHashTable *l;PPCODE: l = purple_log_get_log_sets(); XPUSHs(sv_2mortal(purple_perl_bless_object(l, "GHashTable")));voidpurple_log_get_logs(type, name, account) Purple::LogType type const char *name Purple::Account accountPREINIT: GList *l;PPCODE: for (l = purple_log_get_logs(type, name, account); l != NULL; l = l->next) { XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::ListEntry"))); }intpurple_log_get_size(log) Purple::Log logvoidpurple_log_get_system_logs(account) Purple::Account accountPREINIT: GList *l;PPCODE: for (l = purple_log_get_system_logs(account); l != NULL; l = l->next) { XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::ListEntry"))); }intpurple_log_get_total_size(type, name, account) Purple::LogType type const char *name Purple::Account accountvoidpurple_log_init()voidpurple_log_logger_free(logger) Purple::Log::Logger loggervoidpurple_log_logger_get_options()PREINIT: GList *l;PPCODE: for (l = purple_log_logger_get_options(); l != NULL; l = l->next) { XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::ListEntry"))); }gchar_own *purple_log_read(log, flags) Purple::Log log Purple::Log::ReadFlags flagsgintpurple_log_set_compare(y, z) gconstpointer y gconstpointer z
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?