Chromium Code Reviews| Index: plugins/org.chromium.sdk/src/org/chromium/sdk/UpdatableScript.java |
| diff --git a/plugins/org.chromium.sdk/src/org/chromium/sdk/UpdatableScript.java b/plugins/org.chromium.sdk/src/org/chromium/sdk/UpdatableScript.java |
| index 4adbf2613875810c3c5161f3498b6c9815057e8a..d7f902266d9c8fe77349d659da4a555daa11d6a5 100644 |
| --- a/plugins/org.chromium.sdk/src/org/chromium/sdk/UpdatableScript.java |
| +++ b/plugins/org.chromium.sdk/src/org/chromium/sdk/UpdatableScript.java |
| @@ -38,7 +38,7 @@ public interface UpdatableScript { |
| * to be applied; may be null if backend or VM does not support |
| */ |
| void success(Object report, ChangeDescription changeDescription); |
| - void failure(String message); |
| + void failure(String message, Failure details); |
| } |
| /** |
| @@ -115,4 +115,38 @@ public interface UpdatableScript { |
| */ |
| interface NewFunctionNode extends FunctionNode<NewFunctionNode> { |
| } |
| + |
| + /** |
| + * Specifies failure type. |
| + */ |
| + interface Failure { |
| + <R> R accept(Visitor<R> visitor); |
| + |
| + interface Visitor<R> { |
| + R visitUnspecified(); |
| + R visitCompileError(CompileErrorFailure compileErrorFailure); |
| + } |
| + |
| + Failure UNSPECIFIED = new Failure() { |
| + @Override public <R> R accept(Visitor<R> visitor) { |
| + return visitor.visitUnspecified(); |
| + } |
| + }; |
| + } |
| + |
| + /** |
| + * Describeds failure caused by compile error. |
|
apavlov
2013/01/21 14:25:02
Describes
Peter Rybin
2013/01/21 16:01:32
Done.
|
| + */ |
| + interface CompileErrorFailure extends Failure { |
| + /** |
| + * A string message returned by JavaScript compiler. |
| + */ |
| + String getCompilerMessage(); |
| + |
| + /** @return error start position in text. */ |
| + TextStreamPosition getStartPosition(); |
| + |
| + /** @return error end position in text. */ |
| + TextStreamPosition getEndPosition(); |
| + } |
| } |