Warning: session_start(): open(/var/lib/php/sessions/sess_ou6pmjgcrnedgegfjjk840fr8d, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
!752
static class Feedback {
long date;
int goodBadNotSure; // +1 (good) / -1 (bad) / 0 (not sure)
S user;
S comment;
}
static class Action {
S input;
S output;
S algorithmMD5;
long date;
new L feedback;
}
static new L actionLog;
p {
load("actionLog");
}
synchronized answer {
if (match("parse answer function of *", s, m)
|| match("show answer function of *", s, m)) try {
S botID = m.fsi(0);
O bot = getBot(botID);
S mainJava = getMainJava(bot);
L tok = javaTok(mainJava);
int i = jfind(tok, "String answer(String");
if (i < 0)
ret "No answer function found...";
i = leftScanModifiers(tok, i);
int j = findBeginningOfBlock(tok, i);
j = findEndOfBlock(tok, j);
S func = join(tok.subList(i, j));
boolean fullParse = matchStart("parse", s);
S answer = func;
if (fullParse) {
L lines = toLines(answer);
for (i = 0; i < l(lines); i++) {
S line = lines.get(i);
boolean ok = false;
pcall {
ok = jparse(line, "statement") != null;
}
lines.set(i, (ok ? "STA" : "???") + " " + line);
}
answer = fromLines(lines);
}
answer = slackSnippet(answer);
O parsed = null;
pcall {
parsed = jparse(func, "method");
}
answer = (parsed != null ? "parses." : "does not parse.") + "\n" + answer;
ret answer;
} catch (Throwable e) {
ret exceptionToUser(e);
}
}