Skip to content

Instantly share code, notes, and snippets.

@lucaswerkmeister
Last active December 31, 2015 21:19
Show Gist options
  • Save lucaswerkmeister/8046187 to your computer and use it in GitHub Desktop.
Save lucaswerkmeister/8046187 to your computer and use it in GitHub Desktop.
Additional info for ceylon/ceylon-compiler#1514
package tmp;
@.com.redhat.ceylon.compiler.java.metadata.Ceylon(major = 6)
@.com.redhat.ceylon.compiler.java.metadata.Method
final class foo_ {
private foo_() {
}
@.com.redhat.ceylon.compiler.java.metadata.TypeInfo("ceylon.language::Anything")
static void foo(@.com.redhat.ceylon.compiler.java.metadata.Name("bar")
@.com.redhat.ceylon.compiler.java.metadata.TypeInfo("ceylon.language::Object")
@.com.redhat.ceylon.compiler.java.metadata.Annotations({@.com.redhat.ceylon.compiler.java.metadata.Annotation("variable")})
.java.lang.Object bar) {
}
}
+ [CompilationUnit] (1:0-3:0)
| + [ImportList]
| + void [MethodDefinition] (1:0-3:0) => Method[foo:Anything]
| | + [AnnotationList]
| | + foo [Identifier] (1:5-1:7)
| | + void [VoidModifier] <Anything> (1:0-1:3)
| | + () [ParameterList] (1:8-1:12)
| | | + [InitializerParameter] (1:9-1:11)
| | | | + bar [Identifier] (1:9-1:11)
| | + {} [Block] (1:14-3:0)
| | | + [AttributeDeclaration] (2:4-2:23) => Value[foo.bar:Object]
| | | | + [AnnotationList] (2:4-2:11)
| | | | | + [Annotation] <VariableAnnotation> (2:4-2:11)
| | | | | | + [BaseMemberExpression] <VariableAnnotation()> (2:4-2:11) => LazyMethod[variable:VariableAnnotation]
| | | | | | | + variable [Identifier] (2:4-2:11)
| | | | | | | + [InferredTypeArguments]
| | | | | | + [PositionalArgumentList]
| | | | + bar [Identifier] (2:20-2:22)
| | | | + [BaseType] <Object> (2:13-2:18) => LazyClass[Object]
| | | | | + Object [Identifier] (2:13-2:18)
diff --git a/java(variable Object bar) b/java(bar)
index 62e4b45..16f1f52 100755
--- a/java(variable Object bar)
+++ b/java(bar)
@@ -10,7 +10,6 @@ final class foo_ {
@.com.redhat.ceylon.compiler.java.metadata.TypeInfo("ceylon.language::Anything")
static void foo(@.com.redhat.ceylon.compiler.java.metadata.Name("bar")
@.com.redhat.ceylon.compiler.java.metadata.TypeInfo("ceylon.language::Object")
- @.ceylon.language.VariableAnnotation$annotation$
@.com.redhat.ceylon.compiler.java.metadata.Annotations({@.com.redhat.ceylon.compiler.java.metadata.Annotation("variable")})
.java.lang.Object bar) {
diff --git a/tree(variable Object bar) b/tree(bar)
index 64cea69..46d5455 100755
--- a/tree(variable Object bar)
+++ b/tree(bar)
@@ -1,19 +1,20 @@
-+ [CompilationUnit] (1:0-2:0)
++ [CompilationUnit] (1:0-3:0)
| + [ImportList]
-| + void [MethodDefinition] (1:0-2:0) => Method[foo:Anything]
+| + void [MethodDefinition] (1:0-3:0) => Method[foo:Anything]
| | + [AnnotationList]
| | + foo [Identifier] (1:5-1:7)
| | + void [VoidModifier] <Anything> (1:0-1:3)
-| | + () [ParameterList] (1:8-1:28)
-| | | + [ValueParameterDeclaration] (1:9-1:27)
-| | | | + [AttributeDeclaration] (1:9-1:27) => Value[foo.bar:Object]
-| | | | | + [AnnotationList] (1:9-1:16)
-| | | | | | + [Annotation] <VariableAnnotation> (1:9-1:16)
-| | | | | | | + [BaseMemberExpression] <VariableAnnotation()> (1:9-1:16) => LazyMethod[variable:VariableAnnotation]
-| | | | | | | | + variable [Identifier] (1:9-1:16)
-| | | | | | | | + [InferredTypeArguments]
-| | | | | | | + [PositionalArgumentList]
-| | | | | + bar [Identifier] (1:25-1:27)
-| | | | | + [BaseType] <Object> (1:18-1:23) => LazyClass[Object]
-| | | | | | + Object [Identifier] (1:18-1:23)
-| | + {} [Block] (1:30-2:0)
+| | + () [ParameterList] (1:8-1:12)
+| | | + [InitializerParameter] (1:9-1:11)
+| | | | + bar [Identifier] (1:9-1:11)
+| | + {} [Block] (1:14-3:0)
+| | | + [AttributeDeclaration] (2:4-2:23) => Value[foo.bar:Object]
+| | | | + [AnnotationList] (2:4-2:11)
+| | | | | + [Annotation] <VariableAnnotation> (2:4-2:11)
+| | | | | | + [BaseMemberExpression] <VariableAnnotation()> (2:4-2:11) => LazyMethod[variable:VariableAnnotation]
+| | | | | | | + variable [Identifier] (2:4-2:11)
+| | | | | | | + [InferredTypeArguments]
+| | | | | | + [PositionalArgumentList]
+| | | | + bar [Identifier] (2:20-2:22)
+| | | | + [BaseType] <Object> (2:13-2:18) => LazyClass[Object]
+| | | | | + Object [Identifier] (2:13-2:18)
package tmp;
@.com.redhat.ceylon.compiler.java.metadata.Ceylon(major = 6)
@.com.redhat.ceylon.compiler.java.metadata.Method
final class foo_ {
private foo_() {
}
@.com.redhat.ceylon.compiler.java.metadata.TypeInfo("ceylon.language::Anything")
static void foo(@.com.redhat.ceylon.compiler.java.metadata.Name("bar")
@.com.redhat.ceylon.compiler.java.metadata.TypeInfo("ceylon.language::Object")
@.ceylon.language.VariableAnnotation$annotation$
@.com.redhat.ceylon.compiler.java.metadata.Annotations({@.com.redhat.ceylon.compiler.java.metadata.Annotation("variable")})
.java.lang.Object bar) {
}
}
+ [CompilationUnit] (1:0-2:0)
| + [ImportList]
| + void [MethodDefinition] (1:0-2:0) => Method[foo:Anything]
| | + [AnnotationList]
| | + foo [Identifier] (1:5-1:7)
| | + void [VoidModifier] <Anything> (1:0-1:3)
| | + () [ParameterList] (1:8-1:28)
| | | + [ValueParameterDeclaration] (1:9-1:27)
| | | | + [AttributeDeclaration] (1:9-1:27) => Value[foo.bar:Object]
| | | | | + [AnnotationList] (1:9-1:16)
| | | | | | + [Annotation] <VariableAnnotation> (1:9-1:16)
| | | | | | | + [BaseMemberExpression] <VariableAnnotation()> (1:9-1:16) => LazyMethod[variable:VariableAnnotation]
| | | | | | | | + variable [Identifier] (1:9-1:16)
| | | | | | | | + [InferredTypeArguments]
| | | | | | | + [PositionalArgumentList]
| | | | | + bar [Identifier] (1:25-1:27)
| | | | | + [BaseType] <Object> (1:18-1:23) => LazyClass[Object]
| | | | | | + Object [Identifier] (1:18-1:23)
| | + {} [Block] (1:30-2:0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment