code: function labelFragment(fragment, func, source) {
  
      // use 'in' to handle case where delim is set to ''
      var leftDelim   = 'leftDelim'   in source ? source.leftDelim   : '----';
      var rightDelim  = 'rightDelim'  in source ? source.rightDelim  : '----';
      var headerDelim = 'headerDelim' in source ? source.headerDelim : '';
  
      if (fragment._hdr) {
        var lines = fragment._hdr.split('\n');
        var fl = lines[0];
  
        // sanity check - make sure this fragments does not have a (func) label already
        var lbl = parseLabel(fl.slice(leftDelim.length, fl.length - rightDelim.length), false, source.slugify);
        if (lbl.func) return false;
  
        lines[0] = fl.slice(0, fl.length - rightDelim.length) + ' (' + func + ') ' + rightDelim;
        fragment._hdr = lines.join('\n');
      }
      else {
        fragment._hdr = leftDelim + ' (' + func + ') ' + rightDelim
                        + '\n' + headerDelim + '\n';
      }
      return true;
    }
docs: should move into util or parsefragments.js