-
Notifications
You must be signed in to change notification settings - Fork 31
Expand file tree
/
Copy pathjava_lite_proto_cel_library.bzl
More file actions
54 lines (47 loc) · 2.02 KB
/
java_lite_proto_cel_library.bzl
File metadata and controls
54 lines (47 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Copyright 2025 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Starlark rule for generating descriptors that is compatible with Protolite Messages."""
load("//:java_lite_proto_cel_library_impl.bzl", "java_lite_proto_cel_library_impl")
load("@com_google_protobuf//bazel:java_lite_proto_library.bzl", "java_lite_proto_library")
def java_lite_proto_cel_library(
name,
deps,
java_descriptor_class_suffix = None,
debug = False):
"""Generates a CelLiteDescriptor
Args:
name: name of this target.
deps: The list of proto_library rules to generate Java code for.
proto_src: Name of the proto_library target.
java_descriptor_class_suffix (optional): Suffix for the Java class name of the generated CEL lite descriptor.
Default is "CelLiteDescriptor".
debug: (optional) If true, prints additional information during codegen for debugging purposes.
"""
if not name:
fail("You must provide a name.")
if not deps or len(deps) < 1:
fail("You must provide at least one proto_library dependency.")
java_proto_library_dep = name + "_java_lite_proto_dep"
java_lite_proto_library(
name = java_proto_library_dep,
deps = deps,
)
java_lite_proto_cel_library_impl(
name = name,
deps = deps,
# used_by_android
java_descriptor_class_suffix = java_descriptor_class_suffix,
java_proto_library_dep = java_proto_library_dep,
debug = debug,
)