Title: [1470] trunk/qdox/src: Add AssignOperators

Diff

Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/builder/impl/DefaultAnnotationTransformer.java (1469 => 1470)


--- trunk/qdox/src/main/java/com/thoughtworks/qdox/builder/impl/DefaultAnnotationTransformer.java	2011-12-29 13:36:41 UTC (rev 1469)
+++ trunk/qdox/src/main/java/com/thoughtworks/qdox/builder/impl/DefaultAnnotationTransformer.java	2011-12-30 00:11:59 UTC (rev 1470)
@@ -62,6 +62,7 @@
 import com.thoughtworks.qdox.model.impl.DefaultJavaAnnotation;
 import com.thoughtworks.qdox.parser._expression_.AddDef;
 import com.thoughtworks.qdox.parser._expression_.AndDef;
+import com.thoughtworks.qdox.parser._expression_.AssignmentDef;
 import com.thoughtworks.qdox.parser._expression_.CastDef;
 import com.thoughtworks.qdox.parser._expression_.ConstantDef;
 import com.thoughtworks.qdox.parser._expression_.DivideDef;
@@ -398,4 +399,10 @@
         JavaType type = createType( annotationTypeRef.getTypeDef(), annotationTypeRef.getTypeDef().getDimensions() );
         return new TypeRef( type );
     }
+
+    public AnnotationValue transform( AssignmentDef assignmentDef )
+    {
+        // TODO Auto-generated method stub
+        return null;
+    }
 }
\ No newline at end of file

Added: trunk/qdox/src/main/java/com/thoughtworks/qdox/parser/_expression_/AssignmentDef.java (0 => 1470)


--- trunk/qdox/src/main/java/com/thoughtworks/qdox/parser/_expression_/AssignmentDef.java	                        (rev 0)
+++ trunk/qdox/src/main/java/com/thoughtworks/qdox/parser/_expression_/AssignmentDef.java	2011-12-30 00:11:59 UTC (rev 1470)
@@ -0,0 +1,55 @@
+package com.thoughtworks.qdox.parser._expression_;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class AssignmentDef implements ElemValueDef
+{
+
+    private ElemValueDef letfHandSide;
+    private String operator;
+    private ElemValueDef assignmentExpression;
+    
+    public AssignmentDef( ElemValueDef letfHandSide, String operator, ElemValueDef assignmentExpression )
+    {
+        this.letfHandSide = letfHandSide;
+        this.operator = operator;
+        this.assignmentExpression = assignmentExpression;
+    }
+    
+    public ElemValueDef getLetfHandSide()
+    {
+        return letfHandSide;
+    }
+    
+    public String getOperator()
+    {
+        return operator;
+    }
+    
+    public ElemValueDef getAssignmentExpression()
+    {
+        return assignmentExpression;
+    }
+
+    public <U> U transform( TransformerDef<U> transformer )
+    {
+        return transformer.transform(this);
+    }
+}
\ No newline at end of file

Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/parser/_expression_/TransformerDef.java (1469 => 1470)


--- trunk/qdox/src/main/java/com/thoughtworks/qdox/parser/_expression_/TransformerDef.java	2011-12-29 13:36:41 UTC (rev 1469)
+++ trunk/qdox/src/main/java/com/thoughtworks/qdox/parser/_expression_/TransformerDef.java	2011-12-30 00:11:59 UTC (rev 1470)
@@ -67,4 +67,5 @@
 
     U transform( ElemValueListDef elemValueListDef );
 
+    U transform( AssignmentDef assignmentDef );
 }
\ No newline at end of file

Modified: trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java (1469 => 1470)


--- trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java	2011-12-29 13:36:41 UTC (rev 1469)
+++ trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java	2011-12-30 00:11:59 UTC (rev 1470)
@@ -1353,6 +1353,25 @@
     }
     
     
+    public void testEnumConstantArguments() throws Exception
+    {
+        String source = "public enum AssignmentOperators {" +
+        		" EQ    ( a = b )," +
+        		" TMSEQ ( a *= b )," +
+        		" DVDEQ ( a /= b )," +
+        		" MODEQ ( a %= b )," +
+        		" PLEQ  ( a += b )," +
+        		" MNEQ  ( a -= b )," +
+        		" LT2EQ ( a <<= b )," +
+                " GT2EQ ( a >>= b )," +
+                " GT3EQ ( a >>>= b )," +
+                " ANDEQ ( a &= b )," +
+                " XOREQ ( a ^= b )," +
+                " OREQ  ( a |= b )" +
+        		" }";
+        builder.addSource(new StringReader( source ));
+    }
+    
     // for QDOX-230
     public void testInterfaceAnnotations() throws Exception {
         String source = "@RemoteServiceRelativePath(\"greetings\")\r\n" + 

To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to