Method code for $compiler._make_tag()

[Turn off line numbering]
  1: arg token, mode, vars, name, flags, args;
  2: var method, class;
  3: 
  4: if (mode == 'fmtname) {
  5:     if (token != "}")
  6:         throw(~parse, "Extra ']' encountered.");
  7:     method = tosym("do_" + name.strip());
  8:     class = $format;
  9: }
 10: if (mode == 'genname) {
 11:     if (token != "]")
 12:         throw(~parse, "Extra '}' encountered.");
 13:     method = tosym("gen_" + name.strip());
 14:     class = $generator;
 15: }
 16: catch ~methodnf
 17:     return (> .(method)(vars, flags, args) <);
 18: with
 19:     return (> [class.new_tag(name, flags, args), vars] <);

// Created 17-Jul-1996 as a part of ColdCore, see: @help Credit

Tlon