#include "pari.h"
#include "paripriv.h"
#include "gp.h"
#include "whatnow.h"
static void
msg(PariOUT *out, const char *s)
{
out_term_color(out, c_HELP);
out_print_text(out, s);
out_putc(out, '\n');
out_term_color(out, c_NONE);
}
int
whatnow(PariOUT *out, const char *s, int flag)
{
const char *def;
const whatnow_t *wp = whatnowlist;
entree *ep;
while (wp->old && strcmp(wp->old,s)) wp++;
if (!wp->old)
{
if (!flag)
msg(out, "As far as I can recall, this function never existed");
return 0;
}
def = wp->name;
if (def == SAME)
{
if (!flag)
msg(out, "This function did not change");
return 0;
}
if (flag)
{
out_term_color(out, c_NONE);
out_print_text(out, "\nA function with that name existed in GP-1.39.15. Please update your script.");
out_putc(out, '\n');
}
if (def == REMOV)
{
msg(out, "This function no longer exists");
return 0;
}
if (!strcmp(def,"x*y")) def = "_*_";
ep = is_entry(def);
if (!ep) pari_err_BUG("whatnow");
out_puts(out, "New syntax: ");
out_term_color(out, c_ERR);
out_printf(out, "%s%s ===> %s%s\n\n", s, wp->oldarg, wp->name, wp->newarg);
msg(out, ep->help);
out_term_color(out, c_NONE); return 1;
}