ref: 2716869c69ae007306e1b2bacfc0bf7adbccb0fc
dir: /fmt.c/
#include <u.h>
#include <libc.h>
#include "dat.h"
#include "fns.h"
int
Rfmt(Fmt *f)
{
Request r;
r = va_arg(f->args, Request);
return fmtprint(f, "\n"
" prefix: '%s' ! '%s' @ '%s'\n"
" cmd: '%s'\n"
" args: '%s' '%s' '%s' '%s' '%s'"
" '%s' '%s' '%s' '%s' '%s'"
" '%s' '%s' '%s' '%s' '%s'\n",
r.prefix.name, r.prefix.user, r.prefix.host,
r.cmd ? r.cmd->name : nil,
r.args[0], r.args[1], r.args[2], r.args[3], r.args[4],
r.args[5], r.args[6], r.args[7], r.args[8], r.args[9],
r.args[10], r.args[11], r.args[12], r.args[13], r.args[14]
);
}
int
Ifmt(Fmt *f)
{
Client *c;
int valid;
c = va_arg(f->args, Client*);
valid = c->user && c->user->host && c->user->name;
return fmtprint(f, "%s%s%s%s%s",
c->nick,
valid ? "!" : "",
valid ? c->user->name : "",
valid ? "@" : "",
valid ? c->user->host : ""
);
}