docs: private static ConstructorNode getMatchingConstructor(List<ConstructorNode> constructors, List<Expression> argumentList) {
          ConstructorNode lastMatch = null;
          for (int i=0; i<constructors.size(); i++) {
              ConstructorNode cn = constructors.get(i);
              Parameter[] params = cn.getParameters();
              // if number of parameters does not match we have no match
              if (argumentList.size()!=params.length) continue;
              if (lastMatch==null) {
                  lastMatch = cn;
              } else {
                  // we already had a match so we don't make a direct call at all
                  return null;
              }
          }
          return lastMatch;
      }