@@ -198,6 +198,60 @@ cc_library(
198198 ],
199199)
200200
201+ # Experimental API, subject to change.
202+ cc_library (
203+ name = "convert" ,
204+ srcs = [
205+ "convert.c" ,
206+ ],
207+ hdrs = [
208+ "internal/convert.h" ,
209+ ],
210+ copts = UPB_DEFAULT_COPTS ,
211+ visibility = [
212+ "//upb:__pkg__" ,
213+ "//upb:friends" ,
214+ ],
215+ deps = [
216+ ":internal" ,
217+ ":message" ,
218+ "//upb/base" ,
219+ "//upb/mem" ,
220+ "//upb/mini_table" ,
221+ "//upb/mini_table:internal" ,
222+ "//upb/port" ,
223+ "//upb/wire" ,
224+ "//upb/wire:decoder" ,
225+ "//upb/wire:eps_copy_input_stream" ,
226+ ],
227+ )
228+
229+ cc_test (
230+ name = "convert_test" ,
231+ srcs = ["convert_test.cc" ],
232+ deps = [
233+ ":convert" ,
234+ ":convert_test_upb_minitable_proto" ,
235+ ":convert_test_upb_proto" ,
236+ ":internal" ,
237+ ":message" ,
238+ ":message_test_upb_minitable_proto" ,
239+ ":message_test_upb_proto" ,
240+ ":promote" ,
241+ "//upb/base" ,
242+ "//upb/mem" ,
243+ "//upb/mini_table" ,
244+ "//upb/port" ,
245+ "//upb/test:test_messages_proto2_upb_proto" ,
246+ "//upb/test:test_messages_proto3_upb_minitable" ,
247+ "//upb/test:test_messages_proto3_upb_proto" ,
248+ "//upb/test:test_upb_proto" ,
249+ "//upb/wire" ,
250+ "@googletest//:gtest" ,
251+ "@googletest//:gtest_main" ,
252+ ],
253+ )
254+
201255cc_test (
202256 name = "merge_test" ,
203257 srcs = ["merge_test.cc" ],
@@ -414,6 +468,7 @@ cc_test(
414468 features = UPB_DEFAULT_FEATURES ,
415469 deps = [
416470 ":compare" ,
471+ ":convert" ,
417472 ":internal" ,
418473 ":message" ,
419474 ":message_test_upb_minitable_proto" ,
@@ -495,6 +550,25 @@ cc_test(
495550 ],
496551)
497552
553+ cc_test (
554+ name = "convert_fuzz_test" ,
555+ srcs = ["convert_fuzz_test.cc" ],
556+ deps = [
557+ ":compare" ,
558+ ":convert" ,
559+ ":message" ,
560+ "//upb/base" ,
561+ "//upb/mem" ,
562+ "//upb/mini_table" ,
563+ "//upb/mini_table:internal" ,
564+ "//upb/port" ,
565+ "//upb/test:fuzz_util" ,
566+ "//upb/wire" ,
567+ "@googletest//:gtest" ,
568+ "@googletest//:gtest_main" ,
569+ ],
570+ )
571+
498572filegroup (
499573 name = "source_files" ,
500574 srcs = glob (
@@ -529,3 +603,21 @@ filegroup(
529603 ),
530604 visibility = ["//upb:__pkg__" ],
531605)
606+
607+ proto_library (
608+ name = "convert_test_proto" ,
609+ testonly = 1 ,
610+ srcs = ["convert_test.proto" ],
611+ )
612+
613+ upb_minitable_proto_library (
614+ name = "convert_test_upb_minitable_proto" ,
615+ testonly = 1 ,
616+ deps = [":convert_test_proto" ],
617+ )
618+
619+ upb_c_proto_library (
620+ name = "convert_test_upb_proto" ,
621+ testonly = 1 ,
622+ deps = [":convert_test_proto" ],
623+ )
0 commit comments