/** * A convenience routine to create a standalone SourceUnit on a String * with defaults for almost everything that is configurable. */ public static SourceUnit create(String name, String source) { CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTolerance(1); return new SourceUnit(name, source, configuration, null, new ErrorCollector(configuration)); }
/** * A convenience routine to create a standalone SourceUnit on a String * with defaults for almost everything that is configurable. */ public static SourceUnit create(String name, String source, int tolerance) { CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTolerance(tolerance); return new SourceUnit(name, source, configuration, null, new ErrorCollector(configuration)); }
public ErrorCollector pushErrorCollector() { ErrorCollector current = getErrorCollector(); ErrorCollector collector = new ErrorCollector(current.getConfiguration()); errorCollectors.add(0, collector); return collector; }
/** * visit a method call target, to infer the type. Don't report errors right * away, that will be done by a later visitMethod call */ protected void silentlyVisitMethodNode(final MethodNode directMethodCallCandidate) { // visit is authorized because the classnode belongs to the same source unit ErrorCollector collector = new ErrorCollector(typeCheckingContext.getErrorCollector().getConfiguration()); startMethodInference(directMethodCallCandidate, collector); }
public MultipleCompilationErrorsException(ErrorCollector ec) { super(0, null); if (ec == null) { CompilerConfiguration config = super.getUnit() != null ? super.getUnit().getConfiguration() : new CompilerConfiguration(); collector = new ErrorCollector(config); } else { collector = ec; } }
/** * Initialize the ProcessingUnit to the empty state. */ public ProcessingUnit(CompilerConfiguration configuration, GroovyClassLoader classLoader, ErrorCollector er) { this.phase = Phases.INITIALIZATION; this.configuration = configuration; this.setClassLoader(classLoader); configure((configuration == null ? new CompilerConfiguration() : configuration)); if (er==null) er = new ErrorCollector(getConfiguration()); this.errorCollector = er; }
/** * Resolve metadata and details of the annotation. * * @param unvisited the node to visit * @return the visited node */ private AnnotationNode visitAnnotation(AnnotationNode unvisited) { ErrorCollector errorCollector = new ErrorCollector(this.source.getConfiguration()); AnnotationVisitor visitor = new AnnotationVisitor(this.source, errorCollector); AnnotationNode visited = visitor.visit(unvisited); this.source.getErrorCollector().addCollectorContents(errorCollector); return visited; }
CompilationUnit cu = new CompilationUnit(loader); CompilerConfiguration config = new CompilerConfiguration(); SourceUnit su = new SourceUnit(name + "wrapper", "", config, loader, new ErrorCollector(config)); cu.addSource(su); cu.compile(Phases.CONVERSION);
public static class UsesErrorCollectorTwice { @Rule public ErrorCollector collector= new ErrorCollector(); @Test public void example() { String x = [..] collector.checkThat(x, not(containsString("a"))); collector.checkThat(y, containsString("b")); } }
private void visitConstructorOrMethod(MethodNode node, int methodTarget) { visitAnnotations(node, methodTarget); for (int i = 0; i < node.getParameters().length; i++) { Parameter parameter = node.getParameters()[i]; visitAnnotations(parameter, AnnotationNode.PARAMETER_TARGET); } if (this.currentClass.isAnnotationDefinition() && !node.isStaticConstructor()) { ErrorCollector errorCollector = new ErrorCollector(this.source.getConfiguration()); AnnotationVisitor visitor = new AnnotationVisitor(this.source, errorCollector); visitor.setReportClass(currentClass); visitor.checkReturnType(node.getReturnType(), node); if (node.getParameters().length > 0) { addError("Annotation members may not have parameters.", node.getParameters()[0]); } if (node.getExceptions().length > 0) { addError("Annotation members may not have a throws clause.", node.getExceptions()[0]); } ReturnStatement code = (ReturnStatement) node.getCode(); if (code != null) { visitor.visitExpression(node.getName(), code.getExpression(), node.getReturnType()); visitor.checkCircularReference(currentClass, node.getReturnType(), code.getExpression()); } this.source.getErrorCollector().addCollectorContents(errorCollector); } Statement code = node.getCode(); if (code != null) { code.visit(this); } }
@Rule public ErrorCollector collector = new ErrorCollector(); @Test public void testSomething() { boolean status = doStatusEval(); collector.checkThat("Disabled user can register for workshop", false, Is.is(status)); //Continue adding things to the collector. }
/** * A convenience routine to create a standalone SourceUnit on a String * with defaults for almost everything that is configurable. */ public static SourceUnit create(String name, String source) { CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTolerance(1); return new SourceUnit(name, source, configuration, null, new ErrorCollector(configuration)); }
/** * A convenience routine to create a standalone SourceUnit on a String * with defaults for almost everything that is configurable. */ public static SourceUnit create(String name, String source, int tolerance) { CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTolerance(tolerance); return new SourceUnit(name, source, configuration, null, new ErrorCollector(configuration)); }
/** * A convenience routine to create a standalone SourceUnit on a String * with defaults for almost everything that is configurable. */ public static SourceUnit create(String name, String source) { CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTolerance(1); return new SourceUnit(name, source, configuration, null, new ErrorCollector(configuration)); }
/** * A convenience routine to create a standalone SourceUnit on a String * with defaults for almost everything that is configurable. */ public static SourceUnit create(String name, String source, int tolerance) { CompilerConfiguration configuration = new CompilerConfiguration(); configuration.setTolerance(tolerance); return new SourceUnit(name, source, configuration, null, new ErrorCollector(configuration)); }
@Rule public ErrorCollector collector = new ErrorCollector(); @Test public void testMethod() { collector.checkThat(variable, equalTo(otherVaiable)); collector.checkThat(variable2, equalTo(otherVaiable2)); }
public MultipleCompilationErrorsException(ErrorCollector ec) { super(0, null); if (ec == null) { CompilerConfiguration config = super.getUnit() != null ? super.getUnit().getConfiguration() : new CompilerConfiguration(); collector = new ErrorCollector(config); } else { collector = ec; } }
/** * Initialize the ProcessingUnit to the empty state. */ public ProcessingUnit(CompilerConfiguration configuration, GroovyClassLoader classLoader, ErrorCollector er) { this.phase = Phases.INITIALIZATION; this.configuration = configuration; this.setClassLoader(classLoader); configure((configuration == null ? new CompilerConfiguration() : configuration)); if (er==null) er = new ErrorCollector(getConfiguration()); this.errorCollector = er; }
public MultipleCompilationErrorsException(ErrorCollector ec) { super(0, null); if (ec == null) { CompilerConfiguration config = super.getUnit() != null ? super.getUnit().getConfiguration() : new CompilerConfiguration(); collector = new ErrorCollector(config); } else { collector = ec; } }
/** * Resolve metadata and details of the annotation. */ private AnnotationNode visitAnnotation(AnnotationNode node) { ErrorCollector errorCollector = new ErrorCollector(this.source.getConfiguration()); AnnotationVisitor visitor = new AnnotationVisitor(this.source, errorCollector); AnnotationNode solvedAnnotation = visitor.visit(node); this.source.getErrorCollector().addCollectorContents(errorCollector); return solvedAnnotation; }