tidied up the test case a little and added a multi-line-string test
15 lines of code changed in:
Completed support for modifiers on class, method, field, parameter
128 lines of code changed in:
added a working map test case now and fixed bug in qualified name support
69 lines of code changed in:
Fixed switch statement
66 lines of code changed in:
* fix for switch statement in new grammar
23 lines of code changed in:
added another test case
12 lines of code changed in:
* fix in new grammar to allow 'if' without 'else'
* fix to ensure that the expression after 'throw' is not discarded on the AST
30 lines of code changed in:
* Fixing a problem with some strange whitespace characters in the grammar file itself.
5 lines of code changed in:
* Nudged antlr up to the newly released version 2.7.5
0 lines of code changed in:
fixed text selection handling
2 lines of code changed in:
Added annotation support to the New Groovy parser & AST (we don't actually generate any annotation bytecode yet though, but they are put into the AST correctly)
366 lines of code changed in:
Added support for labelled statements and breaks
71 lines of code changed in:
Added support for as, casting and instanceof
60 lines of code changed in:
beautify and introduce text selection sensitivity
45 lines of code changed in:
Added list subscript operator, unary expressions and prefix/postfix operators (the latter don't seem to work currently)
108 lines of code changed in:
Ensured that the ultimate cause of a compilation failure is attached to the exception
76 lines of code changed in:
Tidied up the test a touch
12 lines of code changed in:
Got imports and package names working properly in the new parser by reusing the old name resolution code
194 lines of code changed in:
Minor refactor to make it easier to share code with the classic ASTBuilder and the new Antlr AST builder
Almost got imports & package names working...
338 lines of code changed in:
Added more failing test cases
15 lines of code changed in:
Added support for dot expressions
105 lines of code changed in:
Tidied up the code some more and added support for try/catch/finally
197 lines of code changed in:
Added line number information into the AST from Antlr
53 lines of code changed in:
more explicit class loading code to try find the Antlr parser plugin
19 lines of code changed in:
removed tracing
0 lines of code changed in:
Added support for for()
43 lines of code changed in:
Support top level method calls without parens
7 lines of code changed in:
patch to avoid endless loops like in GROOVY-709
1 lines of code changed in:
Added closure support
16 lines of code changed in:
Added list constructions...
44 lines of code changed in:
A few more statements working...
94 lines of code changed in:
while() now working
19 lines of code changed in:
Added support for if() and added stubs for all of the statements
129 lines of code changed in:
* added dependancy to groovy-all (classic), for the antlr->classic AST transforms
6 lines of code changed in:
Got most of the basic expressions working so simple programs are now working with the new parser; still more work required, but at least we can start playing with New Groovy now!
352 lines of code changed in:
Basic variable declarations are working
37 lines of code changed in:
changed the bytecode generation to enable multiple catches
70 lines of code changed in:
Added support for GStrings and fields
122 lines of code changed in:
got hello-world working! who-hoo!
(still lots left to do though!)
73 lines of code changed in:
early version of working Antlr AST -> Groovy AST.
So far it only really creates classes and empty methods - still much to wire in like modifiers, parameters and code :)
202 lines of code changed in:
* merge two comments together as antlr seems to bork on them on some platforms
(with a TokenStreamException)
2 lines of code changed in:
latest version of the antlr plugin
4 lines of code changed in:
Added a factory class so that we can resolve the parser plugin just once, then cache it around and be able to make new instances quickly without looking in class loaders etc
58 lines of code changed in:
* added groovy classic to compile path for groovyc.jar, this is so the AntlrParserPlugin can find the
classic components that it needs in its public interface
* amended AntlrParserPlugin slightly to potentially keep the lexer around for the lifetime of the plugin
* ammended the test generator to insert two spaces ' ' in place of '//' when removing comments,
this ensures that line and column references in errors are identical with the original groovy sources
* removed groovyc.jar from testlib as this is regenerated and placed in testlib by the antlr build.xml
13 lines of code changed in:
First cut of the basic Antlr plugin shell, ready for the hard work of actually converting the Antlr AST to groovy AST
1 lines of code changed in:
* fixed typo
2 lines of code changed in:
* added a proposal for possible behaviour of closure parameters in the jsr grammar
15 lines of code changed in:
patch for Groovy-708 done by Pilho Kim
6 lines of code changed in:
First cut of the basic Antlr plugin shell, ready for the hard work of actually converting the Antlr AST to groovy AST
19 lines of code changed in:
Refactorings to make it easier to drop in the new Antlr basd parser
65 lines of code changed in:
Fix for GROOVY-704 - many thanks to Martin C. Martin for doing all the legwork on this - cheers!
81 lines of code changed in:
removed old dead code
0 lines of code changed in:
* John Rose's proposed grammar for Groovy, rebased onto Java 1.5 by Jeremy Rayner.
1628 lines of code changed in:
* Rebased from Michael Studman's Java 1.5 grammar Version 1.22.4 (October 21, 2004)
1004 lines of code changed in:
* added changes based on jrose comments http://article.gmane.org/gmane.comp.lang.groovy.jsr/401
*** All uses of the new nonterminal annotation should by accompanied by
'nls!', by analogy with modifier.
> // TODO - verify that 't' is useful/correct here, used to be 'rt'
*** Yes, that's correct. ??The effect of declaratorBrackets would be a no-op
if the brackets are not present.
*** There's a lookahead (declaration)=> which should probably be
(declarationStart)=>.
*** The 'for' syntax is too back-tracky for my taste; it probably hides
ambiguities.
I don't favor supporting both {for (x in y)} and {for (x : y)}.
The former is what the Java designers would have used, if they had been
able to introduce the key word 'in'; let's do it right without worrying
about sideways compatibility.
The rule I propose is "if there are semicolons inside the for-head, we
support Java 1.4-type loops, else it's a Groovy x-in-y loop. ??And
change colon to 'in' when porting from Java."
Therefore, there's no need at all for squeezing in the new Java 5 "for"
syntax, since Groovy's is a suitable alternative.
Even if I get outvoted and we support the Java 5 syntax, I'd prefer for
it to be stuck onto the side of the grammar, later, not irretrievably
wedged now into the middle.
*** The argumentLabelStart rule has a typo: ??too many COLON tokens.
*** Also, '.' ('0'..'9')* should be '.' ('0'..'9')+ instead.
59 lines of code changed in:
new handler for the bytecode calls inside scripts
0 lines of code changed in:
should enable Exception handling when an Exception is thrown inside a method called from inside the script
61 lines of code changed in:
added isolated unit test for BuilderSupport
88 lines of code changed in:
Prior to beta 10 the shell would exit if an Error or Throwable was caught here,
but this behavior made using Java 1.4 assertions in scripts difficult and could
have other undesirable effects for other recoverable Errors such as
NoClassDefFoundError. Truly non-recoverable Errors such as OOMEs will kill
the JVM anyway, so no real need to exit or expect to catch such Errors here.
4 lines of code changed in:
Fix typo in output from display command
1 lines of code changed in:
No JIRA issue reported but Mike Stover sent in an email.
2 lines of code changed in:
The information regarding the beta9 version and artifact was incorect.
2 lines of code changed in:
introduce isolated unit test for BuilderSupport
1 lines of code changed in:
- Return null when a Variant of type empty is returned
- Coerce GString to Strings when passing it to a method or a property
15 lines of code changed in:
* Grammar file is now at the stage where antlr will generate a parser, and the TCK can be run over the result
* However, there still remains some non-determinism within this parser which is visible as antlr warnings during generation
218 lines of code changed in:
* fixed some of the more obvious issues, still much non-determinism left however...
28 lines of code changed in:
Fixing up the hibernate support to handle bag
7 lines of code changed in:
* Finished initial port across from groovy.g to Studman's 1.5 grammar
* Next stage is to make sure the grammar is valid...
154 lines of code changed in:
* finally got as far as the lexer, not far to go now... whee this is fun
265 lines of code changed in:
* a few more productions, precedence of operators etc
403 lines of code changed in:
GROOVY-692: applied patch from Martin which implements two new Groovy methods: maximize and minimize which return a value of a collection which maximize or minimize the result of a closure given as argument.
51 lines of code changed in:
Applied patch for GROOVY-76 on behalf of Brad Dillman. Re-enabled all tests.
9 lines of code changed in:
this is a fix for GROOVY-696
13 lines of code changed in:
GROOVY-703: added a null check when converting to a byte array
2 lines of code changed in:
removed StringIncrementAndDecrementTest
0 lines of code changed in:
changed to some very simple increment and decrement operations for String not breaking the java way of sorting Strings
27 lines of code changed in:
undone the last change
22 lines of code changed in:
removed the StringIncrementDecrementTest
0 lines of code changed in:
upgraded versions after release
9 lines of code changed in:
provide a hook to allow the configuration of statements before they are accessed.
sql.withStatement { s| s.querySize = 100 }
sql.eachRow("select * from foo") { println it.name }
72 lines of code changed in:
changed the way to get the size of a range a little
2 lines of code changed in:
the increment and decrement test are moved to StringIncrementAndDecrement
0 lines of code changed in:
upgraded to latest Groovy
1 lines of code changed in:
* added StringIncrementAndDecrementTest to test suite
2 lines of code changed in:
this patch should fix GROOVY-368 it enables a handling for incrementation and decrementation of strings more like ruby
228 lines of code changed in:
test for string increment and decrement inspired by GROOVY-368
1 lines of code changed in:
* a few more productions, this time including some statements and the quite interesting for loops (classic, each, in)
246 lines of code changed in:
another example showing access to outlook
36 lines of code changed in:
getting ready for release
2 lines of code changed in:
GROOVY-678 swing2d example code cleanup
11 lines of code changed in:
add another scriptom example that shows use of keystroke-automation via Windows Scripting Host
28 lines of code changed in:
* still working through adding groovy productions to the 1.5 grammar
85 lines of code changed in:
GROOVY-284: allow spaces for the JDK home
5 lines of code changed in:
* another few productions added to the 1.5 grammar
83 lines of code changed in:
GROOVY-558 and GROOVY-616: applied patch from Jochen Theodorou
- AnyClass.class and AnyClass.getClass() always return java.lang.Class.
- references to ".class" do not work if full qualified class name is used - will always evaluate to "java.lang.Class.class"
49 lines of code changed in:
added a disambiguate test case
2 lines of code changed in:
GROOVY-683 "Can't assign to native types in Groovy Beans" is fixed now, thanks to Pilho Kim's patch.
115 lines of code changed in:
I have taken java.g for Java1.5 from Michael Studman (1.22.4)
and have begun applying the groovy.diff from java.g (1.22)
back onto the new root (1.22.4)
(by hand, as 'patch' won't be enough)
for a map of the task see...
http://groovy.javanicus.com/java-g.png
(apologies for committing thrice, but I have put the base Studman grammar
in at r1.2, for ease of comparison)
171 lines of code changed in:
* for ease of comparison, I am placing the baseline studman grammar here
52 lines of code changed in:
I have taken java.g for Java1.5 from Michael Studman (1.22.4)
and have begun applying the groovy.diff from java.g (1.22)
back onto the new root (1.22.4)
(by hand, as 'patch' won't be enough)
for a map of the task see...
http://groovy.javanicus.com/java-g.png
1940 lines of code changed in:
GROOVY-699, GROOVY-695, GROOVY-514:
- don't call anymore getWriter() before setContentType()
- lazy load the writer or the outputstream with a specific ServletBinding
- applied and improved Mark Turansky's patch from GROOVY-695
- removed optional binding of implicit variables
- minor refactorings, javadoc comments
302 lines of code changed in:
change custom widget names
30 lines of code changed in:
Added missing javadoc comments.
46 lines of code changed in:
Clearer error message when a property is not present in the binding.
2 lines of code changed in:
* Fix for GROOVY-691
61 lines of code changed in:
* provided 'compile', 'test' and 'doc' targets for JSR
17 lines of code changed in:
GROOVY-674 : Add an empty println method so you can do it from anywhere.
9 lines of code changed in:
GROOVY-686: Patch from Boris Gruschko applied (GroovyServlet crashes if the parameters are passed in the HTTP Request)
1 lines of code changed in:
Added a licence header for good measure :-)
136 lines of code changed in:
Attempt at providing event handling hooks, by the means of closures.
189 lines of code changed in: