#include "IdTable.h" #include "String.h" #include #include #include IvlIdTableOf table (2); main () { char line [256]; char *s; int i = 0; printf ("? to get help\n"); for (;;) { s = gets (line); if (! s) break; if (strcmp (s, ".") == 0) break; /* help */ if (strcmp (s, "?") == 0) { printf ("name\tadd name\n"); printf ("-id\tdelete name associated to id\n"); printf ("#\tdump table\n"); printf (".\tquit\n"); continue; } if (strcmp (s, "#") == 0) { IvlIdIter hi = table; while (++hi) printf ("%d: %s\n", hi.CurId (), *hi); continue; } /* delete */ if (*s == '-') { bool found; IvlID id = (IvlID) (atoi (++s)); printf ("searching id %d\n", id); char* info = table.Remove (id, &found); if (! found) printf ("%s not found\n", s); else { printf ("%s had info %s\n", s, info); FreeString (info); } continue; } /* add */ IvlID id = table.Store (NewString (s)); printf ("-> %d\n", id); } }