Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 64 additions & 1 deletion common/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,65 @@ package(

java_library(
name = "compiler_common",
exports = ["//common/src/main/java/dev/cel/common:compiler_common"],
deprecation = "Please use the granular targets (e.g. :cel_issue, :cel_validation_result, etc.) instead.",
exports = [
":cel_function_decl",
":cel_issue",
":cel_overload_decl",
":cel_validation_exception",
":cel_validation_result",
":cel_var_decl",
],
)

java_library(
name = "cel_function_decl",
exports = ["//common/src/main/java/dev/cel/common:cel_function_decl"],
)

java_library(
name = "cel_overload_decl",
exports = ["//common/src/main/java/dev/cel/common:cel_overload_decl"],
)

java_library(
name = "cel_var_decl",
exports = ["//common/src/main/java/dev/cel/common:cel_var_decl"],
)

cel_android_library(
name = "cel_var_decl_android",
exports = ["//common/src/main/java/dev/cel/common:cel_var_decl_android"],
)

java_library(
name = "cel_issue",
exports = ["//common/src/main/java/dev/cel/common:cel_issue"],
)

cel_android_library(
name = "cel_issue_android",
exports = ["//common/src/main/java/dev/cel/common:cel_issue_android"],
)

java_library(
name = "cel_validation_exception",
exports = ["//common/src/main/java/dev/cel/common:cel_validation_exception"],
)

cel_android_library(
name = "cel_validation_exception_android",
exports = ["//common/src/main/java/dev/cel/common:cel_validation_exception_android"],
)

java_library(
name = "cel_validation_result",
exports = ["//common/src/main/java/dev/cel/common:cel_validation_result"],
)

cel_android_library(
name = "cel_validation_result_android",
exports = ["//common/src/main/java/dev/cel/common:cel_validation_result_android"],
)

java_library(
Expand Down Expand Up @@ -74,6 +132,11 @@ java_library(
exports = ["//common/src/main/java/dev/cel/common:source_location"],
)

cel_android_library(
name = "source_location_android",
exports = ["//common/src/main/java/dev/cel/common:source_location_android"],
)

java_library(
name = "cel_source",
exports = ["//common/src/main/java/dev/cel/common:cel_source"],
Expand Down
5 changes: 5 additions & 0 deletions common/ast/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,11 @@ java_library(
exports = ["//common/src/main/java/dev/cel/common/ast:expr_factory"],
)

cel_android_library(
name = "expr_factory_android",
exports = ["//common/src/main/java/dev/cel/common/ast:expr_factory_android"],
)

java_library(
name = "mutable_expr",
exports = ["//common/src/main/java/dev/cel/common/ast:mutable_expr"],
Expand Down
152 changes: 133 additions & 19 deletions common/src/main/java/dev/cel/common/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,6 @@ package(
],
)

# keep sorted
COMPILER_COMMON_SOURCES = [
"CelFunctionDecl.java",
"CelIssue.java",
"CelOverloadDecl.java",
"CelValidationException.java",
"CelValidationResult.java",
"CelVarDecl.java",
]

# keep sorted
SOURCE_SOURCES = [
"Source.java",
Expand Down Expand Up @@ -67,28 +57,151 @@ java_library(
)

java_library(
name = "compiler_common",
srcs = COMPILER_COMMON_SOURCES,
name = "cel_function_decl",
srcs = ["CelFunctionDecl.java"],
tags = [
],
deps = [
":cel_ast",
":cel_exception",
":cel_source",
":source",
":source_location",
":cel_overload_decl",
"//:auto_value",
"//common/annotations",
"//common/internal:safe_string_formatter",
"@cel_spec//proto/cel/expr:checked_java_proto",
"@maven//:com_google_errorprone_error_prone_annotations",
"@maven//:com_google_guava_guava",
],
)

java_library(
name = "cel_overload_decl",
srcs = ["CelOverloadDecl.java"],
tags = [
],
deps = [
"//:auto_value",
"//common/types:cel_proto_types",
"//common/types:type_providers",
"@cel_spec//proto/cel/expr:checked_java_proto",
"@maven//:com_google_errorprone_error_prone_annotations",
"@maven//:com_google_guava_guava",
],
)

java_library(
name = "cel_var_decl",
srcs = ["CelVarDecl.java"],
tags = [
],
deps = [
"//:auto_value",
"//common/types:type_providers",
"@maven//:com_google_errorprone_error_prone_annotations",
],
)

cel_android_library(
name = "cel_var_decl_android",
srcs = ["CelVarDecl.java"],
tags = [
],
deps = [
"//:auto_value",
"//common/types:type_providers_android",
"@maven//:com_google_errorprone_error_prone_annotations",
],
)

java_library(
name = "cel_issue",
srcs = ["CelIssue.java"],
tags = [
],
deps = [
":source",
":source_location",
"//:auto_value",
"//common/internal:safe_string_formatter",
"@maven//:com_google_errorprone_error_prone_annotations",
"@maven//:com_google_guava_guava",
],
)

cel_android_library(
name = "cel_issue_android",
srcs = ["CelIssue.java"],
tags = [
],
deps = [
":source_android",
":source_location_android",
"//:auto_value",
"//common/internal:safe_string_formatter",
"@maven//:com_google_errorprone_error_prone_annotations",
"@maven_android//:com_google_guava_guava",
],
)

java_library(
name = "cel_validation_exception",
srcs = ["CelValidationException.java"],
tags = [
],
deps = [
":cel_exception",
":cel_issue",
":cel_source",
"//common/annotations",
"@maven//:com_google_guava_guava",
],
)

cel_android_library(
name = "cel_validation_exception_android",
srcs = ["CelValidationException.java"],
tags = [
],
deps = [
":cel_exception",
":cel_issue_android",
":cel_source_android",
"//common/annotations",
"@maven_android//:com_google_guava_guava",
],
)

java_library(
name = "cel_validation_result",
srcs = ["CelValidationResult.java"],
tags = [
],
deps = [
":cel_ast",
":cel_issue",
":cel_source",
":cel_validation_exception",
"//common/annotations",
"@maven//:com_google_errorprone_error_prone_annotations",
"@maven//:com_google_guava_guava",
"@maven//:org_jspecify_jspecify",
],
)

cel_android_library(
name = "cel_validation_result_android",
srcs = ["CelValidationResult.java"],
tags = [
],
deps = [
":cel_ast_android",
":cel_issue_android",
":cel_source_android",
":cel_validation_exception_android",
"//common/annotations",
"@maven//:com_google_errorprone_error_prone_annotations",
"@maven//:org_jspecify_jspecify",
"@maven_android//:com_google_guava_guava",
],
)

java_library(
name = "cel_exception",
srcs = ["CelException.java"],
Expand Down Expand Up @@ -345,7 +458,8 @@ cel_android_library(
cel_android_library(
name = "source_location_android",
srcs = ["CelSourceLocation.java"],
visibility = ["//visibility:private"],
tags = [
],
deps = [
"//:auto_value",
"@maven//:com_google_errorprone_error_prone_annotations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@

package dev.cel.common;

import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.ImmutableList;
import dev.cel.common.annotations.Internal;
import java.util.List;

/** Base class for all checked exceptions explicitly thrown by the library during parsing. */
Expand All @@ -27,7 +27,7 @@ public final class CelValidationException extends CelException {
private final CelSource source;
private final ImmutableList<CelIssue> errors;

@VisibleForTesting
@Internal
public CelValidationException(CelSource source, List<CelIssue> errors) {
super(safeJoinErrorMessage(source, errors));
this.source = source;
Expand All @@ -49,8 +49,9 @@ private static String safeJoinErrorMessage(CelSource source, List<CelIssue> erro
List<CelIssue> truncatedErrors = errors.subList(0, MAX_ERRORS_TO_REPORT);

return CelIssue.toDisplayString(truncatedErrors, source)
+ String.format(
"%n...and %d more errors (truncated)", errors.size() - MAX_ERRORS_TO_REPORT);
+ "\n...and "
+ (errors.size() - MAX_ERRORS_TO_REPORT)
+ " more errors (truncated)";
}

/** Returns the {@link CelSource} that was being validated. */
Expand Down
13 changes: 13 additions & 0 deletions common/src/main/java/dev/cel/common/ast/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,19 @@ java_library(
],
)

cel_android_library(
name = "expr_factory_android",
srcs = EXPR_FACTORY_SOURCES,
tags = [
],
deps = [
":ast_android",
"//common/annotations",
"//common/values:cel_byte_string",
"@maven_android//:com_google_guava_guava",
],
)

java_library(
name = "mutable_expr",
srcs = MUTABLE_EXPR_SOURCES,
Expand Down
33 changes: 33 additions & 0 deletions parser/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
load("@rules_java//java:defs.bzl", "java_library")
load("//:cel_android_rules.bzl", "cel_android_library")

package(
default_applicable_licenses = ["//:license"],
Expand All @@ -22,11 +23,38 @@ java_library(
exports = ["//parser/src/main/java/dev/cel/parser:parser_factory"],
)

java_library(
name = "lite_parser_factory",
exports = ["//parser/src/main/java/dev/cel/parser:lite_parser_factory"],
)

cel_android_library(
name = "lite_parser_factory_android",
exports = ["//parser/src/main/java/dev/cel/parser:lite_parser_factory_android"],
)

java_library(
name = "parser_base",
visibility = ["//:internal"],
exports = ["//parser/src/main/java/dev/cel/parser:parser_base"],
)

cel_android_library(
name = "parser_base_android",
visibility = ["//:internal"],
exports = ["//parser/src/main/java/dev/cel/parser:parser_base_android"],
)

java_library(
name = "parser_builder",
exports = ["//parser/src/main/java/dev/cel/parser:parser_builder"],
)

cel_android_library(
name = "parser_builder_android",
exports = ["//parser/src/main/java/dev/cel/parser:parser_builder_android"],
)

java_library(
name = "unparser_visitor",
exports = ["//parser/src/main/java/dev/cel/parser:unparser_visitor"],
Expand All @@ -37,6 +65,11 @@ java_library(
exports = ["//parser/src/main/java/dev/cel/parser:macro"],
)

cel_android_library(
name = "macro_android",
exports = ["//parser/src/main/java/dev/cel/parser:macro_android"],
)

java_library(
name = "cel_g4_visitors",
visibility = ["//:internal"],
Expand Down
Loading
Loading