Coverage report

  %line %branch
org.apache.commons.jexl.parser.ASTAssignment
79% 
100% 

 1  
 /*
 2  
  * Copyright 2002-2006 The Apache Software Foundation.
 3  
  *
 4  
  * Licensed under the Apache License, Version 2.0 (the "License");
 5  
  * you may not use this file except in compliance with the License.
 6  
  * You may obtain a copy of the License at
 7  
  *
 8  
  *      http://www.apache.org/licenses/LICENSE-2.0
 9  
  *
 10  
  * Unless required by applicable law or agreed to in writing, software
 11  
  * distributed under the License is distributed on an "AS IS" BASIS,
 12  
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13  
  * See the License for the specific language governing permissions and
 14  
  * limitations under the License.
 15  
  */
 16  
 
 17  
 package org.apache.commons.jexl.parser;
 18  
 
 19  
 import org.apache.commons.jexl.JexlContext;
 20  
 
 21  
 /**
 22  
  * x = y, assigns a value to a variable in the context.
 23  
  * 
 24  
  * @author Dion Gillard
 25  
  * 
 26  
  */
 27  
 public class ASTAssignment extends SimpleNode {
 28  
     /**
 29  
      * Create the node given an id.
 30  
      * 
 31  
      * @param id node id.
 32  
      */
 33  
     public ASTAssignment(int id) {
 34  0
         super(id);
 35  0
     }
 36  
 
 37  
     /**
 38  
      * Create a node with the given parser and id.
 39  
      * 
 40  
      * @param p a parser.
 41  
      * @param id node id.
 42  
      */
 43  
     public ASTAssignment(Parser p, int id) {
 44  35
         super(p, id);
 45  35
     }
 46  
 
 47  
     /** {@inheritDoc} */
 48  
     public Object jjtAccept(ParserVisitor visitor, Object data) {
 49  0
         return visitor.visit(this, data);
 50  
     }
 51  
 
 52  
     /** {@inheritDoc} */
 53  
     public Object value(JexlContext context) throws Exception {
 54  
         // left should be the variable (reference) to assign to
 55  53
         SimpleNode left = (SimpleNode) jjtGetChild(0);
 56  
         // right should be the expression to evaluate
 57  53
         Object right = ((SimpleNode) jjtGetChild(1)).value(context);
 58  53
         if (left instanceof ASTReference) {
 59  53
             ASTReference reference = (ASTReference) left;
 60  53
             left = (SimpleNode) reference.jjtGetChild(0);
 61  53
             if (left instanceof ASTIdentclass="keyword">ifier) {
 62  53
                 String identifier = ((ASTIdentifier) left)
 63  
                         .getIdentifierString();
 64  53
                 context.getVars().put(identifier, right);
 65  
             }
 66  
         }
 67  53
         return right;
 68  
     }
 69  
 }

This report is generated by jcoverage, Maven and Maven JCoverage Plugin.