[
https://issues.apache.org/jira/browse/GROOVY-8083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Sun updated GROOVY-8083:
-------------------------------
Description:
I tried to extend GroovyCodeVisitor to support visiting lambda expression, but
AstNodeToScriptVisitor fails to implement the interface GroovyCodeVisitor.
Even if visitLambdaExpression is implemented by AstNodeToScriptVisitor, but
still failed to compile, so I have to provide a default implementation for
visitLambdaExpression method...
Error messages( https://travis-ci.org/danielsun1106/groovy/builds/199517082 ):
{code}
/home/travis/build/danielsun1106/groovy/subprojects/groovy-parser-antlr4/src/test/groovy/org/apache/groovy/parser/antlr4/util/AstDumper.groovy:
85: Can't have an abstract method in a non-abstract class. The class
'org.apache.groovy.parser.antlr4.util.AstNodeToScriptVisitor' must be declared
abstract or the method 'void
visitLambdaExpression(org.codehaus.groovy.ast.expr.LambdaExpression)' must be
implemented.
@ line 85, column 1.
class AstNodeToScriptVisitor extends
CompilationUnit.PrimaryClassNodeOperation implements GroovyCodeVisitor,
GroovyClassVisitor {
^
1 error
FAILED
{code}
was:
I tried to extend GroovyCodeVisitor to support visiting lambda expression, but
AstNodeToScriptVisitor fails to implement the interface GroovyCodeVisitor.
Even if visitLambdaExpression is implemented by AstNodeToScriptVisitor, but
still failed to compile, so I have to provide a default implementation for
visitLambdaExpression method...
Error messages(https://travis-ci.org/danielsun1106/groovy/builds/199517082):
/home/travis/build/danielsun1106/groovy/subprojects/groovy-parser-antlr4/src/test/groovy/org/apache/groovy/parser/antlr4/util/AstDumper.groovy:
85: Can't have an abstract method in a non-abstract class. The class
'org.apache.groovy.parser.antlr4.util.AstNodeToScriptVisitor' must be declared
abstract or the method 'void
visitLambdaExpression(org.codehaus.groovy.ast.expr.LambdaExpression)' must be
implemented.
@ line 85, column 1.
class AstNodeToScriptVisitor extends
CompilationUnit.PrimaryClassNodeOperation implements GroovyCodeVisitor,
GroovyClassVisitor {
^
1 error
FAILED
> Fails to implement interface
> ----------------------------
>
> Key: GROOVY-8083
> URL: https://issues.apache.org/jira/browse/GROOVY-8083
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 3.0
> Environment: java version "1.8.0_121"
> Reporter: Daniel Sun
>
> I tried to extend GroovyCodeVisitor to support visiting lambda expression,
> but AstNodeToScriptVisitor fails to implement the interface
> GroovyCodeVisitor.
> Even if visitLambdaExpression is implemented by AstNodeToScriptVisitor, but
> still failed to compile, so I have to provide a default implementation for
> visitLambdaExpression method...
> Error messages( https://travis-ci.org/danielsun1106/groovy/builds/199517082 ):
> {code}
> /home/travis/build/danielsun1106/groovy/subprojects/groovy-parser-antlr4/src/test/groovy/org/apache/groovy/parser/antlr4/util/AstDumper.groovy:
> 85: Can't have an abstract method in a non-abstract class. The class
> 'org.apache.groovy.parser.antlr4.util.AstNodeToScriptVisitor' must be
> declared abstract or the method 'void
> visitLambdaExpression(org.codehaus.groovy.ast.expr.LambdaExpression)' must be
> implemented.
> @ line 85, column 1.
> class AstNodeToScriptVisitor extends
> CompilationUnit.PrimaryClassNodeOperation implements GroovyCodeVisitor,
> GroovyClassVisitor {
> ^
> 1 error
> FAILED
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)