1load("@rules_proto//proto:defs.bzl", "proto_library") 2 3# This is an API workspace, having public visibility by default makes perfect sense. 4package(default_visibility = ["//visibility:public"]) 5 6proto_library( 7 name = "decl_proto", 8 srcs = ["decl.proto"], 9 deps = [ 10 ":expr_proto", 11 ], 12) 13 14proto_library( 15 name = "eval_proto", 16 srcs = ["eval.proto"], 17 deps = [ 18 ":value_proto", 19 "//google/rpc:status_proto", 20 ], 21) 22 23proto_library( 24 name = "expr_proto", 25 srcs = ["expr.proto"], 26 deps = [ 27 ":source_proto", 28 "@com_google_protobuf//:struct_proto", 29 ], 30) 31 32proto_library( 33 name = "source_proto", 34 srcs = ["source.proto"], 35) 36 37proto_library( 38 name = "value_proto", 39 srcs = ["value.proto"], 40 deps = [ 41 "@com_google_protobuf//:any_proto", 42 "@com_google_protobuf//:struct_proto", 43 ], 44) 45 46proto_library( 47 name = "cel_proto", 48 deps = [ 49 ":decl_proto", 50 ":eval_proto", 51 ":expr_proto", 52 ":source_proto", 53 ":value_proto", 54 "//google/rpc:status_proto", 55 "@com_google_protobuf//:any_proto", 56 "@com_google_protobuf//:struct_proto", 57 ], 58) 59 60############################################################################## 61# C++ 62############################################################################## 63load( 64 "@com_google_googleapis_imports//:imports.bzl", 65 "cc_proto_library", 66) 67 68cc_proto_library( 69 name = "decl_cc_proto", 70 deps = [":decl_proto"], 71) 72 73cc_proto_library( 74 name = "eval_cc_proto", 75 deps = [":eval_proto"], 76) 77 78cc_proto_library( 79 name = "expr_cc_proto", 80 deps = [":expr_proto"], 81) 82 83cc_proto_library( 84 name = "source_cc_proto", 85 deps = [":source_proto"], 86) 87 88cc_proto_library( 89 name = "value_cc_proto", 90 deps = [":value_proto"], 91) 92