• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2016 Google Inc. All Rights Reserved.
2//
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.
14
15// Definitions for dependency reports.
16
17syntax = "proto2";
18
19option java_package = "com.google.turbine.proto";
20option java_outer_classname = "DepsProto";
21
22message Dependency {
23
24  enum Kind {
25    // Dependency used explicitly in the source.
26    EXPLICIT = 0;
27    // Dependency that is implicitly loaded and used by the compiler.
28    IMPLICIT = 1;
29    // Unused dependency.
30    UNUSED = 2;
31    // Implicit dependency considered by the compiler but not completed.
32    INCOMPLETE = 3;
33  }
34
35  // Path to the artifact representing this dependency.
36  required string path = 1;
37
38  // Dependency kind
39  required Kind kind = 2;
40}
41
42// Top-level message found in .deps artifacts
43message Dependencies {
44  repeated Dependency dependency = 1;
45
46  // Name of the rule being analyzed.
47  optional string rule_label = 2;
48
49  // Whether the action was successful; even when compilation fails, partial
50  // dependency information can be useful.
51  optional bool success = 3;
52}
53