nashorn/src/jdk/nashorn/internal/ir/UnaryNode.java
changeset 21457 381acbd07fe5
parent 20928 3ff39d5c8c08
child 24719 f726e9d67629
equal deleted inserted replaced
21454:f165bf93bb48 21457:381acbd07fe5
   127 
   127 
   128         return this;
   128         return this;
   129     }
   129     }
   130 
   130 
   131     @Override
   131     @Override
       
   132     public boolean isLocal() {
       
   133         switch (tokenType()) {
       
   134             case NEW:
       
   135                 return false;
       
   136             case ADD:
       
   137             case SUB:
       
   138             case NOT:
       
   139             case BIT_NOT:
       
   140                 return rhs.isLocal() && rhs.getType().isJSPrimitive();
       
   141             case DECPOSTFIX:
       
   142             case DECPREFIX:
       
   143             case INCPOSTFIX:
       
   144             case INCPREFIX:
       
   145                 return rhs instanceof IdentNode && rhs.isLocal() && rhs.getType().isJSPrimitive();
       
   146             default:
       
   147                 return rhs.isLocal();
       
   148         }
       
   149     }
       
   150 
       
   151     @Override
   132     public void toString(final StringBuilder sb) {
   152     public void toString(final StringBuilder sb) {
   133         toString(sb, new Runnable() {
   153         toString(sb, new Runnable() {
   134             @Override
   154             @Override
   135             public void run() {
   155             public void run() {
   136                 sb.append(rhs().toString());
   156                 sb.append(rhs().toString());