Title: [593] trunk/qdox/src/grammar: fix/text for qdox-161: annotation with comment
Revision
593
Author
rfscholte
Date
2009-05-01 09:41:16 -0500 (Fri, 01 May 2009)

Log Message

fix/text for qdox-161: annotation with comment

Modified Paths


Diff

Modified: trunk/qdox/src/grammar/lexer.flex (592 => 593)

--- trunk/qdox/src/grammar/lexer.flex	2009-04-21 20:35:35 UTC (rev 592)
+++ trunk/qdox/src/grammar/lexer.flex	2009-05-01 14:41:16 UTC (rev 593)
@@ -424,11 +424,14 @@
 <ASSIGNMENT, YYINITIAL, CODEBLOCK, PARENBLOCK, ENUM> {
     "\""                { if (appendingToCodeBody) { codeBody.append('"');  } pushState(STRING); }
     \'                  { if (appendingToCodeBody) { codeBody.append('\''); } pushState(CHAR); }
-    "//"                { if (appendingToCodeBody) { codeBody.append("//"); } pushState(SINGLELINECOMMENT); }
-    "/*"                { if (appendingToCodeBody) { codeBody.append("/*"); } pushState(MULTILINECOMMENT); }
-    "/**/"              { if (appendingToCodeBody) { codeBody.append("/**/"); } }
 }
 
+<ASSIGNMENT, YYINITIAL, CODEBLOCK, PARENBLOCK, ENUM, ANNOTATION> {
+  "//"                { if (appendingToCodeBody) { codeBody.append("//"); } pushState(SINGLELINECOMMENT); }
+  "/*"                { if (appendingToCodeBody) { codeBody.append("/*"); } pushState(MULTILINECOMMENT); }
+  "/**/"              { if (appendingToCodeBody) { codeBody.append("/**/"); } }
+}
+
 <CODEBLOCK, ASSIGNMENT> { 
     .|{WhiteSpace}	    { codeBody.append(yytext()); }
 }

Modified: trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java (592 => 593)

--- trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java	2009-04-21 20:35:35 UTC (rev 592)
+++ trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java	2009-05-01 14:41:16 UTC (rev 593)
@@ -1056,4 +1056,13 @@
     	JavaClass javaClass = javaSource.getClasses()[0];
         assertEquals(javaClass.getFieldByName( "TEST2" ).getInitializationExpression(), "\"test2\"");
     }
+    
+    public void testAnnotationWithComment() throws Exception {
+    	String source = "@OneToMany(cascade = {/* CascadeType.PERSIST */}, fetch = FetchType.LAZY)\n" +
+    			"public class Foo{}"; 
+    	JavaSource javaSource = builder.addSource(new StringReader(source));
+    	JavaClass javaClass = javaSource.getClasses()[0];
+    	assertNotNull(javaClass.getAnnotations()[0].getNamedParameter("cascade"));
+    } 
+    
 }


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to