matches.js
function nodeClass (name, res) {
    var patt = name;
    if (res) {
      patt += res.type === "array"
        ? "(" + res.pattern.substring(1, res.pattern.length - 1) + ")"
        : res.pattern;
    }
    return node("class", patt, name, res ? [res] : undefined);
  }
function nodeClass (name, res) {
    var patt = name;
    if (res) {
      patt += res.type === "array"
        ? "(" + res.pattern.substring(1, res.pattern.length - 1) + ")"
        : res.pattern;
    }
    return node("class", patt, name, res ? [res] : undefined);
  }
function nodeClass ( name , res ) { var patt = name ; if ( res ) { patt += res . type === "array" ? "(" + res . pattern . substring ( 1 , res . pattern . length - 1 ) + ")" : res . pattern ; } return node ( "class" , patt , name , res ? [ res ] : undefined ) ; }
Array-like class destructuring results in a child array node, but the pattern is inacurately reflected as being surrounded by brackets. We check for that and correct it.
Array - like class destructuring results in a child array node but the pattern is inacurately reflected as being surrounded by brackets . We check for that and correct it .