boolean attemptSetPropertyValue(String propName,Object value,Interpreter interp) throws UtilEvalError {
  String accessorName=Reflect.accessorName("set",propName);
  Class[] classArray=new Class[]{value == null ? null : value.getClass()};
  BshMethod m=getMethod(accessorName,classArray);
  if (m != null) {
    try {
      invokeMethod(accessorName,new Object[]{value},interp);
      return true;
    }
 catch (    EvalError ee) {
      throw new UtilEvalError("'This' property accessor threw exception: " + ee.getMessage());
    }
  }
  return false;
}

boolean attemptSetPropertyValue ( String propName , Object value , Interpreter interp ) throws UtilEvalError { String accessorName = Reflect . accessorName ( "set" , propName ) ; Class [ ] classArray = new Class [ ] { value == null ? null : value . getClass ( ) } ; BshMethod m = getMethod ( accessorName , classArray ) ; if ( m != null ) { try { invokeMethod ( accessorName , new Object [ ] { value } , interp ) ; return true ; } catch ( EvalError ee ) { throw new UtilEvalError ( "'This' property accessor threw exception: " + ee . getMessage ( ) ) ; } } return false ; }
if a writable property exists for the given name , set it and return true , otherwise do nothing and return false .
