@Override public Boolean visit(final PackageDeclaration n1, final Node arg) { final PackageDeclaration n2 = (PackageDeclaration) arg; if (!nodeEquals(n1.getName(), n2.getName())) { return Boolean.FALSE; } if (!nodesEquals(n1.getAnnotations(), n2.getAnnotations())) { return Boolean.FALSE; } return Boolean.TRUE; }
@Override public R visit(final PackageDeclaration n, final A arg) { if (n.getAnnotations() != null) { for (final AnnotationExpr a : n.getAnnotations()) { { R result = a.accept(this, arg); if (result != null) { return result; } } } } { R result = n.getName().accept(this, arg); if (result != null) { return result; } } return null; }
@Override public Node visit(final PackageDeclaration n, final A arg) { final List<AnnotationExpr> annotations = n.getAnnotations(); if (annotations != null) { for (int i = 0; i < annotations.size(); i++) { annotations.set(i, (AnnotationExpr) annotations.get(i).accept(this, arg)); } removeNulls(annotations); } n.setName((NameExpr) n.getName().accept(this, arg)); return n; }
@Override public void visit(final PackageDeclaration n, final A arg) { visitComment(n.getComment(), arg); if (n.getAnnotations() != null) { for (final AnnotationExpr a : n.getAnnotations()) { a.accept(this, arg); } } n.getName().accept(this, arg); }
public void visit(PackageDeclaration n, Object arg) { printAnnotations(n.getAnnotations(), arg); printer.print("package "); n.getName().accept(this, arg); printer.printLn(";"); printer.printLn(); }
@Override public void visit(final PackageDeclaration n, final Object arg) { printJavaComment(n.getComment(), arg); printAnnotations(n.getAnnotations(), arg); printer.print("package "); n.getName().accept(this, arg); printer.printLn(";"); printer.printLn(); printOrphanCommentsEnding(n); }
@Override public Node visit(PackageDeclaration _n, Object _arg) { List<AnnotationExpr> annotations = visit(_n.getAnnotations(), _arg); NameExpr name = cloneNodes(_n.getName(), _arg); Comment comment = cloneNodes(_n.getComment(), _arg); PackageDeclaration r = new PackageDeclaration( _n.getBeginLine(), _n.getBeginColumn(), _n.getEndLine(), _n.getEndColumn(), annotations, name ); r.setComment(comment); return r; }
@Test public void testRemoveAnnotation() throws Exception { CompilerAssert<File, File> helper = incrementalCompiler("metamodel.application"); helper.assertCompile(); // JavaFile pkgFile = helper.assertJavaSource("metamodel.application.package-info"); PackageDeclaration pkg = pkgFile.assertPackage(); pkg.getAnnotations().clear(); pkgFile.assertSave(); // helper.assertCompile(); } }
@Test public void testRemoveAnnotation() throws Exception { CompilerAssert<File, File> helper = incrementalCompiler("metamodel.application"); helper.assertCompile(); // JavaFile pkgFile = helper.assertJavaSource("metamodel.application.package-info"); PackageDeclaration pkg = pkgFile.assertPackage(); pkg.getAnnotations().clear(); pkgFile.assertSave(); // helper.assertCompile(); } }
@Test public void testRemoveAnnotation() throws Exception { CompilerAssert<File, File> helper = compiler("metamodel.tag"); helper.assertCompile(); // JavaFile file = helper.assertJavaSource("metamodel.tag.package-info"); PackageDeclaration a = file.assertPackage(); a.getAnnotations().remove(0); file.assertSave(); // File ser = helper.getSourceOutput().getPath("juzu", "metamodel.ser"); MetaModelState unserialize = Tools.unserialize(MetaModelState.class, ser); ModuleMetaModel mm = (ModuleMetaModel)unserialize.metaModel; mm.getQueue().clear(); Tools.serialize(unserialize, ser); // helper.assertCompile(); unserialize = Tools.unserialize(MetaModelState.class, ser); mm = (ModuleMetaModel)unserialize.metaModel; List<MetaModelEvent> events = mm.getQueue().clear(); assertEquals(1, events.size()); assertEquals(MetaModelEvent.BEFORE_REMOVE, events.get(0).getType()); assertInstanceOf(TemplateMetaModel.class, events.get(0).getObject()); assertEquals(Path.parse("/metamodel/tag/tags/foo.gtmpl"), ((TemplateMetaModel)events.get(0).getObject()).getPath()); } }
@Test public void testRemoveAnnotation() throws Exception { CompilerAssert<File, File> helper = compiler("metamodel.tag"); helper.assertCompile(); // JavaFile file = helper.assertJavaSource("metamodel.tag.package-info"); PackageDeclaration a = file.assertPackage(); a.getAnnotations().remove(0); file.assertSave(); // File ser = helper.getSourceOutput().getPath("juzu", "metamodel.ser"); MetaModelState unserialize = Tools.unserialize(MetaModelState.class, ser); ModuleMetaModel mm = (ModuleMetaModel)unserialize.metaModel; mm.getQueue().clear(); Tools.serialize(unserialize, ser); // helper.assertCompile(); unserialize = Tools.unserialize(MetaModelState.class, ser); mm = (ModuleMetaModel)unserialize.metaModel; List<MetaModelEvent> events = mm.getQueue().clear(); assertEquals(1, events.size()); assertEquals(MetaModelEvent.BEFORE_REMOVE, events.get(0).getType()); assertInstanceOf(TemplateMetaModel.class, events.get(0).getObject()); assertEquals(Path.parse("/metamodel/tag/tags/foo.gtmpl"), ((TemplateMetaModel)events.get(0).getObject()).getPath()); } }
SingleMemberAnnotationExpr applicationDecl = (SingleMemberAnnotationExpr)a.getAnnotations().get(0); NormalAnnotationExpr tagDecl = (NormalAnnotationExpr)applicationDecl.getMemberValue(); boolean changed = false;
SingleMemberAnnotationExpr applicationDecl = (SingleMemberAnnotationExpr)a.getAnnotations().get(0); NormalAnnotationExpr tagDecl = (NormalAnnotationExpr)applicationDecl.getMemberValue(); boolean changed = false;
pkg.getAnnotations().clear(); List<AnnotationExpr> a = Collections.<AnnotationExpr>singletonList(new NormalAnnotationExpr(ASTHelper.createNameExpr( Application.class.getName()),
pkg.getAnnotations().clear(); List<AnnotationExpr> a = Collections.<AnnotationExpr>singletonList(new NormalAnnotationExpr(ASTHelper.createNameExpr( Application.class.getName()),