Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

This commit was manufactured by cvs2svn to create tag

'GROOVY_1_0_JSR_05'.

git-svn-id: http://svn.codehaus.org/groovy/tags/GROOVY_1_0_JSR_05@3557 a5544e8c-8a19-0410-ba12-f9af4593a198
  • Loading branch information...
commit d1f1b7a4ed550f7c0c60babdccb2a8fe967c7731 1 parent 481ffeb
@codehaus-support codehaus-support authored
Showing with 0 additions and 37,557 deletions.
  1. +0 −15 CVSROOT/checkoutlist
  2. +0 −15 CVSROOT/commitinfo
  3. +0 −5 CVSROOT/damagecontrol-groovy.conf
  4. +0 −10 CVSROOT/dctrigger.rb
  5. +0 −21 CVSROOT/editinfo
  6. +0 −83 CVSROOT/log_accum.conf
  7. +0 −26 CVSROOT/modules
  8. +0 −12 CVSROOT/notify
  9. +0 −13 CVSROOT/rcsinfo
  10. +0 −20 CVSROOT/taginfo
  11. +0 −21 CVSROOT/verifymsg
  12. +0 −3  groovy/.cvsignore
  13. +0 −120 groovy/groovy-native/README
  14. +0 −15 groovy/groovy-native/examples/001-standalone-executable/README
  15. +0 −19 groovy/groovy-native/examples/001-standalone-executable/Simple.groovy
  16. +0 −6 groovy/groovy-native/examples/001-standalone-executable/build.sh
  17. +0 −16 groovy/groovy-native/examples/README
  18. +0 −59 groovy/groovy-native/libgroovy/README
  19. +0 −10 groovy/groovy-native/libgroovy/asm-src
  20. +0 −44 groovy/groovy-native/libgroovy/build.sh
  21. +0 −128 groovy/groovy-native/libgroovy/groovy-src
  22. +0 −82 groovy/groovy-native/libgroovy/patch.diff
  23. +0 −69 groovy/jsr/build.xml
  24. +0 −1  groovy/jsr/ideas/README.txt
  25. +0 −236 groovy/jsr/ideas/parsers/antlr/build.xml
  26. BIN  groovy/jsr/ideas/parsers/antlr/lib/antlr-2.7.5.jar
  27. BIN  groovy/jsr/ideas/parsers/antlr/lib/xpp3-1.1.3.4d_b4_min.jar
  28. BIN  groovy/jsr/ideas/parsers/antlr/lib/xstream-1.1.jar
  29. +0 −11 groovy/jsr/ideas/parsers/antlr/licenses/antlr.license.txt
  30. +0 −46 groovy/jsr/ideas/parsers/antlr/licenses/xpp3-license.txt
  31. +0 −27 groovy/jsr/ideas/parsers/antlr/licenses/xstream-1.1-license.txt
  32. +0 −9 groovy/jsr/ideas/parsers/antlr/misc/README.txt
  33. +0 −23 groovy/jsr/ideas/parsers/antlr/misc/antlr_grammar_files.xml
  34. +0 −1,273 groovy/jsr/ideas/parsers/antlr/misc/java.g
  35. +0 −69 groovy/jsr/ideas/parsers/antlr/misc/make-antlr-runtime.sh
  36. +0 −3,030 groovy/jsr/ideas/parsers/antlr/misc/studmanPlusGroovy.g
  37. BIN  groovy/jsr/ideas/parsers/antlr/misc/syndiag-0.0.1.jar
  38. +0 −4 groovy/jsr/ideas/parsers/antlr/run.sh
  39. +0 −2  groovy/jsr/ideas/parsers/antlr/src/manifest.txt
  40. +0 −78 groovy/jsr/ideas/parsers/antlr/test/org/codehaus/groovy/antlr/AllTests.java
  41. +0 −41 groovy/jsr/ideas/parsers/antlr/test/org/codehaus/groovy/antlr/GroovyMainTestSupport.java
  42. +0 −39 groovy/jsr/ideas/parsers/antlr/test/org/codehaus/groovy/antlr/GroovyRecognizerTest.java
  43. +0 −107 groovy/jsr/ideas/parsers/antlr/test/org/codehaus/groovy/antlr/TestSuiteSupport.java
  44. +0 −92 groovy/jsr/ideas/parsers/antlr/test/org/codehaus/groovy/antlr/UberTests.java
  45. +0 −49 groovy/jsr/ideas/parsers/antlr/treewalker/build.xml
  46. BIN  groovy/jsr/ideas/parsers/antlr/treewalker/lib/antlr.jar
  47. +0 −2,263 groovy/jsr/ideas/parsers/antlr/treewalker/src/GroovyRecognizerTree.g
  48. +0 −487 groovy/jsr/ideas/parsers/antlr/treewalker/tree.construction.patch
  49. +0 −29 groovy/jsr/ideas/parsers/antlr/treewalker/tree.fixes.patch
  50. +0 −10 groovy/jsr/ideas/parsers/bpwj/README.txt
  51. +0 −200 groovy/jsr/ideas/parsers/bpwj/build.xml
  52. BIN  groovy/jsr/ideas/parsers/bpwj/lib/bpwj-1.0.jar
  53. +0 −227 groovy/jsr/ideas/parsers/bpwj/licenses/LICENSE.txt
  54. +0 −2,671 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/JavaParser.java
  55. +0 −61 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/LoggingAlternation.java
  56. +0 −21 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/LoggingJavaParser.java
  57. +0 −132 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/LoggingTrackSequence.java
  58. +0 −57 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/ParserFacade.java
  59. +0 −60 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/ParserMain.java
  60. +0 −103 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/ShowJavaParser.java
  61. +0 −111 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/TrackSequence.java
  62. +0 −80 groovy/jsr/ideas/parsers/bpwj/src/com/javanicus/bpwj/TrackSequenceException.java
  63. +0 −2  groovy/jsr/ideas/parsers/bpwj/src/manifest.txt
  64. +0 −61 groovy/jsr/ideas/parsers/bpwj/test/com/javanicus/bpwj/JavaParserTest.java
  65. +0 −59 groovy/jsr/ideas/parsers/bpwj/test/com/javanicus/bpwj/QualifiedIdentifierTest.java
  66. +0 −34 groovy/jsr/spec/SearchAndReplace
  67. +0 −52 groovy/jsr/spec/SearchAndReplaceRegex
  68. +0 −141 groovy/jsr/spec/TemplatePage.html
  69. +0 −53 groovy/jsr/spec/biscuit.css
  70. +0 −47 groovy/jsr/spec/build.xml
  71. +0 −53 groovy/jsr/spec/fullscreen.css
  72. BIN  groovy/jsr/spec/groovy-logo.png
  73. BIN  groovy/jsr/spec/info.png
  74. BIN  groovy/jsr/spec/lib/biscuit.jar
  75. BIN  groovy/jsr/spec/minus.png
  76. BIN  groovy/jsr/spec/plus.png
  77. +0 −53 groovy/jsr/spec/src/biscuit.css
  78. BIN  groovy/jsr/spec/src/groovy-logo.png
  79. +0 −335 groovy/jsr/spec/src/wiki/AltChapter03LexicalStructure
  80. +0 −46 groovy/jsr/spec/src/wiki/Chapter01Introduction
  81. +0 −426 groovy/jsr/spec/src/wiki/Chapter03Lexical
  82. +0 −131 groovy/jsr/spec/src/wiki/Chapter03Lexical-Proposal
  83. +0 −139 groovy/jsr/spec/src/wiki/Chapter04Types
  84. +0 −115 groovy/jsr/spec/src/wiki/Chapter05Conversions
  85. +0 −307 groovy/jsr/spec/src/wiki/Chapter06Names
  86. +0 −233 groovy/jsr/spec/src/wiki/Chapter14Blocks
  87. +0 −585 groovy/jsr/spec/src/wiki/Chapter15Expressions
  88. +0 −11 groovy/jsr/spec/src/wiki/Chapter18Syntax
  89. +0 −5 groovy/jsr/spec/src/wiki/JLSDifferences
  90. +0 −53 groovy/jsr/spec/src/wiki/biscuit.css
  91. BIN  groovy/jsr/spec/src/wiki/groovy-logo.png
  92. +0 −25 groovy/jsr/spec/src/wiki/index
  93. +0 −2  groovy/jsr/tck/README.txt
  94. +0 −219 groovy/jsr/tck/build.xml
  95. BIN  groovy/jsr/tck/lib/groovy-all-1.0-beta-8.jar
  96. +0 −2  groovy/jsr/tck/src/manifest.txt
  97. +0 −84 groovy/jsr/tck/src/org/codehaus/groovy/tck/BatchGenerate.groovy
  98. +0 −94 groovy/jsr/tck/src/org/codehaus/groovy/tck/ClassicGroovyTestGeneratorHelper.java
  99. +0 −387 groovy/jsr/tck/src/org/codehaus/groovy/tck/GenerateTestCases.java
  100. +0 −184 groovy/jsr/tck/src/org/codehaus/groovy/tck/TestGenerator.groovy
  101. +0 −8 groovy/jsr/tck/src/org/codehaus/groovy/tck/TestGeneratorHelper.java
  102. +0 −723 groovy/jsr/tck/styles/junit-frames.xsl
  103. +0 −23 groovy/jsr/tck/test/gls/ch03/s01/Unicode1.groovy
  104. +0 −26 groovy/jsr/tck/test/gls/ch03/s02/Longest1.groovy
  105. +0 −18 groovy/jsr/tck/test/gls/ch03/s03/CommentSeparatesTokens.groovy
  106. +0 −77 groovy/jsr/tck/test/gls/ch03/s03/UnicodeEscapes1.groovy
  107. +0 −19 groovy/jsr/tck/test/gls/ch03/s04/AllowedLineTerminators1.groovy
  108. +0 −19 groovy/jsr/tck/test/gls/ch03/s04/AllowedLineTerminators2.groovy
  109. +0 −22 groovy/jsr/tck/test/gls/ch03/s05/EndWithSUB1.groovy
  110. +0 −20 groovy/jsr/tck/test/gls/ch03/s05/EndWithSUB2.groovy
  111. +0 −28 groovy/jsr/tck/test/gls/ch03/s06/WhitespaceChars.groovy
  112. +0 −21 groovy/jsr/tck/test/gls/ch03/s07/HashComment.groovy
  113. +0 −47 groovy/jsr/tck/test/gls/ch03/s07/NormalComment.groovy
  114. +0 −71 groovy/jsr/tck/test/gls/ch03/s08/IdentifierChars.groovy
  115. +0 −23 groovy/jsr/tck/test/gls/ch03/s08/IdentifierLength.groovy
  116. +0 −20 groovy/jsr/tck/test/gls/ch03/s10/BooleanLiterals.groovy
  117. +0 −120 groovy/jsr/tck/test/gls/ch03/s10/IntegerLiterals.groovy
  118. +0 −29 groovy/jsr/tck/test/gls/ch03/s10/NullLiteral.groovy
  119. +0 −52 groovy/jsr/tck/test/gls/ch03/s10/StringEscapes.groovy
  120. +0 −86 groovy/jsr/tck/test/gls/ch14/s4/LocalVariableDeclarationStatements1.groovy
  121. +0 −15 groovy/jsr/tck/test/gls/ch14/s4/LocalVariableDeclarationStatements2.groovy
  122. +0 −11 groovy/jsr/tck/test/gls/ch14/s4/LocalVariableDeclarationStatements3.groovy
  123. +0 −10 groovy/jsr/tck/test/gls/ch14/s4/LocalVariableDeclarationStatements4.groovy
  124. +0 −22 groovy/jsr/tck/test/misc/AnnotationTest.groovy
  125. +0 −17 groovy/jsr/tck/test/misc/BadMethod.groovy
  126. +0 −48 groovy/jsr/tck/test/misc/FieldPropertyMethodDisambiguationTest.groovy
  127. +0 −35 groovy/jsr/tck/test/misc/JohnRoseExamples.groovy
  128. +0 −31 groovy/jsr/tck/test/misc/PropertyCalledNameTest.groovy
  129. +0 −34 groovy/jsr/tck/test/misc/PropertyTest.groovy
  130. +0 −14 groovy/jsr/tck/test/misc/SampleMain.groovy
  131. +0 −393 groovy/jsr/tck/test/misc/SampleTest.groovy
  132. +0 −16 groovy/jsr/tck/test/proposals/Closures.groovy
  133. +0 −1  groovy/jsr/tck/testlib/README.txt
  134. BIN  groovy/jsr/tck/testlib/antlr-2.7.5.jar
  135. +0 −1  groovy/modules/.cvsignore
  136. +0 −1  groovy/modules/classic/README.txt
  137. +0 −22 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/AbstractCharStream.java
  138. +0 −85 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/CharStream.java
  139. +0 −38 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/Delimiter.java
  140. +0 −58 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/FileCharStream.java
  141. +0 −318 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/GStringLexer.java
  142. +0 −232 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/GroovyExpressionLexer.java
  143. +0 −267 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/GroovyLexer.java
  144. +0 −967 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/GroovyLexerBase.java
  145. +0 −271 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/HereDocLexer.java
  146. +0 −54 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/InputStreamCharStream.java
  147. +0 −151 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/Lexer.java
  148. +0 −467 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/LexerBase.java
  149. +0 −67 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/LexerException.java
  150. +0 −47 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/LexerTokenStream.java
  151. +0 −54 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/ReaderCharStream.java
  152. +0 −35 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/StringCharStream.java
  153. +0 −445 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/StringLexer.java
  154. +0 −124 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/TextLexerBase.java
  155. +0 −60 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/UnexpectedCharacterException.java
  156. +0 −7 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/UnterminatedStringLiteralException.java
  157. +0 −8 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/lexer/package.html
  158. +0 −2,081 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/ASTBuilder.java
  159. +0 −223 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/AbstractTokenStream.java
  160. +0 −58 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/ClassicParserPlugin.java
  161. +0 −32 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/ClassicParserPluginFactory.java
  162. +0 −478 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/ExpressionStack.java
  163. +0 −294 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/ExpressionSupport.java
  164. +0 −4,011 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/Parser.java
  165. +0 −150 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/TokenStream.java
  166. +0 −10 groovy/modules/classic/src/java/org/codehaus/groovy/syntax/parser/package.html
  167. +0 −11 groovy/modules/classic/src/test/README.txt
  168. +0 −267 groovy/modules/classic/src/test/UberTestCase.java
  169. +0 −124 groovy/modules/classic/src/test/UberTestCase2.java
  170. +0 −85 groovy/modules/classic/src/test/UberTestCase3.java
  171. +0 −31 groovy/modules/classic/src/test/UberTestCaseLongRunningTests.java
  172. +0 −1  groovy/modules/classic/src/test/groovy/.cvsignore
  173. +0 −27 groovy/modules/classic/src/test/groovy/AmbiguousInvocationTest.groovy
  174. +0 −24 groovy/modules/classic/src/test/groovy/ArrayAutoboxingTest.groovy
  175. +0 −25 groovy/modules/classic/src/test/groovy/ArrayParamMethodTest.groovy
  176. +0 −129 groovy/modules/classic/src/test/groovy/ArrayTest.groovy
  177. +0 −41 groovy/modules/classic/src/test/groovy/AssertNumberTest.groovy
  178. +0 −43 groovy/modules/classic/src/test/groovy/AssertTest.groovy
  179. +0 −25 groovy/modules/classic/src/test/groovy/Bar.groovy
  180. +0 −24 groovy/modules/classic/src/test/groovy/Base64Test.groovy
  181. +0 −78 groovy/modules/classic/src/test/groovy/BigDecimalOperationTest.groovy
  182. +0 −19 groovy/modules/classic/src/test/groovy/BindingTest.groovy
  183. +0 −281 groovy/modules/classic/src/test/groovy/BitwiseOperationsTest.groovy
  184. +0 −71 groovy/modules/classic/src/test/groovy/BooleanOperationTest.groovy
  185. +0 −36 groovy/modules/classic/src/test/groovy/CallInnerClassCtorTest.groovy
  186. +0 −104 groovy/modules/classic/src/test/groovy/CastTest.groovy
  187. +0 −31 groovy/modules/classic/src/test/groovy/CategoryTest.groovy
  188. +0 −18 groovy/modules/classic/src/test/groovy/ChainedAssignment.groovy
  189. +0 −46 groovy/modules/classic/src/test/groovy/ClassExpressionTest.groovy
  190. +0 −11 groovy/modules/classic/src/test/groovy/ClassLoaderBug.groovy
  191. +0 −20 groovy/modules/classic/src/test/groovy/ClassTest.groovy
  192. +0 −17 groovy/modules/classic/src/test/groovy/ClosureAsParamTest.groovy
  193. +0 −21 groovy/modules/classic/src/test/groovy/ClosureCloneTest.groovy
  194. +0 −97 groovy/modules/classic/src/test/groovy/ClosureComparatorTest.groovy
  195. +0 −83 groovy/modules/classic/src/test/groovy/ClosureCurryTest.groovy
  196. +0 −32 groovy/modules/classic/src/test/groovy/ClosureInClosureTest.groovy
  197. +0 −29 groovy/modules/classic/src/test/groovy/ClosureInStaticMethodTest.groovy
  198. +0 −44 groovy/modules/classic/src/test/groovy/ClosureListenerTest.groovy
  199. +0 −24 groovy/modules/classic/src/test/groovy/ClosureMethodCallTest.groovy
  200. +0 −229 groovy/modules/classic/src/test/groovy/ClosureMethodTest.groovy
  201. +0 −32 groovy/modules/classic/src/test/groovy/ClosureReturnTest.groovy
  202. +0 −26 groovy/modules/classic/src/test/groovy/ClosureReturnWithoutReturnStatementTest.groovy
  203. +0 −38 groovy/modules/classic/src/test/groovy/ClosureSugarTest.groovy
  204. +0 −119 groovy/modules/classic/src/test/groovy/ClosureTest.groovy
  205. +0 −66 groovy/modules/classic/src/test/groovy/ClosureUsingOuterVariablesTest.groovy
  206. +0 −156 groovy/modules/classic/src/test/groovy/ClosureWithDefaultParamTest.groovy
  207. +0 −37 groovy/modules/classic/src/test/groovy/CompareToTest.groovy
  208. +0 −56 groovy/modules/classic/src/test/groovy/CompareTypesTest.groovy
  209. +0 −34 groovy/modules/classic/src/test/groovy/CompilerErrorTest.groovy
  210. +0 −33 groovy/modules/classic/src/test/groovy/DateTest.groovy
  211. +0 −47 groovy/modules/classic/src/test/groovy/DefaultParamClosureTest.groovy
  212. +0 −43 groovy/modules/classic/src/test/groovy/DefaultParamTest.groovy
  213. +0 −12 groovy/modules/classic/src/test/groovy/DollarEscapingTest.groovy
  214. +0 −80 groovy/modules/classic/src/test/groovy/DoubleOperationTest.groovy
  215. +0 −6 groovy/modules/classic/src/test/groovy/DummyInterface.java
  216. +0 −17 groovy/modules/classic/src/test/groovy/DummyMethods.java
  217. +0 −27 groovy/modules/classic/src/test/groovy/EscapedUnicodeTest.groovy
  218. +0 −24 groovy/modules/classic/src/test/groovy/ExceptionInClosureTest.groovy
  219. +0 −32 groovy/modules/classic/src/test/groovy/ExpandoPropertyTest.groovy
  220. +0 −44 groovy/modules/classic/src/test/groovy/FilterLineTest.groovy
  221. +0 −49 groovy/modules/classic/src/test/groovy/Foo.groovy
  222. +0 −110 groovy/modules/classic/src/test/groovy/ForLoopTest.groovy
  223. +0 −15 groovy/modules/classic/src/test/groovy/ForLoopWithLocalVariablesTest.groovy
  224. +0 −134 groovy/modules/classic/src/test/groovy/GStringTest.groovy
  225. +0 −49 groovy/modules/classic/src/test/groovy/GeneratorTest.groovy
  226. +0 −11 groovy/modules/classic/src/test/groovy/GlobalPrintlnTest.groovy
  227. +0 −208 groovy/modules/classic/src/test/groovy/GroovyMethodsTest.groovy
  228. +0 −32 groovy/modules/classic/src/test/groovy/HeredocsTest.groovy
  229. +0 −6 groovy/modules/classic/src/test/groovy/HomepageTest.groovy
  230. +0 −23 groovy/modules/classic/src/test/groovy/IfElseCompactTest.groovy
  231. +0 −131 groovy/modules/classic/src/test/groovy/IfElseTest.groovy
  232. +0 −36 groovy/modules/classic/src/test/groovy/IfPropertyTest.groovy
  233. +0 −43 groovy/modules/classic/src/test/groovy/IfTest.groovy
  234. +0 −13 groovy/modules/classic/src/test/groovy/IfWithMethodCall.groovy
  235. +0 −24 groovy/modules/classic/src/test/groovy/ImmutableModificationTest.groovy
  236. +0 −24 groovy/modules/classic/src/test/groovy/ImportTest.groovy
  237. +0 −46 groovy/modules/classic/src/test/groovy/InstanceofTest.groovy
  238. +0 −186 groovy/modules/classic/src/test/groovy/IntegerOperationTest.groovy
  239. +0 −60 groovy/modules/classic/src/test/groovy/InvokeNormalMethodsFirstTest.groovy
  240. +0 −58 groovy/modules/classic/src/test/groovy/ListIteratingTest.groovy
  241. +0 −209 groovy/modules/classic/src/test/groovy/ListTest.groovy
  242. +0 −146 groovy/modules/classic/src/test/groovy/LiteralTypesTest.groovy
  243. +0 −6 groovy/modules/classic/src/test/groovy/LittleClosureTest.groovy
  244. +0 −13 groovy/modules/classic/src/test/groovy/LocalFieldTest.groovy
  245. +0 −18 groovy/modules/classic/src/test/groovy/LocalPropertyTest.groovy
  246. +0 −27 groovy/modules/classic/src/test/groovy/LocalVariableTest.groovy
  247. +0 −24 groovy/modules/classic/src/test/groovy/LogTest.groovy
  248. +0 −75 groovy/modules/classic/src/test/groovy/LogicTest.groovy
  249. +0 −47 groovy/modules/classic/src/test/groovy/LoopBreakTest.groovy
  250. +0 −53 groovy/modules/classic/src/test/groovy/MapConstructionTest.groovy
  251. +0 −34 groovy/modules/classic/src/test/groovy/MapPropertyTest.groovy
  252. +0 −87 groovy/modules/classic/src/test/groovy/MapTest.groovy
  253. +0 −29 groovy/modules/classic/src/test/groovy/MethodCallTest.groovy
  254. +0 −43 groovy/modules/classic/src/test/groovy/MethodCallWithoutParenthesisTest.groovy
  255. +0 −40 groovy/modules/classic/src/test/groovy/MethodParameterAccessWithinClosureTest.groovy
  256. +0 −50 groovy/modules/classic/src/test/groovy/MinMaxTest.groovy
  257. +0 −45 groovy/modules/classic/src/test/groovy/MinusEqualsTest.groovy
  258. +0 −22 groovy/modules/classic/src/test/groovy/ModuloTest.groovy
  259. +0 −15 groovy/modules/classic/src/test/groovy/MultilineStringTest.groovy
  260. +0 −80 groovy/modules/classic/src/test/groovy/MultiplyDivideEqualsTest.groovy
  261. +0 −13 groovy/modules/classic/src/test/groovy/NamedParameterTest.groovy
  262. +0 −77 groovy/modules/classic/src/test/groovy/NegateListsTest.groovy
  263. +0 −25 groovy/modules/classic/src/test/groovy/NegationTests.groovy
  264. +0 −30 groovy/modules/classic/src/test/groovy/NewExpressionTest.groovy
  265. +0 −8 groovy/modules/classic/src/test/groovy/NoPackageTest.groovy
  266. +0 −12 groovy/modules/classic/src/test/groovy/NullPropertyTest.groovy
  267. +0 −141 groovy/modules/classic/src/test/groovy/NumberMathTest.groovy
  268. +0 −103 groovy/modules/classic/src/test/groovy/OptionalReturnTest.groovy
  269. +0 −74 groovy/modules/classic/src/test/groovy/OuterUser.java
  270. +0 −33 groovy/modules/classic/src/test/groovy/OverloadInvokeMethodTest.groovy
  271. +0 −25 groovy/modules/classic/src/test/groovy/OverridePropertyGetterTest.groovy
  272. +0 −51 groovy/modules/classic/src/test/groovy/PlusEqualsTest.groovy
  273. +0 −32 groovy/modules/classic/src/test/groovy/PostfixTest.groovy
  274. +0 −72 groovy/modules/classic/src/test/groovy/PowerOperationTest.groovy
  275. +0 −35 groovy/modules/classic/src/test/groovy/PrefixTest.groovy
  276. +0 −115 groovy/modules/classic/src/test/groovy/PrimitiveArraysTest.groovy
  277. +0 −56 groovy/modules/classic/src/test/groovy/PrimitiveTypeFieldTest.groovy
  278. +0 −65 groovy/modules/classic/src/test/groovy/PrimitiveTypesTest.groovy
  279. +0 −36 groovy/modules/classic/src/test/groovy/PrintTest.groovy
  280. +0 −32 groovy/modules/classic/src/test/groovy/PrivateVariableAccessFromAnotherInstanceTest.groovy
  281. +0 −95 groovy/modules/classic/src/test/groovy/ProcessTest.groovy
  282. +0 −118 groovy/modules/classic/src/test/groovy/PropertyTest.groovy
  283. +0 −87 groovy/modules/classic/src/test/groovy/PropertyTest2.groovy
  284. +0 −11 groovy/modules/classic/src/test/groovy/PropertyWithoutDotTest.groovy
  285. +0 −218 groovy/modules/classic/src/test/groovy/RangeTest.groovy
  286. +0 −24 groovy/modules/classic/src/test/groovy/ReadLineTest.groovy
  287. +0 −130 groovy/modules/classic/src/test/groovy/RegularExpressionsTest.groovy
  288. +0 −69 groovy/modules/classic/src/test/groovy/ReturnTest.groovy
  289. +0 −42 groovy/modules/classic/src/test/groovy/SafeNavigationTest.groovy
  290. +0 −7 groovy/modules/classic/src/test/groovy/SampleMain.groovy
  291. +0 −47 groovy/modules/classic/src/test/groovy/SerializeTest.groovy
  292. +0 −33 groovy/modules/classic/src/test/groovy/ShellTest.groovy
  293. +0 −78 groovy/modules/classic/src/test/groovy/SocketTest.groovy
  294. +0 −39 groovy/modules/classic/src/test/groovy/SortTest.groovy
  295. +0 −22 groovy/modules/classic/src/test/groovy/StaticThisTest.groovy
  296. +0 −41 groovy/modules/classic/src/test/groovy/StringOperationTest.groovy
  297. +0 −60 groovy/modules/classic/src/test/groovy/StringTest.groovy
  298. +0 −203 groovy/modules/classic/src/test/groovy/SubscriptTest.groovy
  299. +0 −75 groovy/modules/classic/src/test/groovy/SwitchTest.groovy
  300. +0 −111 groovy/modules/classic/src/test/groovy/SwitchWithDifferentTypesTest.groovy
Sorry, we could not display the entire diff because too many files (1,192) changed.
View
15 CVSROOT/checkoutlist
@@ -1,15 +0,0 @@
-# The "checkoutlist" file is used to support additional version controlled
-# administrative files in $CVSROOT/CVSROOT, such as template files.
-#
-# The first entry on a line is a filename which will be checked out from
-# the corresponding RCS file in the $CVSROOT/CVSROOT directory.
-# The remainder of the line is an error message to use if the file cannot
-# be checked out.
-#
-# File format:
-#
-# [<whitespace>]<filename><whitespace><error message><end-of-line>
-#
-# comment lines begin with '#'
-passwd
-log_accum.conf
View
15 CVSROOT/commitinfo
@@ -1,15 +0,0 @@
-# The "commitinfo" file is used to control pre-commit checks.
-# The filter on the right is invoked with the repository and a list
-# of files to check. A non-zero exit of the filter program will
-# cause the commit to be aborted.
-#
-# The first entry on a line is a regular expression which is tested
-# against the directory that the change is being committed to, relative
-# to the $CVSROOT. For the first match that is found, then the remainder
-# of the line is the name of the filter to run.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name "ALL" appears as a regular expression it is always used
-# in addition to the first matching regex or "DEFAULT".
View
5 CVSROOT/damagecontrol-groovy.conf
@@ -1,5 +0,0 @@
-project_name: Groovy
-scm_spec: ":ext:dcontrol@localhost:/home/projects/groovy/scm:groovy/groovy-core"
-build_command_line: "maven dc"
-nag_email: groovy-dev@groovy.codehaus.org
-...
View
10 CVSROOT/dctrigger.rb
@@ -1,10 +0,0 @@
-require 'xmlrpc/client'
-
-url = ARGV[0]
-project_name = ARGV[1]
-
-puts "Nudging DamageControl on #{url} to build project #{project_name}"
-client = XMLRPC::Client.new2(url)
-build = client.proxy("build")
-result = build.trig(project_name, Time.now.utc.strftime("%Y%m%d%H%M%S"))
-puts result
View
21 CVSROOT/editinfo
@@ -1,21 +0,0 @@
-# The "editinfo" file is used to allow verification of logging
-# information. It works best when a template (as specified in the
-# rcsinfo file) is provided for the logging procedure. Given a
-# template with locations for, a bug-id number, a list of people who
-# reviewed the code before it can be checked in, and an external
-# process to catalog the differences that were code reviewed, the
-# following test can be applied to the code:
-#
-# Making sure that the entered bug-id number is correct.
-# Validating that the code that was reviewed is indeed the code being
-# checked in (using the bug-id number or a seperate review
-# number to identify this particular code set.).
-#
-# If any of the above test failed, then the commit would be aborted.
-#
-# Actions such as mailing a copy of the report to each reviewer are
-# better handled by an entry in the loginfo file.
-#
-# One thing that should be noted is the the ALL keyword is not
-# supported. There can be only one entry that matches a given
-# repository.
View
83 CVSROOT/log_accum.conf
@@ -1,83 +0,0 @@
-# The "log_accum.conf" file overrides the the defaults hard-coded in
-# the "log_accum.pl" script allowing admins to setup the log_accum.pl
-# once as executable, but not writable. Each project can then have
-# it's own "log_accum.conf" to configure the behaviour of their own
-# cvs commit messages.
-
-
-# MAIL TO
-#
-# When set, specifies the email address(es) to
-# receive commit messages. When left unset, the
-# script will attempt to guess the correct
-# mailing list using the repository name and
-# the MLISTHOST option.
-#
-MAIL_TO = scm@groovy.codehaus.org
-
-# MAIL FROM
-#
-# When set, specifies the email address that
-# all commit messages will be sent from.
-# Very usefull for setting up a "no reply"
-# address for commit messages.
-#
-# When not set, the script will guess the sender's
-# address by prefixing the cvs user's name to the
-# MLISTHOST option.
-#
-#MAIL_FROM = noreply@codehaus.org
-
-# MAIL HOST ADDRESS
-#
-# The host address to use when guessing either
-# the TO or FROM addresses.
-#MLISTHOST = codehaus.org
-
-# X-SENDER EMAIL HEADER
-#
-# When specified, adds an X-Sender header to the
-# emails sent so that users can use it to more
-# easily filter out cvs messages. This is very
-# nice for when there is no mailing list
-# dedicated to cvs commit messages.
-#
-XSENDER = Groovy-CVS
-
-# REPLY-TO EMAIL ADDRESS
-#
-# When REPLYTO is set an SMTP "Reply-To" email
-# header will be added. This is very useful
-# for keeping development discussion on a
-# dev list even when cvs messages go a cvs list.
-#
-REPLYTO = dev@groovy.codehaus.org
-
-# SUBJECT PREFIX
-#
-# This text, plus a space, will be prepended
-# to the subject line of the commit message.
-# When the option specified with no value, no
-# prefix will be used.
-#
-SUBJECT_PREFIX =
-
-# MESSAGE SIZE LIMIT
-#
-# If the delta info exceeds this threshold, no diff will be
-# mailed/logged; as a replacement for this, URLs pointing
-# to the corresponding ViewCVS diffs will be constructed and
-# included in the mail/log message.
-#
-# 0 = no treshold, unlimited diffs
-# x = maximum size of the diff in kb
-#
-#SIZELIMIT = 100;
-
-# VIEWCVS URL
-#
-# Specify here the URL to ViewCVS (without trailing slash!)
-# If left unset, the script will attempt to guess the correct
-# value.
-#
-VIEWCVS = "http://cvs.groovy.codehaus.org/groovy";
View
26 CVSROOT/modules
@@ -1,26 +0,0 @@
-# Three different line formats are valid:
-# key -a aliases...
-# key [options] directory
-# key [options] directory files...
-#
-# Where "options" are composed of:
-# -i prog Run "prog" on "cvs commit" from top-level of module.
-# -o prog Run "prog" on "cvs checkout" of module.
-# -e prog Run "prog" on "cvs export" of module.
-# -t prog Run "prog" on "cvs rtag" of module.
-# -u prog Run "prog" on "cvs update" of module.
-# -d dir Place module in directory "dir" instead of module name.
-# -l Top-level directory only -- do not recurse.
-#
-# NOTE: If you change any of the "Run" options above, you'll have to
-# release and re-checkout any working directories of these modules.
-#
-# And "directory" is a path to a directory relative to $CVSROOT.
-#
-# The "-a" option specifies an alias. An alias is interpreted as if
-# everything on the right of the "-a" had been typed on the command line.
-#
-# You can encode a module within a module by using the special '&'
-# character to interpose another module into the current module. This
-# can be useful for creating a module that consists of many directories
-# spread out over the entire source repository.
View
12 CVSROOT/notify
@@ -1,12 +0,0 @@
-# The "notify" file controls where notifications from watches set by
-# "cvs watch add" or "cvs edit" are sent. The first entry on a line is
-# a regular expression which is tested against the directory that the
-# change is being made to, relative to the $CVSROOT. If it matches,
-# then the remainder of the line is a filter program that should contain
-# one occurrence of %s for the user to notify, and information on its
-# standard input.
-#
-# "ALL" or "DEFAULT" can be used in place of the regular expression.
-#
-# For example:
-#ALL mail -s "CVS notification" %s
View
13 CVSROOT/rcsinfo
@@ -1,13 +0,0 @@
-# The "rcsinfo" file is used to control templates with which the editor
-# is invoked on commit and import.
-#
-# The first entry on a line is a regular expression which is tested
-# against the directory that the change is being made to, relative to the
-# $CVSROOT. For the first match that is found, then the remainder of the
-# line is the name of the file that contains the template.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name "ALL" appears as a regular expression it is always used
-# in addition to the first matching regex or "DEFAULT".
View
20 CVSROOT/taginfo
@@ -1,20 +0,0 @@
-# The "taginfo" file is used to control pre-tag checks.
-# The filter on the right is invoked with the following arguments:
-#
-# $1 -- tagname
-# $2 -- operation "add" for tag, "mov" for tag -F, and "del" for tag -d
-# $3 -- repository
-# $4-> file revision [file revision ...]
-#
-# A non-zero exit of the filter program will cause the tag to be aborted.
-#
-# The first entry on a line is a regular expression which is tested
-# against the directory that the change is being committed to, relative
-# to the $CVSROOT. For the first match that is found, then the remainder
-# of the line is the name of the filter to run.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name "ALL" appears as a regular expression it is always used
-# in addition to the first matching regex or "DEFAULT".
View
21 CVSROOT/verifymsg
@@ -1,21 +0,0 @@
-# The "verifymsg" file is used to allow verification of logging
-# information. It works best when a template (as specified in the
-# rcsinfo file) is provided for the logging procedure. Given a
-# template with locations for, a bug-id number, a list of people who
-# reviewed the code before it can be checked in, and an external
-# process to catalog the differences that were code reviewed, the
-# following test can be applied to the code:
-#
-# Making sure that the entered bug-id number is correct.
-# Validating that the code that was reviewed is indeed the code being
-# checked in (using the bug-id number or a seperate review
-# number to identify this particular code set.).
-#
-# If any of the above test failed, then the commit would be aborted.
-#
-# Actions such as mailing a copy of the report to each reviewer are
-# better handled by an entry in the loginfo file.
-#
-# One thing that should be noted is the the ALL keyword is not
-# supported. There can be only one entry that matches a given
-# repository.
View
3  groovy/.cvsignore
@@ -1,3 +0,0 @@
-groovy.iml
-groovy.ipr
-groovy.iws
View
120 groovy/groovy-native/README
@@ -1,120 +0,0 @@
-This is a proof-of-concept for compiling Groovy to native code.
-
-Goals:
- - Better performance / reduced overheads (cpu, memory, start-up time).
- - Appealing alternative to Perl/Python/Ruby/shell-scripts.
- - Simple install (src tarball, RPM, dpkg, windows installer, OS-X whatever).
- - No JVM required.
- - Ability to use Groovy to access less Javaish libraries (POSIXy stuff, MFC, .NET).
- - Ability to use Groovy (and Java) objects from other languages (C, C++, Perl, Python, Ruby, .NET, etc)
-
-WARNING: This is an experiment. It's a proof-of-concept. It probably won't work. But maybe it will.
-
-The first attempt at this package uses the GNU GCJ compiler. This is built on top of GCC and is
-available for UNIXy platforms (including Linux and OS-X) and Windows (with Cygwin).
-
-These are the first set of goals for the experiment.
-
-
-
-*** Goal 1 : Native standalone executable of .groovy file.
-[Complete]
-
-The existing Groovy compiler (running on a JVM) can compile .groovy files to .class files.
-GCJ can then compile these .class files to .o binary objects.
-GCJ can link these objects (together with a native version of the Groovy runtime library) into a
-native executable.
-
-The challenge is building the native runtime library. In particular, identifying if the runtime
-byte-code generation, custom class-loaders and dynamic proxies will cause problems when moved to
-native code.
-
-Certain features of the Groovy language may be excluded to meet this goal and a JVM is still
-required at build time.
-
-
-
-*** Goal 2 : Native Groovy libraries.
-[In progress]
-
-Compile a collection of .groovy files into a .so that can be linked to from other Groovy or native
-libraries.
-
-Provide samples for Groovy, C and C++ apps all linking to another Groovy library.
-
-
-
-*** Goal 3 : Native .groovy compiler.
-[Not started]
-
-The actual Groovy compiler should be native (as well as the runtime) allowing Groovy to be developed
-entirely without a JVM present.
-
-
-
-*** Goal 4 : Usable tool set.
-[In progress]
-
-A set of simple wrapper tools should be provided for common features:
- - Compiling and linking a Groovy library or standalone executable.
- - JIT style interpreter (like Python) that runs a Groovy script directly by recompiling if necessary.
- - #!/usr/local/bin/groovy style declaration for scripts allowing direct invocation.
-
-
-
-*** Goal 5 : Runtime interpreter.
-[Not started]
-
-Allow Groovy snippets to be evaluated dynamically at runtime (the functionality of GroovyClassLoader).
-This could get tricky.
-
-
-
-*** Goal 6 : Complete language features.
-[Not started]
-
-Get all the unit tests running on the native Groovy. This excludes Java specific extras such as JMS
-and Servlets.
-
-
-
-*** Goal 7 : Installation bundle.
-[Not started]
-
-Provide a UNIX installation bundle that contains scripts and instructions for getting native Groovy
-running on a machine.
-
-
-
-*** Goal 8 : Optimizations.
-[Not started]
-
-Profile code to see how it can be made snappier. Especially important is the startup time. A plain
-GCJ compiled Java file starts within <50ms, whereas Groovy is taking much longer.
-
-
-
-*** Goal 9 : Provide Groovy with simple access to native libraries.
-[Not started]
-
-Extend the Groovy library and build tools to allow easy access to code outside of Groovy/Java from
-Groovy classes.
-
-Something like:
-
-import ncurses // use libncurses/ncurses.h
-class Thingy {
- void doStuff(name) {
- ncurses.printw("Hello ${name}") // print string
- ncurses.refresh() // display it on screen
- ncurses.getch() // wait for key press
- }
-}
-
-
-
-
-
-
-
-- Joe Walnes <joe@thoughtworks.net>
View
15 groovy/groovy-native/examples/001-standalone-executable/README
@@ -1,15 +0,0 @@
-Read README in parent directory first. And read the README in the grand-parent directory
-before that! Seriously, it's important!
-
-
-
-This demo simply compiles a single Simple.groovy class into a native executable that can
-be invoked using ./Simple
-
-Steps:
- * Read the other README files.
- * ./build.sh
- * ./Simple
-
-
-- Joe Walnes <joe@thoughtworks.net>
View
19 groovy/groovy-native/examples/001-standalone-executable/Simple.groovy
@@ -1,19 +0,0 @@
-class Simple {
- doSomething() {
- data = ["name": "James", "location": "London"]
- for (e in data) {
- println("entry ${e.key} is ${e.value}")
- }
- }
-
- closureExample(collection) {
- collection.each { println("value ${it}") }
- }
-
- static void main(args) {
- values = [1, 2, 3, "abc", "moo"]
- foo = new Simple()
- foo.closureExample(values)
- foo.doSomething()
- }
-}
View
6 groovy/groovy-native/examples/001-standalone-executable/build.sh
@@ -1,6 +0,0 @@
-#!/bin/sh
-
-$GROOVY_HOME/bin/groovyc Simple.groovy
-CLASSPATH=../../libgroovy/libgroovy.jar gcj --main=Simple -o Simple -L../../libgroovy -lgroovy *.class
-rm -rf *.class
-
View
16 groovy/groovy-native/examples/README
@@ -1,16 +0,0 @@
-These are the examples for libgroovy. If you don't know what I'm talking about, read
-the README in the parent directory.
-
-Before running any of the examples:
- * Build libgroovy (instructions in libgroovy directory).
- * Set GROOVY_HOME to wherever Groovy may reside.
- * Append the libgroovy directory to LD_LIBRARY_PATH if not already present.
-
- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/groovy-native/libgroovy
-
-The example directory names are prefixed with a number so you can step through the
-examples in a logical order.
-
-
-- Joe Walnes <joe@thoughtworks.net>
-
View
59 groovy/groovy-native/libgroovy/README
@@ -1,59 +0,0 @@
-See README in parent directory before reading on.
-
-Okay, so now you know what this is all about.
-
-
-
-*** Introduction
-
-libgroovy is the core native Groovy library for runtime use. Any Groovy application
-requires this library (and the standard libgcj libraries) to run.
-
-libgroovy only contains a subset of the standard Groovy library. Currently it only
-runs basic Groovy scripts.
-
-You may notice that there are no actual source files here. This is because libgroovy
-is built from the Java source files from Groovy. The source files for the Java ASM
-library are also required.
-
-
-
-*** Building the library.
-
-This library currently only compiles on UNIX.
-
-You need:
- - JDK.
- - GCJ.
- - The Java source for Groovy and ASM.
- - Bash.
-
-Edit build.sh and set the appropriate variables at the top of the script.
-
-./build.sh
-(may take some time and generate a collection of warnings - but hopefully no errors).
-
-If all goes to plan, you should end up with libgroovy.so and libgroovy.jar in the current
-directory.
-
-
-
-*** Notes on how the library is built.
-
-The stripped down library only tries to compile the classes listed in groovy-src and asm-src.
-
-Certain tweaks needed to be made to get the source to compile as GCJ only partially supports
-the J2SE1.4 library. Rather than modify the Groovy source, build.sh patches the source using
-patch.diff to get the code to compile (although nobbling some features in doing so).
-
-
-
-*** How to use the library.
-
-Coming soon. In the mean time, look at one of the examples.
-
-
-
-- Joe Walnes <joe@thoughtworks.net>
-
-
View
10 groovy/groovy-native/libgroovy/asm-src
@@ -1,10 +0,0 @@
-org/objectweb/asm/ClassVisitor.java
-org/objectweb/asm/ClassWriter.java
-org/objectweb/asm/CodeVisitor.java
-org/objectweb/asm/Constants.java
-org/objectweb/asm/CodeWriter.java
-org/objectweb/asm/Edge.java
-org/objectweb/asm/Item.java
-org/objectweb/asm/Label.java
-org/objectweb/asm/Type.java
-org/objectweb/asm/ByteVector.java
View
44 groovy/groovy-native/libgroovy/build.sh
@@ -1,44 +0,0 @@
-#!/bin/sh
-
-# Ensure these paths are correct
-
-#JAVA_HOME=/usr/local/java
-GROOVY_HOME=~/groovy-1.0-beta-2
-GROOVY_SRC=$GROOVY_HOME/src/main
-ASM_SRC=~/ASM/dev/src
-
-# End of paths
-
-
-
-
-BUILD_DIR=build
-LIB_NAME=groovy
-
-rm -rf $BUILD_DIR lib$LIB_NAME.{jar,so}
-mkdir -p $BUILD_DIR
-
-BASE_DIR=`pwd`
-cd $BUILD_DIR
-BUILD_DIR=`pwd`
-cd $BASE_DIR
-
-# Copy mimimum required source files to temp directory
-(cd $GROOVY_SRC && cp --parents `grep -v '#' $BASE_DIR/groovy-src` $BUILD_DIR)
-(cd $ASM_SRC && cp --parents `grep -v '#' $BASE_DIR/asm-src` $BUILD_DIR)
-
-# Patch the source files
-patch --silent -f -p0 -d $BUILD_DIR < patch.diff
-
-# .java -> .class
-find $BUILD_DIR -name \*.java | xargs gcj -C
-
-# .class -> .jar
-jar -cf lib$LIB_NAME.jar -C $BUILD_DIR .
-
-# .class -> .so
-gcj -shared -o lib$LIB_NAME.so lib$LIB_NAME.jar
-
-# clean up
-rm -rf $BUILD_DIR
-
View
128 groovy/groovy-native/libgroovy/groovy-src
@@ -1,128 +0,0 @@
-groovy/lang/Closure.java
-groovy/lang/ClosureException.java
-groovy/lang/GString.java
-groovy/lang/GroovyClassLoader.java
-groovy/lang/GroovyLog.java
-groovy/lang/GroovyObject.java
-groovy/lang/GroovyObjectSupport.java
-groovy/lang/GroovyShell.java
-groovy/lang/IntRange.java
-groovy/lang/MetaClass.java
-groovy/lang/MetaClassRegistry.java
-groovy/lang/NonEmptySequence.java
-groovy/lang/ObjectRange.java
-groovy/lang/Range.java
-groovy/lang/Reference.java
-groovy/lang/Script.java
-groovy/lang/ScriptContext.java
-groovy/lang/Sequence.java
-groovy/lang/Tuple.java
-groovy/util/Bitwise.java
-groovy/util/BuilderSupport.java
-groovy/util/ClosureComparator.java
-groovy/util/IndentPrinter.java
-groovy/util/MapEntry.java
-groovy/util/Node.java
-groovy/util/NodeBuilder.java
-groovy/util/NodePrinter.java
-groovy/util/OrderBy.java
-org/codehaus/groovy/GroovyException.java
-org/codehaus/groovy/ast/ASTNode.java
-org/codehaus/groovy/ast/ClassNode.java
-org/codehaus/groovy/ast/CodeVisitorSupport.java
-org/codehaus/groovy/ast/CompileUnit.java
-org/codehaus/groovy/ast/ConstructorNode.java
-org/codehaus/groovy/ast/FieldNode.java
-org/codehaus/groovy/ast/GroovyClassVisitor.java
-org/codehaus/groovy/ast/GroovyCodeVisitor.java
-org/codehaus/groovy/ast/InnerClassNode.java
-org/codehaus/groovy/ast/MetadataNode.java
-org/codehaus/groovy/ast/MethodNode.java
-org/codehaus/groovy/ast/MixinNode.java
-org/codehaus/groovy/ast/ModuleNode.java
-org/codehaus/groovy/ast/Parameter.java
-org/codehaus/groovy/ast/PropertyNode.java
-org/codehaus/groovy/ast/expr/ArgumentListExpression.java
-org/codehaus/groovy/ast/expr/ArrayExpression.java
-org/codehaus/groovy/ast/expr/BinaryExpression.java
-org/codehaus/groovy/ast/expr/BooleanExpression.java
-org/codehaus/groovy/ast/expr/ClassExpression.java
-org/codehaus/groovy/ast/expr/ClosureExpression.java
-org/codehaus/groovy/ast/expr/ConstantExpression.java
-org/codehaus/groovy/ast/expr/ConstructorCallExpression.java
-org/codehaus/groovy/ast/expr/Expression.java
-org/codehaus/groovy/ast/expr/FieldExpression.java
-org/codehaus/groovy/ast/expr/GStringExpression.java
-org/codehaus/groovy/ast/expr/ListExpression.java
-org/codehaus/groovy/ast/expr/MapEntryExpression.java
-org/codehaus/groovy/ast/expr/MapExpression.java
-org/codehaus/groovy/ast/expr/MethodCallExpression.java
-org/codehaus/groovy/ast/expr/NamedArgumentListExpression.java
-org/codehaus/groovy/ast/expr/NotExpression.java
-org/codehaus/groovy/ast/expr/PostfixExpression.java
-org/codehaus/groovy/ast/expr/PrefixExpression.java
-org/codehaus/groovy/ast/expr/PropertyExpression.java
-org/codehaus/groovy/ast/expr/RangeExpression.java
-org/codehaus/groovy/ast/expr/RegexExpression.java
-org/codehaus/groovy/ast/expr/StaticMethodCallExpression.java
-org/codehaus/groovy/ast/expr/TupleExpression.java
-org/codehaus/groovy/ast/expr/VariableExpression.java
-org/codehaus/groovy/ast/stmt/AssertStatement.java
-org/codehaus/groovy/ast/stmt/BlockStatement.java
-org/codehaus/groovy/ast/stmt/BreakStatement.java
-org/codehaus/groovy/ast/stmt/CaseStatement.java
-org/codehaus/groovy/ast/stmt/CatchStatement.java
-org/codehaus/groovy/ast/stmt/ContinueStatement.java
-org/codehaus/groovy/ast/stmt/DoWhileStatement.java
-org/codehaus/groovy/ast/stmt/EmptyStatement.java
-org/codehaus/groovy/ast/stmt/ExpressionStatement.java
-org/codehaus/groovy/ast/stmt/ForStatement.java
-org/codehaus/groovy/ast/stmt/IfStatement.java
-org/codehaus/groovy/ast/stmt/ReturnStatement.java
-org/codehaus/groovy/ast/stmt/Statement.java
-org/codehaus/groovy/ast/stmt/SwitchStatement.java
-org/codehaus/groovy/ast/stmt/SynchronizedStatement.java
-org/codehaus/groovy/ast/stmt/ThrowStatement.java
-org/codehaus/groovy/ast/stmt/TryCatchStatement.java
-org/codehaus/groovy/ast/stmt/WhileStatement.java
-org/codehaus/groovy/classgen/ClassGenerator.java
-org/codehaus/groovy/classgen/ClassGeneratorException.java
-org/codehaus/groovy/classgen/VariableScopeCodeVisitor.java
-org/codehaus/groovy/classgen/CompilerFacade.java
-org/codehaus/groovy/classgen/GeneratorContext.java
-org/codehaus/groovy/classgen/MethodCaller.java
-org/codehaus/groovy/classgen/Variable.java
-org/codehaus/groovy/classgen/Verifier.java
-org/codehaus/groovy/classgen/VerifierCodeVisitor.java
-org/codehaus/groovy/runtime/ClassExtender.java
-org/codehaus/groovy/runtime/DefaultGroovyMethods.java
-org/codehaus/groovy/runtime/Invoker.java
-org/codehaus/groovy/runtime/InvokerException.java
-org/codehaus/groovy/runtime/InvokerHelper.java
-org/codehaus/groovy/runtime/InvokerInvocationException.java
-org/codehaus/groovy/runtime/IteratorClosureAdapter.java
-org/codehaus/groovy/runtime/MethodClosure.java
-org/codehaus/groovy/runtime/MethodHelper.java
-org/codehaus/groovy/runtime/NoSuchClassException.java
-org/codehaus/groovy/runtime/NoSuchMethodException.java
-org/codehaus/groovy/runtime/NoSuchPropertyException.java
-org/codehaus/groovy/syntax/AbstractTokenStream.java
-org/codehaus/groovy/syntax/LookAheadExhaustionException.java
-org/codehaus/groovy/syntax/SyntaxException.java
-org/codehaus/groovy/syntax/Token.java
-org/codehaus/groovy/syntax/TokenStream.java
-org/codehaus/groovy/syntax/TokenMismatchException.java
-org/codehaus/groovy/syntax/lexer/AbstractCharStream.java
-org/codehaus/groovy/syntax/lexer/CharStream.java
-org/codehaus/groovy/syntax/lexer/InputStreamCharStream.java
-org/codehaus/groovy/syntax/lexer/Lexer.java
-org/codehaus/groovy/syntax/lexer/LexerTokenStream.java
-org/codehaus/groovy/syntax/lexer/UnexpectedCharacterException.java
-org/codehaus/groovy/syntax/lexer/LexerException.java
-org/codehaus/groovy/syntax/lexer/UnterminatedStringLiteralException.java
-org/codehaus/groovy/syntax/parser/ASTBuilder.java
-org/codehaus/groovy/syntax/parser/CSTNode.java
-org/codehaus/groovy/syntax/parser/UnexpectedTokenException.java
-org/codehaus/groovy/syntax/parser/ParserException.java
-org/codehaus/groovy/syntax/parser/Parser.java
-org/codehaus/groovy/syntax/lexer/StringCharStream.java
View
82 groovy/groovy-native/libgroovy/patch.diff
@@ -1,82 +0,0 @@
---- org/codehaus/groovy/runtime/Invoker.java 2004-01-06 16:37:49.000000000 +0000
-+++ org/codehaus/groovy/runtime/Invoker.java 2004-01-06 16:38:46.000000000 +0000
-@@ -62,8 +62,6 @@
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
-
--import com.mockobjects.util.NotImplementedException;
--
- /**
- * A helper class to invoke methods or extract properties on arbitrary Java objects dynamically
- *
-@@ -244,7 +242,7 @@
- return matcher.group();
- }
- public void remove() {
-- throw new NotImplementedException();
-+ throw new UnsupportedOperationException();
- }
- };
- }
---- ./org/codehaus/groovy/runtime/InvokerHelper.java.orig 2004-01-06 17:13:41.000000000 +0000
-+++ ./org/codehaus/groovy/runtime/InvokerHelper.java 2004-01-06 17:14:24.000000000 +0000
-@@ -170,7 +170,7 @@
- }
- else if (object instanceof Matcher) {
- Matcher matcher = (Matcher) object;
-- return matcher.find();
-+ throw new UnsupportedOperationException("Matcher.find()");
- }
- else if (object instanceof Collection) {
- Collection collection = (Collection) object;
---- ./org/codehaus/groovy/runtime/Invoker.java.orig 2004-01-06 17:14:52.000000000 +0000
-+++ ./org/codehaus/groovy/runtime/Invoker.java 2004-01-06 17:17:41.000000000 +0000
-@@ -227,8 +227,7 @@
- public boolean hasNext() {
- if (done) return false;
- if (!found) {
-- found = matcher.find();
-- if (!found) done = true;
-+ throw new UnsupportedOperationException("Matcher.find()");
- }
- return found;
- }
-@@ -239,7 +238,7 @@
- }
- }
- found = false;
-- return matcher.group();
-+ throw new UnsupportedOperationException("Matcher.group()");
- }
- public void remove() {
- throw new UnsupportedOperationException();
-@@ -485,7 +484,7 @@
- pattern = Pattern.compile(toString(right));
- }
- String stringToCompare = toString(left);
-- return pattern.matcher(stringToCompare).matches();
-+ throw new UnsupportedOperationException("Matcher");
- }
-
- /**
---- ./org/codehaus/groovy/runtime/DefaultGroovyMethods.java.orig 2004-01-06 17:18:17.000000000 +0000
-+++ ./org/codehaus/groovy/runtime/DefaultGroovyMethods.java 2004-01-06 17:19:36.000000000 +0000
-@@ -221,7 +221,7 @@
- }
-
- public static boolean isCase(Pattern caseValue, Object switchValue) {
-- return caseValue.matcher(switchValue.toString()).matches();
-+ throw new UnsupportedOperationException("Matcher.matches()");
- }
-
- // Collection based methods
-@@ -850,8 +850,7 @@
- }
-
- public static String minus(String left, Object value) {
-- String text = toString(value);
-- return left.replaceFirst(text, "");
-+ throw new UnsupportedOperationException("String.replaceFirst()");
- }
-
- public static String multiply(String self, Number factor) {
View
69 groovy/jsr/build.xml
@@ -1,69 +0,0 @@
-<?xml version="1.0"?>
-<project name="jsr" default="default">
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <!-- directories -->
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <property name="publish.dir" value="/home/projects/groovy/public_html/jsr"/>
- <property name="spec.wiki.dir" value="spec/wiki"/>
-
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <!-- targets -->
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <target name="default"
- depends="publish"
- description="default: publish distributables"
- />
-
- <target name="clean" description="remove all built files">
- <!--workaround for biscuit local dir issue -->
- <delete file="SearchAndReplace"/>
- <delete file="SearchAndReplaceRegex"/>
- <delete file="TemplatePage.html"/>
-
- <ant dir="spec" target="clean"/>
- <ant dir="ideas/parsers/antlr" target="clean"/>
- </target>
-
- <target name="doc">
- <echo>
------------------------
-render specification...
------------------------
- </echo>
- <!--workaround for biscuit local dir issue -->
- <copy file="spec/SearchAndReplace" todir="."/>
- <copy file="spec/SearchAndReplaceRegex" todir="."/>
- <copy file="spec/TemplatePage.html" todir="."/>
- <ant dir="spec" target="render" inheritAll="false"/>
-
- <echo>
------------------------
-render grammar...
------------------------
- </echo>
- <!-- bring grammar over from groovy-core -->
- <copy todir="ideas/parsers/antlr/src">
- <fileset dir="../groovy-core/src/main">
- <include name="**/groovy.g"/>
- </fileset>
- </copy>
-
- <ant dir="ideas/parsers/antlr" target="docs" inheritAll="false"/>
-
-
- </target>
-
- <target name="publish" depends="doc" description="publish distributables">
- <copy todir="${publish.dir}/spec">
- <fileset dir="${spec.wiki.dir}"/>
- </copy>
-
- <copy todir="${publish.dir}/spec">
- <fileset dir="ideas/parsers/antlr/doc/">
- <include name="GroovyRecognizer.html"/>
- <include name="GroovyLexer.html"/>
- </fileset>
- </copy>
- </target>
-
-</project>
View
1  groovy/jsr/ideas/README.txt
@@ -1 +0,0 @@
-This directory is a place holder for new ideas we may wish to add to the language.
View
236 groovy/jsr/ideas/parsers/antlr/build.xml
@@ -1,236 +0,0 @@
-<?xml version="1.0"?>
-<project name="groovyparser" default="default">
-
- <!-- project generated by http://megg.sf.net -->
- <!-- author Jeremy.Rayner@bigfoot.com -->
-
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <!-- compile settings -->
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <property name="build.debug" value="on"/>
- <property name="version.number" value="0.0.2"/>
-
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <!-- directories -->
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <property name="src.dir" value="src"/>
- <property name="generated.src.dir" value="srcgen"/>
- <property name="build.dir" value="build"/>
- <property name="build.classes.dir" value="${build.dir}/classes"/>
- <property name="dist.dir" value="dist"/>
- <property name="lib.dir" value="lib"/>
- <property name="standalone.dir" value="standalone"/>
- <property name="standalone.working.dir" value="temp"/>
-
- <!-- TODO limit exposure to groovy classic -->
- <property name="groovy.classic.dir" value="../../../../groovy-core/target/install"/>
- <property name="groovy.classic.lib.dir" value="${groovy.classic.dir}/embeddable"/>
- <property name="groovy.classic.ext.lib.dir" value="${groovy.classic.dir}/lib"/>
-
- <!-- javadoc properties -->
- <property name="javadoc.dir" value="doc"/>
- <property name="javadoc.packages" value="org.*"/>
-
- <!-- junit properties -->
- <property name="test.src.dir" value="test"/>
- <property name="test.classes.dir" value="${build.dir}/test/classes"/>
- <property name="test.reports.dir" value="reports"/>
-
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <!-- datatypes -->
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <path id="compile.classpath">
- <pathelement location="${build.classes.dir}"/>
- <fileset dir="${lib.dir}">
- <include name="**/*.jar" />
- <include name="**/*.zip" />
- </fileset>
-
- <!-- TODO limit exposure to groovy classic -->
- <fileset dir="${groovy.classic.lib.dir}">
- <include name="**/*.jar" />
- </fileset>
- </path>
-
- <path id="test.classpath">
- <path refid="compile.classpath"/>
- <pathelement location="${test.classes.dir}"/>
- <fileset dir="${groovy.classic.ext.lib.dir}">
- <include name="**/*.jar" />
- </fileset>
- </path>
-
-
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <!-- targets -->
- <!-- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
- <target name="default"
- depends="dist"
- description="default: build everything"
- />
-
- <target name="all"
- depends="test,dist"
- description="build and test everything"
- />
-
- <target name="clean" description="remove all built files">
- <delete dir="${test.reports.dir}"/>
- <delete dir="${standalone.dir}"/>
- <delete dir="${javadoc.dir}" />
- <delete dir="${generated.src.dir}" />
- <delete dir="${build.dir}" />
- <delete dir="${dist.dir}" />
- </target>
-
- <target name="dist"
- depends="compile"
- description="create distributables (jars etc)">
- <mkdir dir="${dist.dir}" />
- <jar jarfile="${dist.dir}/groovy-jsr-${version.number}.jar"
- manifest="${src.dir}/manifest.txt">
- <fileset dir="${build.classes.dir}"/>
- </jar>
- </target>
-
- <target name="docs" depends="generate" description="generate documentation">
- <mkdir dir="${javadoc.dir}" />
-
- <antlr target="${src.dir}/org/codehaus/groovy/antlr/groovy.g"
- html="true"
- outputdirectory="${javadoc.dir}">
- <classpath>
- <fileset dir="${lib.dir}">
- <include name="**/*.jar"/>
- </fileset>
- </classpath>
- </antlr>
- <move file="doc/GroovyLexer.txt" tofile="doc/GroovyLexer.html" failonerror="No"/>
-
- <copy todir="${generated.src.dir}">
- <fileset dir="${src.dir}"/>
- </copy>
-
- <javadoc sourcepath="${generated.src.dir}"
- destdir="${javadoc.dir}"
- packagenames="${javadoc.packages}"
- classpathref="compile.classpath"
- use="true"
- windowtitle="groovyc"
- private="true"/>
- </target>
-
- <target name="test"
- depends="test-compile"
- description="run all test cases">
- <junit haltonfailure="true" fork="yes">
- <classpath refid="test.classpath"/>
- <formatter type="plain" usefile="false"/>
- <batchtest>
- <fileset dir="${test.src.dir}">
- <include name="**/*Test.java" />
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="test-classic"
- depends="test-compile"
- description="run all the classic test cases">
- <junit haltonfailure="true" fork="yes">
- <classpath refid="test.classpath"/>
- <formatter type="plain" usefile="false"/>
- <batchtest>
- <fileset dir="${test.src.dir}">
- <include name="**/AllTests.java" />
- </fileset>
- </batchtest>
- </junit>
- </target>
-
- <target name="pretty-test"
- depends="test-compile"
- description="HTML output of test cases">
- <mkdir dir="${test.reports.dir}"/>
- <junit haltonfailure="false" fork="yes">
- <classpath refid="test.classpath"/>
- <formatter type="xml" usefile="true"/>
-
- <batchtest todir="${test.reports.dir}">
- <fileset dir="${test.src.dir}">
- <include name="**/*Test.java" />
- </fileset>
- </batchtest>
-
- </junit>
-
- <junitreport todir="${test.reports.dir}">
- <fileset dir="${test.reports.dir}">
- <include name="TEST-*.xml"/>
- </fileset>
- <report format="frames" todir="${test.reports.dir}"/>
- </junitreport>
- </target>
-
- <target name="standalone" depends="dist" description="merge all jars together">
- <mkdir dir="${standalone.working.dir}"/>
- <unzip dest="${standalone.working.dir}">
- <fileset dir="${lib.dir}">
- <include name="*.jar"/>
- </fileset>
- <fileset dir="${dist.dir}">
- <include name="*.jar"/>
- </fileset>
- </unzip>
- <copy todir="${standalone.working.dir}">
- <fileset dir="licenses"/>
- </copy>
- <mkdir dir="standalone"/>
- <jar jarfile="standalone/groovy-jsr-${version.number}.jar"
- manifest="${src.dir}/manifest.txt">
- <fileset dir="${standalone.working.dir}"/>
- </jar>
- <delete dir="${standalone.working.dir}"/>
- </target>
-
-
-
- <target name="generate" depends="init" description="generate sources from a grammar file">
- <mkdir dir="${generated.src.dir}/org/codehaus/groovy/antlr"/>
- <antlr target="${src.dir}/org/codehaus/groovy/antlr/groovy.g"
- outputdirectory="${generated.src.dir}/org/codehaus/groovy/antlr">
- <classpath>
- <fileset dir="${lib.dir}">
- <include name="**/*.jar"/>
- </fileset>
- </classpath>
- </antlr>
- </target>
-
- <target name="compile" depends="generate" description="compile java">
- <mkdir dir="${build.classes.dir}" />
- <copy todir="${generated.src.dir}">
- <fileset dir="${src.dir}"/>
- </copy>
- <javac srcdir="${generated.src.dir}"
- destdir="${build.classes.dir}"
- classpathref="compile.classpath"
- debug="${build.debug}"
- deprecation="on"/>
- </target>
-
- <target name="test-compile" depends="compile" description="compile tests">
- <mkdir dir="${test.classes.dir}" />
- <javac srcdir="${test.src.dir}"
- destdir="${test.classes.dir}"
- classpathref="test.classpath"
- debug="${build.debug}"
- deprecation="on"/>
- </target>
-
- <target name="init">
- <tstamp />
- <mkdir dir="${lib.dir}"/>
- </target>
-
-</project>
View
BIN  groovy/jsr/ideas/parsers/antlr/lib/antlr-2.7.5.jar
Binary file not shown
View
BIN  groovy/jsr/ideas/parsers/antlr/lib/xpp3-1.1.3.4d_b4_min.jar
Binary file not shown
View
BIN  groovy/jsr/ideas/parsers/antlr/lib/xstream-1.1.jar
Binary file not shown
View
11 groovy/jsr/ideas/parsers/antlr/licenses/antlr.license.txt
@@ -1,11 +0,0 @@
-
-http://www.antlr.org/license.html
-
-Software License
-
-We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR, including the incorporation of ANTLR, or its output, into commerical software.
-
-We encourage users to develop software with ANTLR. However, we do ask that credit is given to us for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code into one of your programs (commercial product, research project, or otherwise) that you acknowledge this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that the headers remain intact in our source code. As long as these guidelines are kept, we expect to continue enhancing this system and expect to make other tools available as they are completed.
-
-Terence Parr
-
View
46 groovy/jsr/ideas/parsers/antlr/licenses/xpp3-license.txt
@@ -1,46 +0,0 @@
-Indiana University Extreme! Lab Software License
-
-Version 1.1.1
-
-Copyright (c) 2002 Extreme! Lab, Indiana University. All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-
-2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the distribution.
-
-3. The end-user documentation included with the redistribution, if any,
- must include the following acknowledgment:
-
- "This product includes software developed by the Indiana University
- Extreme! Lab (http://www.extreme.indiana.edu/)."
-
-Alternately, this acknowledgment may appear in the software itself,
-if and wherever such third-party acknowledgments normally appear.
-
-4. The names "Indiana Univeristy" and "Indiana Univeristy Extreme! Lab"
-must not be used to endorse or promote products derived from this
-software without prior written permission. For written permission,
-please contact http://www.extreme.indiana.edu/.
-
-5. Products derived from this software may not use "Indiana Univeristy"
-name nor may "Indiana Univeristy" appear in their name, without prior
-written permission of the Indiana University.
-
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
-WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE AUTHORS, COPYRIGHT HOLDERS OR ITS CONTRIBUTORS
-BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
View
27 groovy/jsr/ideas/parsers/antlr/licenses/xstream-1.1-license.txt
@@ -1,27 +0,0 @@
-(BSD Style License)
-
-Copyright (c) 2003-2004, Joe Walnes
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-Redistributions of source code must retain the above copyright notice, this list of
-conditions and the following disclaimer. Redistributions in binary form must reproduce
-the above copyright notice, this list of conditions and the following disclaimer in
-the documentation and/or other materials provided with the distribution.
-
-Neither the name of XStream nor the names of its contributors may be used to endorse
-or promote products derived from this software without specific prior written
-permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
-EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
-SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
-WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGE.
View
9 groovy/jsr/ideas/parsers/antlr/misc/README.txt
@@ -1,9 +0,0 @@
--=-=-=-=-=-
-Misc Files
--=-=-=-=-=-
-
-antlr_grammar_files.xml - ANTLR syntax colouring for IntelliJ
-
- put the antlr_grammar_files.xml in ~/Library/Preferences/IntelliJ IDEA/filetypes (Mac OS X path)
-
-java.g - the original grammar that groovy.g is based upon
View
23 groovy/jsr/ideas/parsers/antlr/misc/antlr_grammar_files.xml
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<filetype binary="false" default_extension="g" extensions="g" description="ANTLR Grammar files" name="ANTLR Grammar files">
- <highlighting>
- <options>
- <option name="LINE_COMMENT" value="//" />
- <option name="COMMENT_START" value="/*" />
- <option name="COMMENT_END" value="*/" />
- <option name="HEX_PREFIX" value="" />
- <option name="NUM_POSTFIXES" value="" />
- </options>
- <keywords ignore_case="false">
- <keyword name="class" />
- <keyword name="extends" />
- <keyword name="header" />
- <keyword name="options" />
- <keyword name="returns" />
- </keywords>
- <keywords2 />
- <keywords3 />
- <keywords4 />
- </highlighting>
-</filetype>
-
View
1,273 groovy/jsr/ideas/parsers/antlr/misc/java.g
@@ -1,1273 +0,0 @@
-/** Java 1.3 Recognizer
- *
- * Run 'java Main [-showtree] directory-full-of-java-files'
- *
- * [The -showtree option pops up a Swing frame that shows
- * the AST constructed from the parser.]
- *
- * Run 'java Main <directory full of java files>'
- *
- * Contributing authors:
- * John Mitchell johnm@non.net
- * Terence Parr parrt@magelang.com
- * John Lilley jlilley@empathy.com
- * Scott Stanchfield thetick@magelang.com
- * Markus Mohnen mohnen@informatik.rwth-aachen.de
- * Peter Williams pete.williams@sun.com
- * Allan Jacobs Allan.Jacobs@eng.sun.com
- * Steve Messick messick@redhills.com
- * John Pybus john@pybus.org
- *
- * Version 1.00 December 9, 1997 -- initial release
- * Version 1.01 December 10, 1997
- * fixed bug in octal def (0..7 not 0..8)
- * Version 1.10 August 1998 (parrt)
- * added tree construction
- * fixed definition of WS,comments for mac,pc,unix newlines
- * added unary plus
- * Version 1.11 (Nov 20, 1998)
- * Added "shutup" option to turn off last ambig warning.
- * Fixed inner class def to allow named class defs as statements
- * synchronized requires compound not simple statement
- * add [] after builtInType DOT class in primaryExpression
- * "const" is reserved but not valid..removed from modifiers
- * Version 1.12 (Feb 2, 1999)
- * Changed LITERAL_xxx to xxx in tree grammar.
- * Updated java.g to use tokens {...} now for 2.6.0 (new feature).
- *
- * Version 1.13 (Apr 23, 1999)
- * Didn't have (stat)? for else clause in tree parser.
- * Didn't gen ASTs for interface extends. Updated tree parser too.
- * Updated to 2.6.0.
- * Version 1.14 (Jun 20, 1999)
- * Allowed final/abstract on local classes.
- * Removed local interfaces from methods
- * Put instanceof precedence where it belongs...in relationalExpr
- * It also had expr not type as arg; fixed it.
- * Missing ! on SEMI in classBlock
- * fixed: (expr) + "string" was parsed incorrectly (+ as unary plus).
- * fixed: didn't like Object[].class in parser or tree parser
- * Version 1.15 (Jun 26, 1999)
- * Screwed up rule with instanceof in it. :( Fixed.
- * Tree parser didn't like (expr).something; fixed.
- * Allowed multiple inheritance in tree grammar. oops.
- * Version 1.16 (August 22, 1999)
- * Extending an interface built a wacky tree: had extra EXTENDS.
- * Tree grammar didn't allow multiple superinterfaces.
- * Tree grammar didn't allow empty var initializer: {}
- * Version 1.17 (October 12, 1999)
- * ESC lexer rule allowed 399 max not 377 max.
- * java.tree.g didn't handle the expression of synchronized
- * statements.
- * Version 1.18 (August 12, 2001)
- * Terence updated to Java 2 Version 1.3 by
- * observing/combining work of Allan Jacobs and Steve
- * Messick. Handles 1.3 src. Summary:
- * o primary didn't include boolean.class kind of thing
- * o constructor calls parsed explicitly now:
- * see explicitConstructorInvocation
- * o add strictfp modifier
- * o missing objBlock after new expression in tree grammar
- * o merged local class definition alternatives, moved after declaration
- * o fixed problem with ClassName.super.field
- * o reordered some alternatives to make things more efficient
- * o long and double constants were not differentiated from int/float
- * o whitespace rule was inefficient: matched only one char
- * o add an examples directory with some nasty 1.3 cases
- * o made Main.java use buffered IO and a Reader for Unicode support
- * o supports UNICODE?
- * Using Unicode charVocabulay makes code file big, but only
- * in the bitsets at the end. I need to make ANTLR generate
- * unicode bitsets more efficiently.
- * Version 1.19 (April 25, 2002)
- * Terence added in nice fixes by John Pybus concerning floating
- * constants and problems with super() calls. John did a nice
- * reorg of the primary/postfix expression stuff to read better
- * and makes f.g.super() parse properly (it was METHOD_CALL not
- * a SUPER_CTOR_CALL). Also:
- *
- * o "finally" clause was a root...made it a child of "try"
- * o Added stuff for asserts too for Java 1.4, but *commented out*
- * as it is not backward compatible.
- *
- * Version 1.20 (October 27, 2002)
- *
- * Terence ended up reorging John Pybus' stuff to
- * remove some nondeterminisms and some syntactic predicates.
- * Note that the grammar is stricter now; e.g., this(...) must
- * be the first statement.
- *
- * Trinary ?: operator wasn't working as array name:
- * (isBig ? bigDigits : digits)[i];
- *
- * Checked parser/tree parser on source for
- * Resin-2.0.5, jive-2.1.1, jdk 1.3.1, Lucene, antlr 2.7.2a4,
- * and the 110k-line jGuru server source.
- *
- * Version 1.21 (October 17, 2003)
- * Fixed lots of problems including:
- * Ray Waldin: add typeDefinition to interfaceBlock in java.tree.g
- * He found a problem/fix with floating point that start with 0
- * Ray also fixed problem that (int.class) was not recognized.
- * Thorsten van Ellen noticed that \n are allowed incorrectly in strings.
- * TJP fixed CHAR_LITERAL analogously.
- *
- * Version 1.22 (April 14, 2004)
- * Changed vocab to be ..\uFFFE to avoid -1 char. removed dummy VOCAB rule.
- *
- * This grammar is in the PUBLIC DOMAIN
- */
-class JavaRecognizer extends Parser;
-options {
- k = 2; // two token lookahead
- exportVocab=Java; // Call its vocabulary "Java"
- codeGenMakeSwitchThreshold = 2; // Some optimizations
- codeGenBitsetTestThreshold = 3;
- defaultErrorHandler = false; // Don't generate parser error handlers
- buildAST = true;
-}
-
-tokens {
- BLOCK; MODIFIERS; OBJBLOCK; SLIST; CTOR_DEF; METHOD_DEF; VARIABLE_DEF;
- INSTANCE_INIT; STATIC_INIT; TYPE; CLASS_DEF; INTERFACE_DEF;
- PACKAGE_DEF; ARRAY_DECLARATOR; EXTENDS_CLAUSE; IMPLEMENTS_CLAUSE;
- PARAMETERS; PARAMETER_DEF; LABELED_STAT; TYPECAST; INDEX_OP;
- POST_INC; POST_DEC; METHOD_CALL; EXPR; ARRAY_INIT;
- IMPORT; UNARY_MINUS; UNARY_PLUS; CASE_GROUP; ELIST; FOR_INIT; FOR_CONDITION;
- FOR_ITERATOR; EMPTY_STAT; FINAL="final"; ABSTRACT="abstract";
- STRICTFP="strictfp"; SUPER_CTOR_CALL; CTOR_CALL;
-}
-
-// Compilation Unit: In Java, this is a single file. This is the start
-// rule for this parser
-compilationUnit
- : // A compilation unit starts with an optional package definition
- ( packageDefinition
- | /* nothing */
- )
-
- // Next we have a series of zero or more import statements
- ( importDefinition )*
-
- // Wrapping things up with any number of class or interface
- // definitions
- ( typeDefinition )*
-
- EOF!
- ;
-
-
-// Package statement: "package" followed by an identifier.
-packageDefinition
- options {defaultErrorHandler = true;} // let ANTLR handle errors
- : p:"package"^ {#p.setType(PACKAGE_DEF);} identifier SEMI!
- ;
-
-
-// Import statement: import followed by a package or class name
-importDefinition
- options {defaultErrorHandler = true;}
- : i:"import"^ {#i.setType(IMPORT);} identifierStar SEMI!
- ;
-
-// A type definition in a file is either a class or interface definition.
-typeDefinition
- options {defaultErrorHandler = true;}
- : m:modifiers!
- ( classDefinition[#m]
- | interfaceDefinition[#m]
- )
- | SEMI!
- ;
-
-/** A declaration is the creation of a reference or primitive-type variable
- * Create a separate Type/Var tree for each var in the var list.
- */
-declaration!
- : m:modifiers t:typeSpec[false] v:variableDefinitions[#m,#t]
- {#declaration = #v;}
- ;
-
-// A type specification is a type name with possible brackets afterwards
-// (which would make it an array type).
-typeSpec[boolean addImagNode]
- : classTypeSpec[addImagNode]
- | builtInTypeSpec[addImagNode]
- ;
-
-// A class type specification is a class type with possible brackets afterwards
-// (which would make it an array type).
-classTypeSpec[boolean addImagNode]
- : identifier (lb:LBRACK^ {#lb.setType(ARRAY_DECLARATOR);} RBRACK!)*
- {
- if ( addImagNode ) {
- #classTypeSpec = #(#[TYPE,"TYPE"], #classTypeSpec);
- }
- }
- ;
-
-// A builtin type specification is a builtin type with possible brackets
-// afterwards (which would make it an array type).
-builtInTypeSpec[boolean addImagNode]
- : builtInType (lb:LBRACK^ {#lb.setType(ARRAY_DECLARATOR);} RBRACK!)*
- {
- if ( addImagNode ) {
- #builtInTypeSpec = #(#[TYPE,"TYPE"], #builtInTypeSpec);
- }
- }
- ;
-
-// A type name. which is either a (possibly qualified) class name or
-// a primitive (builtin) type
-type
- : identifier
- | builtInType
- ;
-
-// The primitive types.
-builtInType
- : "void"
- | "boolean"
- | "byte"
- | "char"
- | "short"
- | "int"
- | "float"
- | "long"
- | "double"
- ;
-
-// A (possibly-qualified) java identifier. We start with the first IDENT
-// and expand its name by adding dots and following IDENTS
-identifier
- : IDENT ( DOT^ IDENT )*
- ;
-
-identifierStar
- : IDENT
- ( DOT^ IDENT )*
- ( DOT^ STAR )?
- ;
-
-// A list of zero or more modifiers. We could have used (modifier)* in
-// place of a call to modifiers, but I thought it was a good idea to keep
-// this rule separate so they can easily be collected in a Vector if
-// someone so desires
-modifiers
- : ( modifier )*
- {#modifiers = #([MODIFIERS, "MODIFIERS"], #modifiers);}
- ;
-
-// modifiers for Java classes, interfaces, class/instance vars and methods
-modifier
- : "private"
- | "public"
- | "protected"
- | "static"
- | "transient"
- | "final"
- | "abstract"
- | "native"
- | "threadsafe"
- | "synchronized"
-// | "const" // reserved word, but not valid
- | "volatile"
- | "strictfp"
- ;
-
-// Definition of a Java class
-classDefinition![AST modifiers]
- : "class" IDENT
- // it _might_ have a superclass...
- sc:superClassClause
- // it might implement some interfaces...
- ic:implementsClause
- // now parse the body of the class
- cb:classBlock
- {#classDefinition = #(#[CLASS_DEF,"CLASS_DEF"],
- modifiers,IDENT,sc,ic,cb);}
- ;
-
-superClassClause!
- : ( "extends" id:identifier )?
- {#superClassClause = #(#[EXTENDS_CLAUSE,"EXTENDS_CLAUSE"],id);}
- ;
-
-// Definition of a Java Interface
-interfaceDefinition![AST modifiers]
- : "interface" IDENT
- // it might extend some other interfaces
- ie:interfaceExtends
- // now parse the body of the interface (looks like a class...)
- cb:classBlock
- {#interfaceDefinition = #(#[INTERFACE_DEF,"INTERFACE_DEF"],
- modifiers,IDENT,ie,cb);}
- ;
-
-
-// This is the body of a class. You can have fields and extra semicolons,
-// That's about it (until you see what a field is...)
-classBlock
- : LCURLY!
- ( field | SEMI! )*
- RCURLY!
- {#classBlock = #([OBJBLOCK, "OBJBLOCK"], #classBlock);}
- ;
-
-// An interface can extend several other interfaces...
-interfaceExtends
- : (
- e:"extends"!
- identifier ( COMMA! identifier )*
- )?
- {#interfaceExtends = #(#[EXTENDS_CLAUSE,"EXTENDS_CLAUSE"],
- #interfaceExtends);}
- ;
-
-// A class can implement several interfaces...
-implementsClause
- : (
- i:"implements"! identifier ( COMMA! identifier )*
- )?
- {#implementsClause = #(#[IMPLEMENTS_CLAUSE,"IMPLEMENTS_CLAUSE"],
- #implementsClause);}
- ;
-
-// Now the various things that can be defined inside a class or interface...
-// Note that not all of these are really valid in an interface (constructors,
-// for example), and if this grammar were used for a compiler there would
-// need to be some semantic checks to make sure we're doing the right thing...
-field!
- : // method, constructor, or variable declaration
- mods:modifiers
- ( h:ctorHead s:constructorBody // constructor
- {#field = #(#[CTOR_DEF,"CTOR_DEF"], mods, h, s);}
-
- | cd:classDefinition[#mods] // inner class
- {#field = #cd;}
-
- | id:interfaceDefinition[#mods] // inner interface
- {#field = #id;}
-
- | t:typeSpec[false] // method or variable declaration(s)
- ( IDENT // the name of the method
-
- // parse the formal parameter declarations.
- LPAREN! param:parameterDeclarationList RPAREN!
-
- rt:declaratorBrackets[#t]
-
- // get the list of exceptions that this method is
- // declared to throw
- (tc:throwsClause)?
-
- ( s2:compoundStatement | SEMI )
- {#field = #(#[METHOD_DEF,"METHOD_DEF"],
- mods,
- #(#[TYPE,"TYPE"],rt),
- IDENT,
- param,
- tc,
- s2);}
- | v:variableDefinitions[#mods,#t] SEMI
-// {#field = #(#[VARIABLE_DEF,"VARIABLE_DEF"], v);}
- {#field = #v;}
- )
- )
-
- // "static { ... }" class initializer
- | "static" s3:compoundStatement
- {#field = #(#[STATIC_INIT,"STATIC_INIT"], s3);}
-
- // "{ ... }" instance initializer
- | s4:compoundStatement
- {#field = #(#[INSTANCE_INIT,"INSTANCE_INIT"], s4);}
- ;
-
-constructorBody
- : lc:LCURLY^ {#lc.setType(SLIST);}
- ( options { greedy=true; } : explicitConstructorInvocation)?
- (statement)*
- RCURLY!
- ;
-
-/** Catch obvious constructor calls, but not the expr.super(...) calls */
-explicitConstructorInvocation
- : "this"! lp1:LPAREN^ argList RPAREN! SEMI!
- {#lp1.setType(CTOR_CALL);}
- | "super"! lp2:LPAREN^ argList RPAREN! SEMI!
- {#lp2.setType(SUPER_CTOR_CALL);}
- ;
-
-variableDefinitions[AST mods, AST t]
- : variableDeclarator[getASTFactory().dupTree(mods),
- getASTFactory().dupTree(t)]
- ( COMMA!
- variableDeclarator[getASTFactory().dupTree(mods),
- getASTFactory().dupTree(t)]
- )*
- ;
-
-/** Declaration of a variable. This can be a class/instance variable,
- * or a local variable in a method
- * It can also include possible initialization.
- */
-variableDeclarator![AST mods, AST t]
- : id:IDENT d:declaratorBrackets[t] v:varInitializer
- {#variableDeclarator = #(#[VARIABLE_DEF,"VARIABLE_DEF"], mods, #(#[TYPE,"TYPE"],d), id, v);}
- ;
-
-declaratorBrackets[AST typ]
- : {#declaratorBrackets=typ;}
- (lb:LBRACK^ {#lb.setType(ARRAY_DECLARATOR);} RBRACK!)*
- ;
-
-varInitializer
- : ( ASSIGN^ initializer )?
- ;
-
-// This is an initializer used to set up an array.
-arrayInitializer
- : lc:LCURLY^ {#lc.setType(ARRAY_INIT);}
- ( initializer
- (
- // CONFLICT: does a COMMA after an initializer start a new
- // initializer or start the option ',' at end?
- // ANTLR generates proper code by matching
- // the comma as soon as possible.
- options {
- warnWhenFollowAmbig = false;
- }
- :
- COMMA! initializer
- )*
- (COMMA!)?
- )?
- RCURLY!
- ;
-
-
-// The two "things" that can initialize an array element are an expression
-// and another (nested) array initializer.
-initializer
- : expression
- | arrayInitializer
- ;
-
-// This is the header of a method. It includes the name and parameters
-// for the method.
-// This also watches for a list of exception classes in a "throws" clause.
-ctorHead
- : IDENT // the name of the method
-
- // parse the formal parameter declarations.
- LPAREN! parameterDeclarationList RPAREN!
-
- // get the list of exceptions that this method is declared to throw
- (throwsClause)?
- ;
-
-// This is a list of exception classes that the method is declared to throw
-throwsClause
- : "throws"^ identifier ( COMMA! identifier )*
- ;
-
-
-// A list of formal parameters
-parameterDeclarationList
- : ( parameterDeclaration ( COMMA! parameterDeclaration )* )?
- {#parameterDeclarationList = #(#[PARAMETERS,"PARAMETERS"],
- #parameterDeclarationList);}
- ;
-
-// A formal parameter.
-parameterDeclaration!
- : pm:parameterModifier t:typeSpec[false] id:IDENT
- pd:declaratorBrackets[#t]
- {#parameterDeclaration = #(#[PARAMETER_DEF,"PARAMETER_DEF"],
- pm, #([TYPE,"TYPE"],pd), id);}
- ;
-
-parameterModifier
- : (f:"final")?
- {#parameterModifier = #(#[MODIFIERS,"MODIFIERS"], f);}
- ;
-
-// Compound statement. This is used in many contexts:
-// Inside a class definition prefixed with "static":
-// it is a class initializer
-// Inside a class definition without "static":
-// it is an instance initializer
-// As the body of a method
-// As a completely indepdent braced block of code inside a method
-// it starts a new scope for variable definitions
-
-compoundStatement
- : lc:LCURLY^ {#lc.setType(SLIST);}
- // include the (possibly-empty) list of statements
- (statement)*
- RCURLY!
- ;
-
-
-statement
- // A list of statements in curly braces -- start a new scope!
- : compoundStatement
-
- // declarations are ambiguous with "ID DOT" relative to expression
- // statements. Must backtrack to be sure. Could use a semantic
- // predicate to test symbol table to see what the type was coming
- // up, but that's pretty hard without a symbol table ;)
- | (declaration)=> declaration SEMI!
-
- // An expression statement. This could be a method call,
- // assignment statement, or any other expression evaluated for
- // side-effects.
- | expression SEMI!
-
- // class definition
- | m:modifiers! classDefinition[#m]
-
- // Attach a label to the front of a statement
- | IDENT c:COLON^ {#c.setType(LABELED_STAT);} statement
-
- // If-else statement
- | "if"^ LPAREN! expression RPAREN! statement
- (
- // CONFLICT: the old "dangling-else" problem...
- // ANTLR generates proper code matching
- // as soon as possible. Hush warning.
- options {
- warnWhenFollowAmbig = false;
- }
- :
- "else"! statement
- )?
-
- // For statement
- | "for"^
- LPAREN!
- forInit SEMI! // initializer
- forCond SEMI! // condition test
- forIter // updater
- RPAREN!
- statement // statement to loop over
-
- // While statement
- | "while"^ LPAREN! expression RPAREN! statement
-
- // do-while statement
- | "do"^ statement "while"! LPAREN! expression RPAREN! SEMI!
-
- // get out of a loop (or switch)
- | "break"^ (IDENT)? SEMI!
-
- // do next iteration of a loop
- | "continue"^ (IDENT)? SEMI!
-
- // Return an expression
- | "return"^ (expression)? SEMI!
-
- // switch/case statement
- | "switch"^ LPAREN! expression RPAREN! LCURLY!
- ( casesGroup )*
- RCURLY!
-
- // exception try-catch block
- | tryBlock
-
- // throw an exception
- | "throw"^ expression SEMI!
-
- // synchronize a statement
- | "synchronized"^ LPAREN! expression RPAREN! compoundStatement
-
- // asserts (uncomment if you want 1.4 compatibility)
- // | "assert"^ expression ( COLON! expression )? SEMI!
-
- // empty statement
- | s:SEMI {#s.setType(EMPTY_STAT);}
- ;
-
-casesGroup
- : ( // CONFLICT: to which case group do the statements bind?
- // ANTLR generates proper code: it groups the
- // many "case"/"default" labels together then
- // follows them with the statements
- options {
- greedy = true;
- }
- :
- aCase
- )+
- caseSList
- {#casesGroup = #([CASE_GROUP, "CASE_GROUP"], #casesGroup);}
- ;
-
-aCase
- : ("case"^ expression | "default") COLON!
- ;
-
-caseSList
- : (statement)*
- {#caseSList = #(#[SLIST,"SLIST"],#caseSList);}
- ;
-
-// The initializer for a for loop
-forInit
- // if it looks like a declaration, it is
- : ( (declaration)=> declaration
- // otherwise it could be an expression list...
- | expressionList
- )?
- {#forInit = #(#[FOR_INIT,"FOR_INIT"],#forInit);}
- ;
-
-forCond
- : (expression)?
- {#forCond = #(#[FOR_CONDITION,"FOR_CONDITION"],#forCond);}
- ;
-
-forIter
- : (expressionList)?
- {#forIter = #(#[FOR_ITERATOR,"FOR_ITERATOR"],#forIter);}
- ;
-
-// an exception handler try/catch block
-tryBlock
- : "try"^ compoundStatement
- (handler)*
- ( finallyClause )?
- ;
-
-finallyClause
- : "finally"^ compoundStatement
- ;
-
-// an exception handler
-handler
- : "catch"^ LPAREN! parameterDeclaration RPAREN! compoundStatement
- ;
-
-
-// expressions
-// Note that most of these expressions follow the pattern
-// thisLevelExpression :
-// nextHigherPrecedenceExpression
-// (OPERATOR nextHigherPrecedenceExpression)*
-// which is a standard recursive definition for a parsing an expression.
-// The operators in java have the following precedences:
-// lowest (13) = *= /= %= += -= <<= >>= >>>= &= ^= |=
-// (12) ?:
-// (11) ||
-// (10) &&
-// ( 9) |
-// ( 8) ^
-// ( 7) &
-// ( 6) == !=
-// ( 5) < <= > >=
-// ( 4) << >>
-// ( 3) +(binary) -(binary)
-// ( 2) * / %
-// ( 1) ++ -- +(unary) -(unary) ~ ! (type)
-// [] () (method call) . (dot -- identifier qualification)
-// new () (explicit parenthesis)
-//
-// the last two are not usually on a precedence chart; I put them in
-// to point out that new has a higher precedence than '.', so you
-// can validy use
-// new Frame().show()
-//
-// Note that the above precedence levels map to the rules below...
-// Once you have a precedence chart, writing the appropriate rules as below
-// is usually very straightfoward
-
-
-
-// the mother of all expressions
-expression
- : assignmentExpression
- {#expression = #(#[EXPR,"EXPR"],#expression);}
- ;
-
-
-// This is a list of expressions.
-expressionList
- : expression (COMMA! expression)*
- {#expressionList = #(#[ELIST,"ELIST"], expressionList);}
- ;
-
-
-// assignment expression (level 13)
-assignmentExpression
- : conditionalExpression
- ( ( ASSIGN^
- | PLUS_ASSIGN^
- | MINUS_ASSIGN^
- | STAR_ASSIGN^
- | DIV_ASSIGN^
- | MOD_ASSIGN^
- | SR_ASSIGN^
- | BSR_ASSIGN^
- | SL_ASSIGN^
- | BAND_ASSIGN^
- | BXOR_ASSIGN^
- | BOR_ASSIGN^
- )
- assignmentExpression
- )?
- ;
-
-
-// conditional test (level 12)
-conditionalExpression
- : logicalOrExpression
- ( QUESTION^ assignmentExpression COLON! conditionalExpression )?
- ;
-
-
-// logical or (||) (level 11)
-logicalOrExpression
- : logicalAndExpression (LOR^ logicalAndExpression)*
- ;
-
-
-// logical and (&&) (level 10)
-logicalAndExpression
- : inclusiveOrExpression (LAND^ inclusiveOrExpression)*
- ;
-
-
-// bitwise or non-short-circuiting or (|) (level 9)
-inclusiveOrExpression
- : exclusiveOrExpression (BOR^ exclusiveOrExpression)*
- ;
-
-
-// exclusive or (^) (level 8)
-exclusiveOrExpression
- : andExpression (BXOR^ andExpression)*