private ParseNode parseNewInstance(Entry inEntry) throws ConfigurationException, IOException {
  int lineno=st.lineno();
  String typeName=token("type name");
  int t=st.nextToken();
  if (t == '[') {
    token(']');
    token('{');
    return new ArrayConstructor(typeName,parseArgs(inEntry,'}'),lineno);
  }
 else   if (t != '(') {
    syntax("'(' or '['");
  }
  return new ConstructorCall(typeName,parseArgs(inEntry,')'),lineno);
}

private ParseNode parseNewInstance ( Entry inEntry ) throws ConfigurationException , IOException { int lineno = st . lineno ( ) ; String typeName = token ( "type name" ) ; int t = st . nextToken ( ) ; if ( t == '[' ) { token ( ']' ) ; token ( '{' ) ; return new ArrayConstructor ( typeName , parseArgs ( inEntry , '}' ) , lineno ) ; } else if ( t != '(' ) { syntax ( "'(' or '['" ) ; } return new ConstructorCall ( typeName , parseArgs ( inEntry , ')' ) , lineno ) ; }
parses a newexpr except for the leading " new " , and returns the constructed object .
