MCPcopy Create free account
hub / github.com/cel-expr/cel-cpp / RegisterRegexExtensionFunctions

Function RegisterRegexExtensionFunctions

extensions/regex_ext.cc:233–264  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

231}
232
233absl::Status RegisterRegexExtensionFunctions(FunctionRegistry& registry,
234 bool disable_extract,
235 int regex_max_program_size) {
236 if (!disable_extract) {
237 CEL_RETURN_IF_ERROR((
238 BinaryFunctionAdapter<absl::StatusOr<Value>, StringValue, StringValue>::
239 RegisterGlobalOverload(
240 "regex.extract",
241 absl::bind_front(&Extract, regex_max_program_size), registry)));
242 }
243 CEL_RETURN_IF_ERROR(
244 (BinaryFunctionAdapter<absl::StatusOr<Value>, StringValue, StringValue>::
245 RegisterGlobalOverload(
246 "regex.extractAll",
247 absl::bind_front(&ExtractAll, regex_max_program_size),
248 registry)));
249 CEL_RETURN_IF_ERROR(
250 (TernaryFunctionAdapter<
251 absl::StatusOr<Value>, StringValue, StringValue,
252 StringValue>::RegisterGlobalOverload("regex.replace",
253 absl::bind_front(
254 &ReplaceAll,
255 regex_max_program_size),
256 registry)));
257 CEL_RETURN_IF_ERROR(
258 (QuaternaryFunctionAdapter<absl::StatusOr<Value>, StringValue,
259 StringValue, StringValue, int64_t>::
260 RegisterGlobalOverload(
261 "regex.replace",
262 absl::bind_front(&ReplaceN, regex_max_program_size), registry)));
263 return absl::OkStatus();
264}
265
266const Type& OptionalStringType() {
267 static absl::NoDestructor<Type> kInstance(

Callers 3

TESTFunction · 0.85
SetUpMethod · 0.85

Calls 1

Tested by 2

TESTFunction · 0.68
SetUpMethod · 0.68