blob: 9e8649f078cd0b7e8846caf5361bf79ed8c4259b [file] [log] [blame]
Damien Martin-Guillerezf88f4d82015-09-25 13:56:55 +00001// Copyright 2014 The Bazel Authors. All rights reserved.
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +01002//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14package com.google.devtools.build.skyframe;
15
16import javax.annotation.Nullable;
17
18/** Wrapper for a value or the typed exception thrown when trying to compute it. */
19public abstract class ValueOrException2<E1 extends Exception, E2 extends Exception>
20 extends ValueOrUntypedException {
21
22 /** Gets the stored value. Throws an exception if one was thrown when computing this value. */
23 @Nullable
24 public abstract SkyValue get() throws E1, E2;
25}