Method code for $tag.new_tag()

[Turn off line numbering]
  1: arg name, flags, args, method;
  2: var item, eflags;
  3: 
  4: eflags = [];
  5: for item in (flags) {
  6:     switch (type(item)) {
  7:         case 'string:
  8:             eflags = eflags.addkey(item, 1);
  9:         case 'list:
 10:             if (type(item[1]) != 'string)
 11:                 throw(~flagerr, "Flag name must be a string.");
 12:             eflags = eflags.addkey(item[1], item[2]);
 13:         default:
 14:             throw(~flagerr, "Flag must be a string or key,value pair.");
 15:     }
 16: }
 17: return (<this(), [name, eflags, args, method]>);

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

Tlon