diff options
| author | Roel Spilker <r.spilker@gmail.com> | 2013-08-19 23:50:57 +0200 |
|---|---|---|
| committer | Roel Spilker <r.spilker@gmail.com> | 2013-08-19 23:50:57 +0200 |
| commit | bad93ae677622c79883f658a53484d455e36ce9a (patch) | |
| tree | b9b1b0d707531cfc285084490473c88fe931dc84 | |
| parent | 132d603dd4e43f50555ef33bac290b1080dfc5fa (diff) | |
| download | lombok-bad93ae677622c79883f658a53484d455e36ce9a.tar.gz lombok-bad93ae677622c79883f658a53484d455e36ce9a.tar.bz2 lombok-bad93ae677622c79883f658a53484d455e36ce9a.zip | |
Only look at the line number for errors and warnings.
69 files changed, 167 insertions, 180 deletions
diff --git a/src/core/lombok/javac/CapturingDiagnosticListener.java b/src/core/lombok/javac/CapturingDiagnosticListener.java index 45b4047a..a0ac6adc 100644 --- a/src/core/lombok/javac/CapturingDiagnosticListener.java +++ b/src/core/lombok/javac/CapturingDiagnosticListener.java @@ -52,7 +52,7 @@ public class CapturingDiagnosticListener implements DiagnosticListener<JavaFileO "^" + Pattern.quote(file.getAbsolutePath()) + "\\s*:\\s*\\d+\\s*:\\s*(?:warning:\\s*)?(.*)$", Pattern.DOTALL).matcher(msg); if (m.matches()) msg = m.group(1); - messages.add(new CompilerMessage(d.getLineNumber(), d.getColumnNumber(), d.getStartPosition(), d.getKind() == Kind.ERROR, msg)); + messages.add(new CompilerMessage(d.getLineNumber(), d.getStartPosition(), d.getKind() == Kind.ERROR, msg)); } public void suppress(int start, int end) { @@ -67,15 +67,12 @@ public class CapturingDiagnosticListener implements DiagnosticListener<JavaFileO /** Line Number (starting at 1) */ private final long line; - /** Preferably column, but if that is hard to calculate (e.g. in ecj), then position is acceptable. */ - private final long columnOrPosition; private final long position; private final boolean isError; private final String message; - public CompilerMessage(long line, long columnOrPosition, long position, boolean isError, String message) { + public CompilerMessage(long line, long position, boolean isError, String message) { this.line = line; - this.columnOrPosition = columnOrPosition; this.position = position; this.isError = isError; this.message = message; @@ -89,10 +86,6 @@ public class CapturingDiagnosticListener implements DiagnosticListener<JavaFileO return position; } - public long getColumnOrPosition() { - return columnOrPosition; - } - public boolean isError() { return isError; } @@ -107,7 +100,6 @@ public class CapturingDiagnosticListener implements DiagnosticListener<JavaFileO result = prime * result + (isError ? 1231 : 1237); result = prime * result + (int) (line ^ (line >>> 32)); result = prime * result + ((message == null) ? 0 : message.hashCode()); - result = prime * result + (int) (columnOrPosition ^ (columnOrPosition >>> 32)); return result; } @@ -121,12 +113,11 @@ public class CapturingDiagnosticListener implements DiagnosticListener<JavaFileO if (message == null) { if (other.message != null) return false; } else if (!message.equals(other.message)) return false; - if (columnOrPosition != other.columnOrPosition) return false; return true; } @Override public String toString() { - return String.format("%d:%d %s %s", line, columnOrPosition, isError ? "ERROR" : "WARNING", message); + return String.format("%d %s %s", line, isError ? "ERROR" : "WARNING", message); } } } diff --git a/test/core/src/lombok/CompilerMessageMatcher.java b/test/core/src/lombok/CompilerMessageMatcher.java index af12e199..db288749 100644 --- a/test/core/src/lombok/CompilerMessageMatcher.java +++ b/test/core/src/lombok/CompilerMessageMatcher.java @@ -38,30 +38,26 @@ public class CompilerMessageMatcher { /** Line Number (starting at 1) */ private final long line; - /** Position is either column number, OR position in file starting from the first byte. */ - private final long position; private final Collection<String> messageParts; - public CompilerMessageMatcher(long line, long position, String message) { + public CompilerMessageMatcher(long line, String message) { this.line = line; - this.position = position; this.messageParts = Arrays.asList(message.split("\\s+")); } public static CompilerMessageMatcher asCompilerMessageMatcher(CompilerMessage message) { - return new CompilerMessageMatcher(message.getLine(), message.getColumnOrPosition(), message.getMessage()); + return new CompilerMessageMatcher(message.getLine(), message.getMessage()); } @Override public String toString() { StringBuilder parts = new StringBuilder(); for (String part : messageParts) parts.append(part).append(" "); if (parts.length() > 0) parts.setLength(parts.length() - 1); - return String.format("%d:%d %s", line, position, parts); + return String.format("%d %s", line, parts); } public boolean matches(CompilerMessage message) { if (message.getLine() != this.line) return false; - if (message.getColumnOrPosition() != this.position) return false; for (String token : messageParts) { if (!message.getMessage().contains(token)) return false; } @@ -78,12 +74,12 @@ public class CompilerMessageMatcher { return out; } - private static final Pattern PATTERN = Pattern.compile("^(\\d+):(\\d+) (.*)$"); + private static final Pattern PATTERN = Pattern.compile("^(\\d+) (.*)$"); private static CompilerMessageMatcher read(String line) { line = line.trim(); if (line.isEmpty()) return null; Matcher m = PATTERN.matcher(line); if (!m.matches()) throw new IllegalArgumentException("Typo in test file: " + line); - return new CompilerMessageMatcher(Integer.parseInt(m.group(1)), Integer.parseInt(m.group(2)), m.group(3)); + return new CompilerMessageMatcher(Integer.parseInt(m.group(1)), m.group(2)); } } diff --git a/test/core/src/lombok/RunTestsViaEcj.java b/test/core/src/lombok/RunTestsViaEcj.java index f7294f1f..586c124a 100644 --- a/test/core/src/lombok/RunTestsViaEcj.java +++ b/test/core/src/lombok/RunTestsViaEcj.java @@ -112,7 +112,7 @@ public class RunTestsViaEcj extends AbstractRunTests { CategorizedProblem[] problems = compilationResult.getAllProblems(); if (problems != null) for (CategorizedProblem p : problems) { - messages.add(new CompilerMessage(p.getSourceLineNumber(), p.getSourceStart(), p.getSourceStart(), p.isError(), p.getMessage())); + messages.add(new CompilerMessage(p.getSourceLineNumber(), p.getSourceStart(), p.isError(), p.getMessage())); } CompilationUnitDeclaration cud = compilationUnit_.get(); diff --git a/test/transform/resource/messages-delombok/Accessors.java.messages b/test/transform/resource/messages-delombok/Accessors.java.messages index 367621bd..265bc745 100644 --- a/test/transform/resource/messages-delombok/Accessors.java.messages +++ b/test/transform/resource/messages-delombok/Accessors.java.messages @@ -1 +1 @@ -19:9 Not generating setter for this field: It does not fit your @Accessors prefix list.
\ No newline at end of file +19 Not generating setter for this field: It does not fit your @Accessors prefix list.
\ No newline at end of file diff --git a/test/transform/resource/messages-delombok/BuilderInvalidUse.java.messages b/test/transform/resource/messages-delombok/BuilderInvalidUse.java.messages index aeeb0c86..a04b4f9b 100644 --- a/test/transform/resource/messages-delombok/BuilderInvalidUse.java.messages +++ b/test/transform/resource/messages-delombok/BuilderInvalidUse.java.messages @@ -1,2 +1,2 @@ -1:1 @Getter, @Setter, @Wither, @Data, @ToString, @EqualsAndHashCode, @AllArgsConstructor are not allowed on builder classes. -12:1 @Value is not allowed on builder classes.
\ No newline at end of file +1 @Getter, @Setter, @Wither, @Data, @ToString, @EqualsAndHashCode, @AllArgsConstructor are not allowed on builder classes. +12 @Value is not allowed on builder classes.
\ No newline at end of file diff --git a/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages b/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages index 06b88c10..4f915bbe 100644 --- a/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages +++ b/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages @@ -1 +1 @@ -1:1 Ignoring static constructor name: explicit @XxxArgsConstructor annotation present; its `staticName` parameter will be used. +1 Ignoring static constructor name: explicit @XxxArgsConstructor annotation present; its `staticName` parameter will be used. diff --git a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages index 057a7521..b3490fd0 100644 --- a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages +++ b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages @@ -1,3 +1,3 @@ -1:1 Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated). -10:1 Not generating equals and hashCode: A method with one of those names already exists. (Either all or none of these methods will be generated). -19:1 Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated). +1 Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated). +10 Not generating equals and hashCode: A method with one of those names already exists. (Either all or none of these methods will be generated). +19 Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated). diff --git a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages index 9a0b29f3..f5dfd559 100644 --- a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages +++ b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithSomeExistingMethods.java.messages @@ -1,2 +1,2 @@ -4:1 Not generating equals: One of equals, hashCode, and canEqual exists. You should either write all of these are none of these (in the latter case, lombok generates them). -15:1 Not generating equals and hashCode: One of equals, hashCode, and canEqual exists. You should either write all of these are none of these (in the latter case, lombok generates them). +4 Not generating equals: One of equals, hashCode, and canEqual exists. You should either write all of these are none of these (in the latter case, lombok generates them). +15 Not generating equals and hashCode: One of equals, hashCode, and canEqual exists. You should either write all of these are none of these (in the latter case, lombok generates them). diff --git a/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages b/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages index ae5dd265..9fac15c4 100644 --- a/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages +++ b/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages @@ -1 +1 @@ -1:1 This does nothing; provide either level or makeFinal or both.
\ No newline at end of file +1 This does nothing; provide either level or makeFinal or both.
\ No newline at end of file diff --git a/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages b/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages index 7a326742..7d99aa69 100644 --- a/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages +++ b/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages @@ -1,8 +1,8 @@ -8:9 Not generating isFoo(): A method with that name already exists -14:9 Not generating isFoo(): A method with that name already exists (getFoo) -32:9 Not generating getFoo(): A method with that name already exists -50:9 Not generating getFoo(): A method with that name already exists -62:9 Not generating isFoo(): A method with that name already exists -68:9 Not generating isFoo(): A method with that name already exists (getFoo) -86:9 Not generating getFoo(): A method with that name already exists -104:9 Not generating getFoo(): A method with that name already exists +8 Not generating isFoo(): A method with that name already exists +14 Not generating isFoo(): A method with that name already exists (getFoo) +32 Not generating getFoo(): A method with that name already exists +50 Not generating getFoo(): A method with that name already exists +62 Not generating isFoo(): A method with that name already exists +68 Not generating isFoo(): A method with that name already exists (getFoo) +86 Not generating getFoo(): A method with that name already exists +104 Not generating getFoo(): A method with that name already exists diff --git a/test/transform/resource/messages-delombok/GetterBoolean.java.messages b/test/transform/resource/messages-delombok/GetterBoolean.java.messages index 91ad3512..ab9d659d 100644 --- a/test/transform/resource/messages-delombok/GetterBoolean.java.messages +++ b/test/transform/resource/messages-delombok/GetterBoolean.java.messages @@ -1 +1 @@ -13:9 Not generating isFoo(): A method with that name already exists (getFoo)
\ No newline at end of file +13 Not generating isFoo(): A method with that name already exists (getFoo)
\ No newline at end of file diff --git a/test/transform/resource/messages-delombok/GetterLazyInvalid.java.messages b/test/transform/resource/messages-delombok/GetterLazyInvalid.java.messages index 5c72fd56..5cb47108 100644 --- a/test/transform/resource/messages-delombok/GetterLazyInvalid.java.messages +++ b/test/transform/resource/messages-delombok/GetterLazyInvalid.java.messages @@ -1,6 +1,6 @@ -2:9 'lazy' requires the field to be private and final. -6:9 'lazy' requires the field to be private and final. -10:9 'lazy' requires the field to be private and final. -14:9 'lazy' does not work with AccessLevel.NONE. -17:1 'lazy' is not supported for @Getter on a type. -22:9 'lazy' requires field initialization.
\ No newline at end of file +2 'lazy' requires the field to be private and final. +6 'lazy' requires the field to be private and final. +10 'lazy' requires the field to be private and final. +14 'lazy' does not work with AccessLevel.NONE. +17 'lazy' is not supported for @Getter on a type. +22 'lazy' requires field initialization.
\ No newline at end of file diff --git a/test/transform/resource/messages-delombok/GetterOnMethodErrors.java.messages b/test/transform/resource/messages-delombok/GetterOnMethodErrors.java.messages index 4c82f730..26c30298 100644 --- a/test/transform/resource/messages-delombok/GetterOnMethodErrors.java.messages +++ b/test/transform/resource/messages-delombok/GetterOnMethodErrors.java.messages @@ -1 +1 @@ -3:1 'onMethod' is not supported for @Getter on a type.
\ No newline at end of file +3 'onMethod' is not supported for @Getter on a type.
\ No newline at end of file diff --git a/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages b/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages index b5bad45b..af1e3b7a 100644 --- a/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages +++ b/test/transform/resource/messages-delombok/GetterOnMethodErrors2.java.messages @@ -1,4 +1,4 @@ -2:9 The correct format is @Getter(onMethod=@__({@SomeAnnotation, @SomeOtherAnnotation})) -3:9 The correct format is @ |
