SYNOPSIS

void flag( string arg)

DESCRIPTION

Evaluate an argument given as option ‘-f’ to the driver. If several ‘-f’ options are given, this function will be called sequentially with all given arguments. This function can be used to pass the master commands via arguments to the driver. This is useful when building a new mudlib from scratch. It is called only when the system is started.

USAGE

// The code given implements these commands:
//  '-fcall <ob> <fun> <arg>': call function <fun> in object <ob> with
//                                argument <arg>.
//  '-fshutdown': shutdown the system immediately.
// Thus, starting the driver as
//         'parse "-fcall foo bar Yow!" -fshutdown' would
// first do foo->bar("Yow!") and then shut down the system.

{
  string obj, fun, rest;

  if (arg == "shutdown")
  {
    shutdown();
    return;
  }
  if (sscanf(arg, "call %s %s %s", obj, fun, rest) >= 2)
  {
    write(obj+"->"+fun+"(\""+rest+"\") = ");
    write(call_other(obj, fun, rest));
    write("\n");
    return;
  }
  write("master: Unknown flag "+arg+"\n");
}