whole_func_string: function(match, strUntilValue, name, value, index) {
    var self = this;
    var containsTemplate = false;
  
    // Check if attribute is included in the "attributes" option
    if (!this.isRelevantTagAttr(this.currentTag, name)) {
      return;
    }
  
    this.matches.push({
      start: index + strUntilValue.length,
      length: value.length,
      value: value,
      containsTemplate: isTemplate(value)
    });
  }
func_code_string: function(match, strUntilValue, name, value, index) {
    var self = this;
    var containsTemplate = false;
  
    // Check if attribute is included in the "attributes" option
    if (!this.isRelevantTagAttr(this.currentTag, name)) {
      return;
    }
  
    this.matches.push({
      start: index + strUntilValue.length,
      length: value.length,
      value: value,
      containsTemplate: isTemplate(value)
    });
  }
func_documentation_string: PARSER
   Process a tag attribute