code: private boolean getClause(Iterator tokens, List clause) {
      while(tokens.hasNext()) {
        Object token = tokens.next();
        if (token == matchMany)
          return true;
        clause.add(token);
      }
      return false;
    }
docs: matchMany, false if it was ended by running out of tokens.