You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by em...@apache.org on 2019/11/20 20:38:52 UTC
[groovy] branch master updated: remove outer class
This is an automated email from the ASF dual-hosted git repository.
emilles pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
View the commit online:
https://github.com/apache/groovy/commit/b668bac0f481dac82bb935cbe1110f2fc9645067
The following commit(s) were added to refs/heads/master by this push:
new b668bac remove outer class
b668bac is described below
commit b668bac0f481dac82bb935cbe1110f2fc9645067
Author: Eric Milles <er...@thomsonreuters.com>
AuthorDate: Wed Nov 20 14:38:48 2019 -0600
remove outer class
---
.../MarkupTemplateTypeCheckingExtension.groovy | 26 ++++++++--------------
1 file changed, 9 insertions(+), 17 deletions(-)
diff --git a/subprojects/groovy-templates/src/main/groovy/groovy/text/markup/MarkupTemplateTypeCheckingExtension.groovy b/subprojects/groovy-templates/src/main/groovy/groovy/text/markup/MarkupTemplateTypeCheckingExtension.groovy
index e52958c..ad3ad3b 100644
--- a/subprojects/groovy-templates/src/main/groovy/groovy/text/markup/MarkupTemplateTypeCheckingExtension.groovy
+++ b/subprojects/groovy-templates/src/main/groovy/groovy/text/markup/MarkupTemplateTypeCheckingExtension.groovy
@@ -41,7 +41,6 @@ import org.codehaus.groovy.ast.stmt.ExpressionStatement
import org.codehaus.groovy.control.ParserPlugin
import org.codehaus.groovy.control.ResolveVisitor
import org.codehaus.groovy.control.SourceUnit
-import org.codehaus.groovy.control.messages.SyntaxErrorMessage
import org.codehaus.groovy.syntax.SyntaxException
import org.codehaus.groovy.syntax.Types
import org.codehaus.groovy.transform.stc.GroovyTypeCheckingExtensionSupport
@@ -174,30 +173,23 @@ class MarkupTemplateTypeCheckingExtension extends GroovyTypeCheckingExtensionSup
@CompileStatic
private static ClassNode buildNodeFromString(String option, TypeCheckingContext ctx) {
- def moduleNode = ParserPlugin.buildAST("Dummy<$option> dummy;", ctx.compilationUnit.configuration, ctx.compilationUnit.classLoader, ctx.errorCollector)
- ClassNode parsedNode = ((DeclarationExpression) ((ExpressionStatement) moduleNode.statementBlock.statements[0]).expression).leftExpression.type
- ClassNode dummyClass = new ClassNode("dummy", 0, OBJECT_TYPE)
- dummyClass.setModule(new ModuleNode(ctx.source))
- MethodNode dummyMN = new MethodNode(
- "dummy",
- 0,
- parsedNode,
- Parameter.EMPTY_ARRAY,
- ClassNode.EMPTY_ARRAY,
- EmptyStatement.INSTANCE
- )
- dummyClass.addMethod(dummyMN)
+ ModuleNode moduleNode = ParserPlugin.buildAST("$option dummy;", ctx.compilationUnit.configuration, ctx.compilationUnit.classLoader, ctx.errorCollector)
+ ClassNode optionNode = ((DeclarationExpression) ((ExpressionStatement) moduleNode.statementBlock.statements[0]).expression).leftExpression.type
+ ClassNode dummyClass = new ClassNode('dummy', 0, OBJECT_TYPE)
+ dummyClass.module = new ModuleNode(ctx.source)
+ MethodNode dummyMethod = new MethodNode('dummy', 0, optionNode, Parameter.EMPTY_ARRAY, ClassNode.EMPTY_ARRAY, EmptyStatement.INSTANCE)
+ dummyClass.addMethod(dummyMethod)
ResolveVisitor visitor = new ResolveVisitor(ctx.compilationUnit) {
@Override
void addError(final String msg, final ASTNode expr) {
- ctx.errorCollector.addErrorAndContinue(new SyntaxErrorMessage(
+ ctx.errorCollector.addErrorAndContinue(
new SyntaxException(msg + '\n', expr.lineNumber, expr.columnNumber, expr.lastLineNumber, expr.lastColumnNumber),
- ctx.source)
+ ctx.source
)
}
}
visitor.startResolving(dummyClass, ctx.source)
- return dummyMN.returnType
+ return dummyMethod.returnType
}
private static class BuilderMethodReplacer extends ClassCodeExpressionTransformer {