@@ -310,3 +310,95 @@ cc_test(
310310 "@com_google_absl//absl/types:optional" ,
311311 ],
312312)
313+
314+ cc_library (
315+ name = "field_path" ,
316+ srcs = ["field_path.cc" ],
317+ hdrs = ["field_path.h" ],
318+ deps = [
319+ "@com_google_absl//absl/strings" ,
320+ "@com_google_absl//absl/strings:string_view" ,
321+ "@com_google_absl//absl/types:span" ,
322+ ],
323+ )
324+
325+ cc_test (
326+ name = "field_path_test" ,
327+ srcs = ["field_path_test.cc" ],
328+ deps = [
329+ ":field_path" ,
330+ "//internal:testing" ,
331+ "@com_google_absl//absl/strings" ,
332+ ],
333+ )
334+
335+ cc_library (
336+ name = "proto_type_mask" ,
337+ srcs = ["proto_type_mask.cc" ],
338+ hdrs = ["proto_type_mask.h" ],
339+ deps = [
340+ ":field_path" ,
341+ "//internal:status_macros" ,
342+ "@com_google_absl//absl/base:nullability" ,
343+ "@com_google_absl//absl/container:btree" ,
344+ "@com_google_absl//absl/status" ,
345+ "@com_google_absl//absl/status:statusor" ,
346+ "@com_google_absl//absl/strings" ,
347+ "@com_google_protobuf//:protobuf" ,
348+ ],
349+ )
350+
351+ cc_test (
352+ name = "proto_type_mask_test" ,
353+ srcs = ["proto_type_mask_test.cc" ],
354+ deps = [
355+ ":field_path" ,
356+ ":proto_type_mask" ,
357+ "//internal:testing" ,
358+ "//internal:testing_descriptor_pool" ,
359+ "@com_google_absl//absl/container:btree" ,
360+ "@com_google_absl//absl/status" ,
361+ "@com_google_absl//absl/strings" ,
362+ ],
363+ )
364+
365+ cc_library (
366+ name = "proto_type_mask_registry" ,
367+ srcs = ["proto_type_mask_registry.cc" ],
368+ hdrs = ["proto_type_mask_registry.h" ],
369+ deps = [
370+ ":field_path" ,
371+ ":proto_type_mask" ,
372+ "//common:type" ,
373+ "//internal:status_macros" ,
374+ "@com_google_absl//absl/base:nullability" ,
375+ "@com_google_absl//absl/container:btree" ,
376+ "@com_google_absl//absl/container:flat_hash_map" ,
377+ "@com_google_absl//absl/container:flat_hash_set" ,
378+ "@com_google_absl//absl/memory" ,
379+ "@com_google_absl//absl/status" ,
380+ "@com_google_absl//absl/status:statusor" ,
381+ "@com_google_absl//absl/strings" ,
382+ "@com_google_absl//absl/strings:string_view" ,
383+ "@com_google_absl//absl/types:optional" ,
384+ "@com_google_absl//absl/types:span" ,
385+ "@com_google_protobuf//:protobuf" ,
386+ ],
387+ )
388+
389+ cc_test (
390+ name = "proto_type_mask_registry_test" ,
391+ srcs = ["proto_type_mask_registry_test.cc" ],
392+ deps = [
393+ ":proto_type_mask" ,
394+ ":proto_type_mask_registry" ,
395+ "//internal:testing" ,
396+ "//internal:testing_descriptor_pool" ,
397+ "@com_google_absl//absl/container:flat_hash_map" ,
398+ "@com_google_absl//absl/container:flat_hash_set" ,
399+ "@com_google_absl//absl/status" ,
400+ "@com_google_absl//absl/status:status_matchers" ,
401+ "@com_google_absl//absl/strings" ,
402+ "@com_google_absl//absl/strings:string_view" ,
403+ ],
404+ )
0 commit comments