From ace92da15109670911227ca3e6e793cf4574f7e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9E=D0=BB=D0=B5=D0=B3=20=D0=91=D0=BE=D1=80=D0=BE=D0=B4?= =?UTF-8?q?=D0=B8=D0=BD?= Date: Fri, 24 Apr 2026 16:50:15 +0200 Subject: [PATCH] working commit --- Makefile | 86 +- Makefile.am | 38 +- Makefile.in | 86 +- control.pb.cc | 1608 +++++++++++++++++++++++ control.pb.h | 1748 +++++++++++++++++++++++++ control.proto | 36 + fakeconnect.cpp | 54 + fakeconnect.hpp | 27 + fakeconnect_test.cpp | 53 + hello.pb.cc | 839 ------------ hello.pb.h | 909 ------------- hello.proto | 21 - message_test.cpp | 26 - netclient.cpp | 41 + netclient.hpp | 21 + nethandler.cpp | 33 + nethandler.hpp | 27 + rcpclient.hpp | 11 - rpcclient.cpp | 37 +- rpcclient.hpp | 18 + rpcclient_test.cpp | 23 + header.cpp => rpcheader.cpp | 12 +- header.hpp => rpcheader.hpp | 6 +- header_test.cpp => rpcheader_test.cpp | 7 +- tcpclient.hpp | 2 + works/header/header_test.cpp | 3 +- 26 files changed, 3879 insertions(+), 1893 deletions(-) create mode 100644 control.pb.cc create mode 100644 control.pb.h create mode 100644 control.proto create mode 100644 fakeconnect.cpp create mode 100644 fakeconnect.hpp create mode 100644 fakeconnect_test.cpp delete mode 100644 hello.pb.cc delete mode 100644 hello.pb.h delete mode 100644 hello.proto delete mode 100644 message_test.cpp create mode 100644 netclient.cpp create mode 100644 netclient.hpp create mode 100644 nethandler.cpp create mode 100644 nethandler.hpp delete mode 100644 rcpclient.hpp create mode 100644 rpcclient.hpp create mode 100644 rpcclient_test.cpp rename header.cpp => rpcheader.cpp (78%) rename header.hpp => rpcheader.hpp (74%) rename header_test.cpp => rpcheader_test.cpp (73%) diff --git a/Makefile b/Makefile index 1b9aed4..07ffa30 100644 --- a/Makefile +++ b/Makefile @@ -91,7 +91,7 @@ POST_UNINSTALL = : sbin_PROGRAMS = helmetd$(EXEEXT) noinst_PROGRAMS = tcpclient_test$(EXEEXT) udpclient_test$(EXEEXT) \ service_test$(EXEEXT) tunclient_test$(EXEEXT) \ - message_test$(EXEEXT) + rpcclient_test$(EXEEXT) fakeconnect_test$(EXEEXT) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -107,21 +107,30 @@ CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(sbindir)" PROGRAMS = $(noinst_PROGRAMS) $(sbin_PROGRAMS) +am_fakeconnect_test_OBJECTS = fakeconnect_test.$(OBJEXT) \ + rpcclient.$(OBJEXT) rpcheader.$(OBJEXT) netclient.$(OBJEXT) \ + nethandler.$(OBJEXT) fakeconnect.$(OBJEXT) \ + control.pb.$(OBJEXT) +fakeconnect_test_OBJECTS = $(am_fakeconnect_test_OBJECTS) +fakeconnect_test_LDADD = $(LDADD) am_helmetd_OBJECTS = helmetd.$(OBJEXT) tunclient.$(OBJEXT) \ - service.$(OBJEXT) interface.$(OBJEXT) hello.pb.$(OBJEXT) \ - udpclient.$(OBJEXT) resolver.$(OBJEXT) iprouter.$(OBJEXT) \ - tcpclient.$(OBJEXT) rpcclient.$(OBJEXT) + service.$(OBJEXT) interface.$(OBJEXT) udpclient.$(OBJEXT) \ + resolver.$(OBJEXT) iprouter.$(OBJEXT) netclient.$(OBJEXT) \ + tcpclient.$(OBJEXT) rpcclient.$(OBJEXT) control.pb.$(OBJEXT) helmetd_OBJECTS = $(am_helmetd_OBJECTS) helmetd_LDADD = $(LDADD) -am_message_test_OBJECTS = message_test.$(OBJEXT) hello.pb.$(OBJEXT) -message_test_OBJECTS = $(am_message_test_OBJECTS) -message_test_LDADD = $(LDADD) +am_rpcclient_test_OBJECTS = rpcclient_test.$(OBJEXT) \ + rpcclient.$(OBJEXT) rpcheader.$(OBJEXT) netclient.$(OBJEXT) \ + nethandler.$(OBJEXT) fakeconnect.$(OBJEXT) \ + control.pb.$(OBJEXT) +rpcclient_test_OBJECTS = $(am_rpcclient_test_OBJECTS) +rpcclient_test_LDADD = $(LDADD) am_service_test_OBJECTS = service_test.$(OBJEXT) tunclient.$(OBJEXT) \ service.$(OBJEXT) interface.$(OBJEXT) service_test_OBJECTS = $(am_service_test_OBJECTS) service_test_LDADD = $(LDADD) -am_tcpclient_test_OBJECTS = resolver.$(OBJEXT) tcpclient.$(OBJEXT) \ - tcpclient_test.$(OBJEXT) +am_tcpclient_test_OBJECTS = resolver.$(OBJEXT) netclient.$(OBJEXT) \ + tcpclient.$(OBJEXT) tcpclient_test.$(OBJEXT) tcpclient_test_OBJECTS = $(am_tcpclient_test_OBJECTS) tcpclient_test_LDADD = $(LDADD) am_tunclient_test_OBJECTS = tunclient_test.$(OBJEXT) \ @@ -172,12 +181,14 @@ AM_V_CCLD = $(am__v_CCLD_$(V)) am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = -SOURCES = $(helmetd_SOURCES) $(message_test_SOURCES) \ - $(service_test_SOURCES) $(tcpclient_test_SOURCES) \ - $(tunclient_test_SOURCES) $(udpclient_test_SOURCES) -DIST_SOURCES = $(helmetd_SOURCES) $(message_test_SOURCES) \ - $(service_test_SOURCES) $(tcpclient_test_SOURCES) \ - $(tunclient_test_SOURCES) $(udpclient_test_SOURCES) +SOURCES = $(fakeconnect_test_SOURCES) $(helmetd_SOURCES) \ + $(rpcclient_test_SOURCES) $(service_test_SOURCES) \ + $(tcpclient_test_SOURCES) $(tunclient_test_SOURCES) \ + $(udpclient_test_SOURCES) +DIST_SOURCES = $(fakeconnect_test_SOURCES) $(helmetd_SOURCES) \ + $(rpcclient_test_SOURCES) $(service_test_SOURCES) \ + $(tcpclient_test_SOURCES) $(tunclient_test_SOURCES) \ + $(udpclient_test_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -241,7 +252,7 @@ CSCOPE = cscope CTAGS = ctags CXX = g++ CXXDEPMODE = depmode=none -CXXFLAGS = -std=c++23 -Wall -I. -pthread -D_GNU_SOURCE=1 +CXXFLAGS = -g -std=c++23 -Wall -I. -pthread -D_GNU_SOURCE=1 CYGPATH_W = echo DEFS = -DHAVE_CONFIG_H DEPDIR = .deps @@ -327,12 +338,13 @@ helmetd_SOURCES = helmetd.cpp \ tunclient.cpp tunclient.hpp \ service.cpp service.hpp \ interface.cpp interface.hpp \ - hello.pb.cc hello.pb.h \ udpclient.cpp udpclient.hpp \ resolver.cpp resolver.hpp \ iprouter.cpp iprouter.hpp \ + netclient.cpp netclient.hpp \ tcpclient.cpp tcpclient.hpp \ - rpcclient.cpp rpcclient.hpp + rpcclient.cpp rpcclient.hpp \ + control.pb.cc control.pb.h tunclient_test_SOURCES = tunclient_test.cpp \ tunclient.cpp tunclient.hpp \ @@ -351,11 +363,25 @@ udpclient_test_SOURCES = \ tcpclient_test_SOURCES = \ resolver.cpp resolver.hpp \ + netclient.cpp netclient.hpp \ tcpclient.cpp tcpclient.hpp \ tcpclient_test.cpp -message_test_SOURCES = message_test.cpp \ - hello.pb.cc hello.pb.h +rpcclient_test_SOURCES = rpcclient_test.cpp \ + rpcclient.cpp rpcclient.hpp \ + rpcheader.cpp rpcheader.hpp \ + netclient.cpp netclient.hpp \ + nethandler.cpp nethandler.hpp \ + fakeconnect.cpp fakeconnect.hpp \ + control.pb.cc control.pb.h + +fakeconnect_test_SOURCES = fakeconnect_test.cpp \ + rpcclient.cpp rpcclient.hpp \ + rpcheader.cpp rpcheader.hpp \ + netclient.cpp netclient.hpp \ + nethandler.cpp nethandler.hpp \ + fakeconnect.cpp fakeconnect.hpp \ + control.pb.cc control.pb.h ASTYLE_OPTS = --indent=spaces=8 --style=java all: defines.h @@ -457,13 +483,17 @@ uninstall-sbinPROGRAMS: clean-sbinPROGRAMS: -$(am__rm_f) $(sbin_PROGRAMS) +fakeconnect_test$(EXEEXT): $(fakeconnect_test_OBJECTS) $(fakeconnect_test_DEPENDENCIES) $(EXTRA_fakeconnect_test_DEPENDENCIES) + @rm -f fakeconnect_test$(EXEEXT) + $(AM_V_CXXLD)$(CXXLINK) $(fakeconnect_test_OBJECTS) $(fakeconnect_test_LDADD) $(LIBS) + helmetd$(EXEEXT): $(helmetd_OBJECTS) $(helmetd_DEPENDENCIES) $(EXTRA_helmetd_DEPENDENCIES) @rm -f helmetd$(EXEEXT) $(AM_V_CXXLD)$(CXXLINK) $(helmetd_OBJECTS) $(helmetd_LDADD) $(LIBS) -message_test$(EXEEXT): $(message_test_OBJECTS) $(message_test_DEPENDENCIES) $(EXTRA_message_test_DEPENDENCIES) - @rm -f message_test$(EXEEXT) - $(AM_V_CXXLD)$(CXXLINK) $(message_test_OBJECTS) $(message_test_LDADD) $(LIBS) +rpcclient_test$(EXEEXT): $(rpcclient_test_OBJECTS) $(rpcclient_test_DEPENDENCIES) $(EXTRA_rpcclient_test_DEPENDENCIES) + @rm -f rpcclient_test$(EXEEXT) + $(AM_V_CXXLD)$(CXXLINK) $(rpcclient_test_OBJECTS) $(rpcclient_test_LDADD) $(LIBS) service_test$(EXEEXT): $(service_test_OBJECTS) $(service_test_DEPENDENCIES) $(EXTRA_service_test_DEPENDENCIES) @rm -f service_test$(EXEEXT) @@ -859,17 +889,17 @@ uninstall-am: uninstall-sbinPROGRAMS .PRECIOUS: Makefile -test: message_test - ./message_test +test: fakeconnect_test + ./fakeconnect_test run: helmetd ./helmetd proto: - $(PROTOC) --cpp_out=. hello.proto + $(PROTOC) --cpp_out=. control.proto -hello.pb.cc hello.pb.h: hello.proto - $(PROTOC) --cpp_out=. hello.proto +control.pb.cc control.pb.h: control.proto + $(PROTOC) --cpp_out=. control.proto format: $(ASTYLE) $(ASTYLE_OPTS) *.hpp *.cpp diff --git a/Makefile.am b/Makefile.am index cc5289d..1ace920 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,7 @@ AUTOMAKE_OPTIONS = foreign no-dependencies no-installinfo subdir-objects -CXXFLAGS = -std=c++23 -Wall -I. -pthread -D_GNU_SOURCE=1 +CXXFLAGS = -g -std=c++23 -Wall -I. -pthread -D_GNU_SOURCE=1 LDFLAGS = -pthread LIBS = -Wl,--as-need -lprotobuf @@ -11,12 +11,13 @@ helmetd_SOURCES = helmetd.cpp \ tunclient.cpp tunclient.hpp \ service.cpp service.hpp \ interface.cpp interface.hpp \ - hello.pb.cc hello.pb.h \ udpclient.cpp udpclient.hpp \ resolver.cpp resolver.hpp \ iprouter.cpp iprouter.hpp \ + netclient.cpp netclient.hpp \ tcpclient.cpp tcpclient.hpp \ - rpcclient.cpp rpcclient.hpp + rpcclient.cpp rpcclient.hpp \ + control.pb.cc control.pb.h noinst_PROGRAMS = \ @@ -24,7 +25,8 @@ noinst_PROGRAMS = \ udpclient_test \ service_test \ tunclient_test \ - message_test + rpcclient_test \ + fakeconnect_test tunclient_test_SOURCES = tunclient_test.cpp \ tunclient.cpp tunclient.hpp \ @@ -44,26 +46,38 @@ udpclient_test_SOURCES = \ tcpclient_test_SOURCES = \ resolver.cpp resolver.hpp \ + netclient.cpp netclient.hpp \ tcpclient.cpp tcpclient.hpp \ tcpclient_test.cpp +rpcclient_test_SOURCES = rpcclient_test.cpp \ + rpcclient.cpp rpcclient.hpp \ + rpcheader.cpp rpcheader.hpp \ + netclient.cpp netclient.hpp \ + nethandler.cpp nethandler.hpp \ + fakeconnect.cpp fakeconnect.hpp \ + control.pb.cc control.pb.h -message_test_SOURCES = message_test.cpp \ - hello.pb.cc hello.pb.h +fakeconnect_test_SOURCES = fakeconnect_test.cpp \ + rpcclient.cpp rpcclient.hpp \ + rpcheader.cpp rpcheader.hpp \ + netclient.cpp netclient.hpp \ + nethandler.cpp nethandler.hpp \ + fakeconnect.cpp fakeconnect.hpp \ + control.pb.cc control.pb.h -test: message_test - ./message_test +test: fakeconnect_test + ./fakeconnect_test run: helmetd ./helmetd proto: - $(PROTOC) --cpp_out=. hello.proto + $(PROTOC) --cpp_out=. control.proto - -hello.pb.cc hello.pb.h: hello.proto - $(PROTOC) --cpp_out=. hello.proto +control.pb.cc control.pb.h: control.proto + $(PROTOC) --cpp_out=. control.proto ASTYLE_OPTS = --indent=spaces=8 --style=java format: diff --git a/Makefile.in b/Makefile.in index 1c6c9e9..6f017b9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -91,7 +91,7 @@ POST_UNINSTALL = : sbin_PROGRAMS = helmetd$(EXEEXT) noinst_PROGRAMS = tcpclient_test$(EXEEXT) udpclient_test$(EXEEXT) \ service_test$(EXEEXT) tunclient_test$(EXEEXT) \ - message_test$(EXEEXT) + rpcclient_test$(EXEEXT) fakeconnect_test$(EXEEXT) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac @@ -107,21 +107,30 @@ CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(sbindir)" PROGRAMS = $(noinst_PROGRAMS) $(sbin_PROGRAMS) +am_fakeconnect_test_OBJECTS = fakeconnect_test.$(OBJEXT) \ + rpcclient.$(OBJEXT) rpcheader.$(OBJEXT) netclient.$(OBJEXT) \ + nethandler.$(OBJEXT) fakeconnect.$(OBJEXT) \ + control.pb.$(OBJEXT) +fakeconnect_test_OBJECTS = $(am_fakeconnect_test_OBJECTS) +fakeconnect_test_LDADD = $(LDADD) am_helmetd_OBJECTS = helmetd.$(OBJEXT) tunclient.$(OBJEXT) \ - service.$(OBJEXT) interface.$(OBJEXT) hello.pb.$(OBJEXT) \ - udpclient.$(OBJEXT) resolver.$(OBJEXT) iprouter.$(OBJEXT) \ - tcpclient.$(OBJEXT) rpcclient.$(OBJEXT) + service.$(OBJEXT) interface.$(OBJEXT) udpclient.$(OBJEXT) \ + resolver.$(OBJEXT) iprouter.$(OBJEXT) netclient.$(OBJEXT) \ + tcpclient.$(OBJEXT) rpcclient.$(OBJEXT) control.pb.$(OBJEXT) helmetd_OBJECTS = $(am_helmetd_OBJECTS) helmetd_LDADD = $(LDADD) -am_message_test_OBJECTS = message_test.$(OBJEXT) hello.pb.$(OBJEXT) -message_test_OBJECTS = $(am_message_test_OBJECTS) -message_test_LDADD = $(LDADD) +am_rpcclient_test_OBJECTS = rpcclient_test.$(OBJEXT) \ + rpcclient.$(OBJEXT) rpcheader.$(OBJEXT) netclient.$(OBJEXT) \ + nethandler.$(OBJEXT) fakeconnect.$(OBJEXT) \ + control.pb.$(OBJEXT) +rpcclient_test_OBJECTS = $(am_rpcclient_test_OBJECTS) +rpcclient_test_LDADD = $(LDADD) am_service_test_OBJECTS = service_test.$(OBJEXT) tunclient.$(OBJEXT) \ service.$(OBJEXT) interface.$(OBJEXT) service_test_OBJECTS = $(am_service_test_OBJECTS) service_test_LDADD = $(LDADD) -am_tcpclient_test_OBJECTS = resolver.$(OBJEXT) tcpclient.$(OBJEXT) \ - tcpclient_test.$(OBJEXT) +am_tcpclient_test_OBJECTS = resolver.$(OBJEXT) netclient.$(OBJEXT) \ + tcpclient.$(OBJEXT) tcpclient_test.$(OBJEXT) tcpclient_test_OBJECTS = $(am_tcpclient_test_OBJECTS) tcpclient_test_LDADD = $(LDADD) am_tunclient_test_OBJECTS = tunclient_test.$(OBJEXT) \ @@ -172,12 +181,14 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = -SOURCES = $(helmetd_SOURCES) $(message_test_SOURCES) \ - $(service_test_SOURCES) $(tcpclient_test_SOURCES) \ - $(tunclient_test_SOURCES) $(udpclient_test_SOURCES) -DIST_SOURCES = $(helmetd_SOURCES) $(message_test_SOURCES) \ - $(service_test_SOURCES) $(tcpclient_test_SOURCES) \ - $(tunclient_test_SOURCES) $(udpclient_test_SOURCES) +SOURCES = $(fakeconnect_test_SOURCES) $(helmetd_SOURCES) \ + $(rpcclient_test_SOURCES) $(service_test_SOURCES) \ + $(tcpclient_test_SOURCES) $(tunclient_test_SOURCES) \ + $(udpclient_test_SOURCES) +DIST_SOURCES = $(fakeconnect_test_SOURCES) $(helmetd_SOURCES) \ + $(rpcclient_test_SOURCES) $(service_test_SOURCES) \ + $(tcpclient_test_SOURCES) $(tunclient_test_SOURCES) \ + $(udpclient_test_SOURCES) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -241,7 +252,7 @@ CSCOPE = @CSCOPE@ CTAGS = @CTAGS@ CXX = @CXX@ CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = -std=c++23 -Wall -I. -pthread -D_GNU_SOURCE=1 +CXXFLAGS = -g -std=c++23 -Wall -I. -pthread -D_GNU_SOURCE=1 CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ @@ -327,12 +338,13 @@ helmetd_SOURCES = helmetd.cpp \ tunclient.cpp tunclient.hpp \ service.cpp service.hpp \ interface.cpp interface.hpp \ - hello.pb.cc hello.pb.h \ udpclient.cpp udpclient.hpp \ resolver.cpp resolver.hpp \ iprouter.cpp iprouter.hpp \ + netclient.cpp netclient.hpp \ tcpclient.cpp tcpclient.hpp \ - rpcclient.cpp rpcclient.hpp + rpcclient.cpp rpcclient.hpp \ + control.pb.cc control.pb.h tunclient_test_SOURCES = tunclient_test.cpp \ tunclient.cpp tunclient.hpp \ @@ -351,11 +363,25 @@ udpclient_test_SOURCES = \ tcpclient_test_SOURCES = \ resolver.cpp resolver.hpp \ + netclient.cpp netclient.hpp \ tcpclient.cpp tcpclient.hpp \ tcpclient_test.cpp -message_test_SOURCES = message_test.cpp \ - hello.pb.cc hello.pb.h +rpcclient_test_SOURCES = rpcclient_test.cpp \ + rpcclient.cpp rpcclient.hpp \ + rpcheader.cpp rpcheader.hpp \ + netclient.cpp netclient.hpp \ + nethandler.cpp nethandler.hpp \ + fakeconnect.cpp fakeconnect.hpp \ + control.pb.cc control.pb.h + +fakeconnect_test_SOURCES = fakeconnect_test.cpp \ + rpcclient.cpp rpcclient.hpp \ + rpcheader.cpp rpcheader.hpp \ + netclient.cpp netclient.hpp \ + nethandler.cpp nethandler.hpp \ + fakeconnect.cpp fakeconnect.hpp \ + control.pb.cc control.pb.h ASTYLE_OPTS = --indent=spaces=8 --style=java all: defines.h @@ -457,13 +483,17 @@ uninstall-sbinPROGRAMS: clean-sbinPROGRAMS: -$(am__rm_f) $(sbin_PROGRAMS) +fakeconnect_test$(EXEEXT): $(fakeconnect_test_OBJECTS) $(fakeconnect_test_DEPENDENCIES) $(EXTRA_fakeconnect_test_DEPENDENCIES) + @rm -f fakeconnect_test$(EXEEXT) + $(AM_V_CXXLD)$(CXXLINK) $(fakeconnect_test_OBJECTS) $(fakeconnect_test_LDADD) $(LIBS) + helmetd$(EXEEXT): $(helmetd_OBJECTS) $(helmetd_DEPENDENCIES) $(EXTRA_helmetd_DEPENDENCIES) @rm -f helmetd$(EXEEXT) $(AM_V_CXXLD)$(CXXLINK) $(helmetd_OBJECTS) $(helmetd_LDADD) $(LIBS) -message_test$(EXEEXT): $(message_test_OBJECTS) $(message_test_DEPENDENCIES) $(EXTRA_message_test_DEPENDENCIES) - @rm -f message_test$(EXEEXT) - $(AM_V_CXXLD)$(CXXLINK) $(message_test_OBJECTS) $(message_test_LDADD) $(LIBS) +rpcclient_test$(EXEEXT): $(rpcclient_test_OBJECTS) $(rpcclient_test_DEPENDENCIES) $(EXTRA_rpcclient_test_DEPENDENCIES) + @rm -f rpcclient_test$(EXEEXT) + $(AM_V_CXXLD)$(CXXLINK) $(rpcclient_test_OBJECTS) $(rpcclient_test_LDADD) $(LIBS) service_test$(EXEEXT): $(service_test_OBJECTS) $(service_test_DEPENDENCIES) $(EXTRA_service_test_DEPENDENCIES) @rm -f service_test$(EXEEXT) @@ -859,17 +889,17 @@ uninstall-am: uninstall-sbinPROGRAMS .PRECIOUS: Makefile -test: message_test - ./message_test +test: fakeconnect_test + ./fakeconnect_test run: helmetd ./helmetd proto: - $(PROTOC) --cpp_out=. hello.proto + $(PROTOC) --cpp_out=. control.proto -hello.pb.cc hello.pb.h: hello.proto - $(PROTOC) --cpp_out=. hello.proto +control.pb.cc control.pb.h: control.proto + $(PROTOC) --cpp_out=. control.proto format: $(ASTYLE) $(ASTYLE_OPTS) *.hpp *.cpp diff --git a/control.pb.cc b/control.pb.cc new file mode 100644 index 0000000..f54c9e9 --- /dev/null +++ b/control.pb.cc @@ -0,0 +1,1608 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: control.proto + +#include "control.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +PROTOBUF_PRAGMA_INIT_SEG + +namespace _pb = ::PROTOBUF_NAMESPACE_ID; +namespace _pbi = _pb::internal; + +namespace control { +PROTOBUF_CONSTEXPR ReqMeta::ReqMeta( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.rpcname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_._cached_size_)*/{}} {} +struct ReqMetaDefaultTypeInternal { + PROTOBUF_CONSTEXPR ReqMetaDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ReqMetaDefaultTypeInternal() {} + union { + ReqMeta _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ReqMetaDefaultTypeInternal _ReqMeta_default_instance_; +PROTOBUF_CONSTEXPR ResMeta::ResMeta( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.message_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.error_)*/false + , /*decltype(_impl_._cached_size_)*/{}} {} +struct ResMetaDefaultTypeInternal { + PROTOBUF_CONSTEXPR ResMetaDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ResMetaDefaultTypeInternal() {} + union { + ResMeta _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ResMetaDefaultTypeInternal _ResMeta_default_instance_; +PROTOBUF_CONSTEXPR Request::Request( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.meta_)*/nullptr + , /*decltype(_impl_._cached_size_)*/{}} {} +struct RequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR RequestDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~RequestDefaultTypeInternal() {} + union { + Request _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RequestDefaultTypeInternal _Request_default_instance_; +PROTOBUF_CONSTEXPR Result::Result( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.meta_)*/nullptr + , /*decltype(_impl_._cached_size_)*/{}} {} +struct ResultDefaultTypeInternal { + PROTOBUF_CONSTEXPR ResultDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ResultDefaultTypeInternal() {} + union { + Result _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ResultDefaultTypeInternal _Result_default_instance_; +PROTOBUF_CONSTEXPR HelloRequest::HelloRequest( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.meta_)*/nullptr + , /*decltype(_impl_.id_)*/0 + , /*decltype(_impl_._cached_size_)*/{}} {} +struct HelloRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR HelloRequestDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~HelloRequestDefaultTypeInternal() {} + union { + HelloRequest _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 HelloRequestDefaultTypeInternal _HelloRequest_default_instance_; +PROTOBUF_CONSTEXPR HelloResult::HelloResult( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.meta_)*/nullptr + , /*decltype(_impl_.id_)*/0 + , /*decltype(_impl_._cached_size_)*/{}} {} +struct HelloResultDefaultTypeInternal { + PROTOBUF_CONSTEXPR HelloResultDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~HelloResultDefaultTypeInternal() {} + union { + HelloResult _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 HelloResultDefaultTypeInternal _HelloResult_default_instance_; +} // namespace control +static ::_pb::Metadata file_level_metadata_control_2eproto[6]; +static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_control_2eproto = nullptr; +static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_control_2eproto = nullptr; + +const uint32_t TableStruct_control_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::control::ReqMeta, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::control::ReqMeta, _impl_.rpcname_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::control::ResMeta, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::control::ResMeta, _impl_.error_), + PROTOBUF_FIELD_OFFSET(::control::ResMeta, _impl_.message_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::control::Request, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::control::Request, _impl_.meta_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::control::Result, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::control::Result, _impl_.meta_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::control::HelloRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::control::HelloRequest, _impl_.meta_), + PROTOBUF_FIELD_OFFSET(::control::HelloRequest, _impl_.id_), + PROTOBUF_FIELD_OFFSET(::control::HelloRequest, _impl_.name_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::control::HelloResult, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::control::HelloResult, _impl_.meta_), + PROTOBUF_FIELD_OFFSET(::control::HelloResult, _impl_.id_), + PROTOBUF_FIELD_OFFSET(::control::HelloResult, _impl_.name_), +}; +static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + { 0, -1, -1, sizeof(::control::ReqMeta)}, + { 7, -1, -1, sizeof(::control::ResMeta)}, + { 15, -1, -1, sizeof(::control::Request)}, + { 22, -1, -1, sizeof(::control::Result)}, + { 29, -1, -1, sizeof(::control::HelloRequest)}, + { 38, -1, -1, sizeof(::control::HelloResult)}, +}; + +static const ::_pb::Message* const file_default_instances[] = { + &::control::_ReqMeta_default_instance_._instance, + &::control::_ResMeta_default_instance_._instance, + &::control::_Request_default_instance_._instance, + &::control::_Result_default_instance_._instance, + &::control::_HelloRequest_default_instance_._instance, + &::control::_HelloResult_default_instance_._instance, +}; + +const char descriptor_table_protodef_control_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = + "\n\rcontrol.proto\022\007control\"\032\n\007ReqMeta\022\017\n\007r" + "pcname\030\001 \001(\t\")\n\007ResMeta\022\r\n\005error\030\001 \001(\010\022\017" + "\n\007message\030\002 \001(\t\")\n\007Request\022\036\n\004meta\030\001 \001(\013" + "2\020.control.ReqMeta\"(\n\006Result\022\036\n\004meta\030\001 \001" + "(\0132\020.control.ResMeta\"H\n\014HelloRequest\022\036\n\004" + "meta\030\001 \001(\0132\020.control.ReqMeta\022\n\n\002id\030\002 \001(\005" + "\022\014\n\004name\030\003 \001(\t\"G\n\013HelloResult\022\036\n\004meta\030\001 " + "\001(\0132\020.control.ResMeta\022\n\n\002id\030\002 \001(\005\022\014\n\004nam" + "e\030\003 \001(\tb\006proto3" + ; +static ::_pbi::once_flag descriptor_table_control_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_control_2eproto = { + false, false, 335, descriptor_table_protodef_control_2eproto, + "control.proto", + &descriptor_table_control_2eproto_once, nullptr, 0, 6, + schemas, file_default_instances, TableStruct_control_2eproto::offsets, + file_level_metadata_control_2eproto, file_level_enum_descriptors_control_2eproto, + file_level_service_descriptors_control_2eproto, +}; +PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_control_2eproto_getter() { + return &descriptor_table_control_2eproto; +} + +// Force running AddDescriptors() at dynamic initialization time. +PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_control_2eproto(&descriptor_table_control_2eproto); +namespace control { + +// =================================================================== + +class ReqMeta::_Internal { + public: +}; + +ReqMeta::ReqMeta(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:control.ReqMeta) +} +ReqMeta::ReqMeta(const ReqMeta& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + ReqMeta* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.rpcname_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.rpcname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.rpcname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_rpcname().empty()) { + _this->_impl_.rpcname_.Set(from._internal_rpcname(), + _this->GetArenaForAllocation()); + } + // @@protoc_insertion_point(copy_constructor:control.ReqMeta) +} + +inline void ReqMeta::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.rpcname_){} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.rpcname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.rpcname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +ReqMeta::~ReqMeta() { + // @@protoc_insertion_point(destructor:control.ReqMeta) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void ReqMeta::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.rpcname_.Destroy(); +} + +void ReqMeta::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void ReqMeta::Clear() { +// @@protoc_insertion_point(message_clear_start:control.ReqMeta) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.rpcname_.ClearToEmpty(); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ReqMeta::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // string rpcname = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + auto str = _internal_mutable_rpcname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "control.ReqMeta.rpcname")); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ReqMeta::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:control.ReqMeta) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // string rpcname = 1; + if (!this->_internal_rpcname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_rpcname().data(), static_cast(this->_internal_rpcname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "control.ReqMeta.rpcname"); + target = stream->WriteStringMaybeAliased( + 1, this->_internal_rpcname(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:control.ReqMeta) + return target; +} + +size_t ReqMeta::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:control.ReqMeta) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string rpcname = 1; + if (!this->_internal_rpcname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_rpcname()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ReqMeta::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + ReqMeta::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ReqMeta::GetClassData() const { return &_class_data_; } + + +void ReqMeta::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:control.ReqMeta) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_rpcname().empty()) { + _this->_internal_set_rpcname(from._internal_rpcname()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ReqMeta::CopyFrom(const ReqMeta& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:control.ReqMeta) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ReqMeta::IsInitialized() const { + return true; +} + +void ReqMeta::InternalSwap(ReqMeta* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.rpcname_, lhs_arena, + &other->_impl_.rpcname_, rhs_arena + ); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ReqMeta::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_control_2eproto_getter, &descriptor_table_control_2eproto_once, + file_level_metadata_control_2eproto[0]); +} + +// =================================================================== + +class ResMeta::_Internal { + public: +}; + +ResMeta::ResMeta(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:control.ResMeta) +} +ResMeta::ResMeta(const ResMeta& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + ResMeta* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.message_){} + , decltype(_impl_.error_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.message_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.message_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_message().empty()) { + _this->_impl_.message_.Set(from._internal_message(), + _this->GetArenaForAllocation()); + } + _this->_impl_.error_ = from._impl_.error_; + // @@protoc_insertion_point(copy_constructor:control.ResMeta) +} + +inline void ResMeta::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.message_){} + , decltype(_impl_.error_){false} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.message_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.message_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +ResMeta::~ResMeta() { + // @@protoc_insertion_point(destructor:control.ResMeta) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void ResMeta::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.message_.Destroy(); +} + +void ResMeta::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void ResMeta::Clear() { +// @@protoc_insertion_point(message_clear_start:control.ResMeta) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.message_.ClearToEmpty(); + _impl_.error_ = false; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ResMeta::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // bool error = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { + _impl_.error_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string message = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { + auto str = _internal_mutable_message(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "control.ResMeta.message")); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ResMeta::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:control.ResMeta) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // bool error = 1; + if (this->_internal_error() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray(1, this->_internal_error(), target); + } + + // string message = 2; + if (!this->_internal_message().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_message().data(), static_cast(this->_internal_message().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "control.ResMeta.message"); + target = stream->WriteStringMaybeAliased( + 2, this->_internal_message(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:control.ResMeta) + return target; +} + +size_t ResMeta::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:control.ResMeta) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string message = 2; + if (!this->_internal_message().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_message()); + } + + // bool error = 1; + if (this->_internal_error() != 0) { + total_size += 1 + 1; + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ResMeta::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + ResMeta::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ResMeta::GetClassData() const { return &_class_data_; } + + +void ResMeta::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:control.ResMeta) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_message().empty()) { + _this->_internal_set_message(from._internal_message()); + } + if (from._internal_error() != 0) { + _this->_internal_set_error(from._internal_error()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ResMeta::CopyFrom(const ResMeta& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:control.ResMeta) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ResMeta::IsInitialized() const { + return true; +} + +void ResMeta::InternalSwap(ResMeta* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.message_, lhs_arena, + &other->_impl_.message_, rhs_arena + ); + swap(_impl_.error_, other->_impl_.error_); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ResMeta::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_control_2eproto_getter, &descriptor_table_control_2eproto_once, + file_level_metadata_control_2eproto[1]); +} + +// =================================================================== + +class Request::_Internal { + public: + static const ::control::ReqMeta& meta(const Request* msg); +}; + +const ::control::ReqMeta& +Request::_Internal::meta(const Request* msg) { + return *msg->_impl_.meta_; +} +Request::Request(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:control.Request) +} +Request::Request(const Request& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + Request* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.meta_){nullptr} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + if (from._internal_has_meta()) { + _this->_impl_.meta_ = new ::control::ReqMeta(*from._impl_.meta_); + } + // @@protoc_insertion_point(copy_constructor:control.Request) +} + +inline void Request::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.meta_){nullptr} + , /*decltype(_impl_._cached_size_)*/{} + }; +} + +Request::~Request() { + // @@protoc_insertion_point(destructor:control.Request) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void Request::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (this != internal_default_instance()) delete _impl_.meta_; +} + +void Request::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void Request::Clear() { +// @@protoc_insertion_point(message_clear_start:control.Request) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* Request::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .control.ReqMeta meta = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_meta(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* Request::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:control.Request) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .control.ReqMeta meta = 1; + if (this->_internal_has_meta()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(1, _Internal::meta(this), + _Internal::meta(this).GetCachedSize(), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:control.Request) + return target; +} + +size_t Request::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:control.Request) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .control.ReqMeta meta = 1; + if (this->_internal_has_meta()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.meta_); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Request::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + Request::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Request::GetClassData() const { return &_class_data_; } + + +void Request::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:control.Request) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (from._internal_has_meta()) { + _this->_internal_mutable_meta()->::control::ReqMeta::MergeFrom( + from._internal_meta()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void Request::CopyFrom(const Request& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:control.Request) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool Request::IsInitialized() const { + return true; +} + +void Request::InternalSwap(Request* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_.meta_, other->_impl_.meta_); +} + +::PROTOBUF_NAMESPACE_ID::Metadata Request::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_control_2eproto_getter, &descriptor_table_control_2eproto_once, + file_level_metadata_control_2eproto[2]); +} + +// =================================================================== + +class Result::_Internal { + public: + static const ::control::ResMeta& meta(const Result* msg); +}; + +const ::control::ResMeta& +Result::_Internal::meta(const Result* msg) { + return *msg->_impl_.meta_; +} +Result::Result(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:control.Result) +} +Result::Result(const Result& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + Result* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.meta_){nullptr} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + if (from._internal_has_meta()) { + _this->_impl_.meta_ = new ::control::ResMeta(*from._impl_.meta_); + } + // @@protoc_insertion_point(copy_constructor:control.Result) +} + +inline void Result::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.meta_){nullptr} + , /*decltype(_impl_._cached_size_)*/{} + }; +} + +Result::~Result() { + // @@protoc_insertion_point(destructor:control.Result) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void Result::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (this != internal_default_instance()) delete _impl_.meta_; +} + +void Result::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void Result::Clear() { +// @@protoc_insertion_point(message_clear_start:control.Result) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* Result::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .control.ResMeta meta = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_meta(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* Result::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:control.Result) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .control.ResMeta meta = 1; + if (this->_internal_has_meta()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(1, _Internal::meta(this), + _Internal::meta(this).GetCachedSize(), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:control.Result) + return target; +} + +size_t Result::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:control.Result) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .control.ResMeta meta = 1; + if (this->_internal_has_meta()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.meta_); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Result::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + Result::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Result::GetClassData() const { return &_class_data_; } + + +void Result::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:control.Result) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (from._internal_has_meta()) { + _this->_internal_mutable_meta()->::control::ResMeta::MergeFrom( + from._internal_meta()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void Result::CopyFrom(const Result& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:control.Result) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool Result::IsInitialized() const { + return true; +} + +void Result::InternalSwap(Result* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_.meta_, other->_impl_.meta_); +} + +::PROTOBUF_NAMESPACE_ID::Metadata Result::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_control_2eproto_getter, &descriptor_table_control_2eproto_once, + file_level_metadata_control_2eproto[3]); +} + +// =================================================================== + +class HelloRequest::_Internal { + public: + static const ::control::ReqMeta& meta(const HelloRequest* msg); +}; + +const ::control::ReqMeta& +HelloRequest::_Internal::meta(const HelloRequest* msg) { + return *msg->_impl_.meta_; +} +HelloRequest::HelloRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:control.HelloRequest) +} +HelloRequest::HelloRequest(const HelloRequest& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + HelloRequest* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.meta_){nullptr} + , decltype(_impl_.id_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_name().empty()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + if (from._internal_has_meta()) { + _this->_impl_.meta_ = new ::control::ReqMeta(*from._impl_.meta_); + } + _this->_impl_.id_ = from._impl_.id_; + // @@protoc_insertion_point(copy_constructor:control.HelloRequest) +} + +inline void HelloRequest::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.meta_){nullptr} + , decltype(_impl_.id_){0} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +HelloRequest::~HelloRequest() { + // @@protoc_insertion_point(destructor:control.HelloRequest) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void HelloRequest::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.name_.Destroy(); + if (this != internal_default_instance()) delete _impl_.meta_; +} + +void HelloRequest::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void HelloRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:control.HelloRequest) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; + _impl_.id_ = 0; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* HelloRequest::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .control.ReqMeta meta = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_meta(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // int32 id = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string name = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "control.HelloRequest.name")); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* HelloRequest::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:control.HelloRequest) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .control.ReqMeta meta = 1; + if (this->_internal_has_meta()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(1, _Internal::meta(this), + _Internal::meta(this).GetCachedSize(), target, stream); + } + + // int32 id = 2; + if (this->_internal_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_id(), target); + } + + // string name = 3; + if (!this->_internal_name().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "control.HelloRequest.name"); + target = stream->WriteStringMaybeAliased( + 3, this->_internal_name(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:control.HelloRequest) + return target; +} + +size_t HelloRequest::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:control.HelloRequest) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string name = 3; + if (!this->_internal_name().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // .control.ReqMeta meta = 1; + if (this->_internal_has_meta()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.meta_); + } + + // int32 id = 2; + if (this->_internal_id() != 0) { + total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_id()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData HelloRequest::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + HelloRequest::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*HelloRequest::GetClassData() const { return &_class_data_; } + + +void HelloRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:control.HelloRequest) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_has_meta()) { + _this->_internal_mutable_meta()->::control::ReqMeta::MergeFrom( + from._internal_meta()); + } + if (from._internal_id() != 0) { + _this->_internal_set_id(from._internal_id()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void HelloRequest::CopyFrom(const HelloRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:control.HelloRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HelloRequest::IsInitialized() const { + return true; +} + +void HelloRequest::InternalSwap(HelloRequest* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(HelloRequest, _impl_.id_) + + sizeof(HelloRequest::_impl_.id_) + - PROTOBUF_FIELD_OFFSET(HelloRequest, _impl_.meta_)>( + reinterpret_cast(&_impl_.meta_), + reinterpret_cast(&other->_impl_.meta_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata HelloRequest::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_control_2eproto_getter, &descriptor_table_control_2eproto_once, + file_level_metadata_control_2eproto[4]); +} + +// =================================================================== + +class HelloResult::_Internal { + public: + static const ::control::ResMeta& meta(const HelloResult* msg); +}; + +const ::control::ResMeta& +HelloResult::_Internal::meta(const HelloResult* msg) { + return *msg->_impl_.meta_; +} +HelloResult::HelloResult(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:control.HelloResult) +} +HelloResult::HelloResult(const HelloResult& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + HelloResult* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.meta_){nullptr} + , decltype(_impl_.id_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_name().empty()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + if (from._internal_has_meta()) { + _this->_impl_.meta_ = new ::control::ResMeta(*from._impl_.meta_); + } + _this->_impl_.id_ = from._impl_.id_; + // @@protoc_insertion_point(copy_constructor:control.HelloResult) +} + +inline void HelloResult::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.meta_){nullptr} + , decltype(_impl_.id_){0} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +HelloResult::~HelloResult() { + // @@protoc_insertion_point(destructor:control.HelloResult) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void HelloResult::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.name_.Destroy(); + if (this != internal_default_instance()) delete _impl_.meta_; +} + +void HelloResult::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void HelloResult::Clear() { +// @@protoc_insertion_point(message_clear_start:control.HelloResult) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; + _impl_.id_ = 0; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* HelloResult::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .control.ResMeta meta = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_meta(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // int32 id = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string name = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "control.HelloResult.name")); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* HelloResult::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:control.HelloResult) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .control.ResMeta meta = 1; + if (this->_internal_has_meta()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(1, _Internal::meta(this), + _Internal::meta(this).GetCachedSize(), target, stream); + } + + // int32 id = 2; + if (this->_internal_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_id(), target); + } + + // string name = 3; + if (!this->_internal_name().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "control.HelloResult.name"); + target = stream->WriteStringMaybeAliased( + 3, this->_internal_name(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:control.HelloResult) + return target; +} + +size_t HelloResult::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:control.HelloResult) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string name = 3; + if (!this->_internal_name().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // .control.ResMeta meta = 1; + if (this->_internal_has_meta()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.meta_); + } + + // int32 id = 2; + if (this->_internal_id() != 0) { + total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_id()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData HelloResult::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + HelloResult::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*HelloResult::GetClassData() const { return &_class_data_; } + + +void HelloResult::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:control.HelloResult) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_has_meta()) { + _this->_internal_mutable_meta()->::control::ResMeta::MergeFrom( + from._internal_meta()); + } + if (from._internal_id() != 0) { + _this->_internal_set_id(from._internal_id()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void HelloResult::CopyFrom(const HelloResult& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:control.HelloResult) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HelloResult::IsInitialized() const { + return true; +} + +void HelloResult::InternalSwap(HelloResult* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(HelloResult, _impl_.id_) + + sizeof(HelloResult::_impl_.id_) + - PROTOBUF_FIELD_OFFSET(HelloResult, _impl_.meta_)>( + reinterpret_cast(&_impl_.meta_), + reinterpret_cast(&other->_impl_.meta_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata HelloResult::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_control_2eproto_getter, &descriptor_table_control_2eproto_once, + file_level_metadata_control_2eproto[5]); +} + +// @@protoc_insertion_point(namespace_scope) +} // namespace control +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_NOINLINE ::control::ReqMeta* +Arena::CreateMaybeMessage< ::control::ReqMeta >(Arena* arena) { + return Arena::CreateMessageInternal< ::control::ReqMeta >(arena); +} +template<> PROTOBUF_NOINLINE ::control::ResMeta* +Arena::CreateMaybeMessage< ::control::ResMeta >(Arena* arena) { + return Arena::CreateMessageInternal< ::control::ResMeta >(arena); +} +template<> PROTOBUF_NOINLINE ::control::Request* +Arena::CreateMaybeMessage< ::control::Request >(Arena* arena) { + return Arena::CreateMessageInternal< ::control::Request >(arena); +} +template<> PROTOBUF_NOINLINE ::control::Result* +Arena::CreateMaybeMessage< ::control::Result >(Arena* arena) { + return Arena::CreateMessageInternal< ::control::Result >(arena); +} +template<> PROTOBUF_NOINLINE ::control::HelloRequest* +Arena::CreateMaybeMessage< ::control::HelloRequest >(Arena* arena) { + return Arena::CreateMessageInternal< ::control::HelloRequest >(arena); +} +template<> PROTOBUF_NOINLINE ::control::HelloResult* +Arena::CreateMaybeMessage< ::control::HelloResult >(Arena* arena) { + return Arena::CreateMessageInternal< ::control::HelloResult >(arena); +} +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) +#include diff --git a/control.pb.h b/control.pb.h new file mode 100644 index 0000000..8ab1ae5 --- /dev/null +++ b/control.pb.h @@ -0,0 +1,1748 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: control.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_control_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_control_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3021000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_control_2eproto +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct TableStruct_control_2eproto { + static const uint32_t offsets[]; +}; +extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_control_2eproto; +namespace control { +class HelloRequest; +struct HelloRequestDefaultTypeInternal; +extern HelloRequestDefaultTypeInternal _HelloRequest_default_instance_; +class HelloResult; +struct HelloResultDefaultTypeInternal; +extern HelloResultDefaultTypeInternal _HelloResult_default_instance_; +class ReqMeta; +struct ReqMetaDefaultTypeInternal; +extern ReqMetaDefaultTypeInternal _ReqMeta_default_instance_; +class Request; +struct RequestDefaultTypeInternal; +extern RequestDefaultTypeInternal _Request_default_instance_; +class ResMeta; +struct ResMetaDefaultTypeInternal; +extern ResMetaDefaultTypeInternal _ResMeta_default_instance_; +class Result; +struct ResultDefaultTypeInternal; +extern ResultDefaultTypeInternal _Result_default_instance_; +} // namespace control +PROTOBUF_NAMESPACE_OPEN +template<> ::control::HelloRequest* Arena::CreateMaybeMessage<::control::HelloRequest>(Arena*); +template<> ::control::HelloResult* Arena::CreateMaybeMessage<::control::HelloResult>(Arena*); +template<> ::control::ReqMeta* Arena::CreateMaybeMessage<::control::ReqMeta>(Arena*); +template<> ::control::Request* Arena::CreateMaybeMessage<::control::Request>(Arena*); +template<> ::control::ResMeta* Arena::CreateMaybeMessage<::control::ResMeta>(Arena*); +template<> ::control::Result* Arena::CreateMaybeMessage<::control::Result>(Arena*); +PROTOBUF_NAMESPACE_CLOSE +namespace control { + +// =================================================================== + +class ReqMeta final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:control.ReqMeta) */ { + public: + inline ReqMeta() : ReqMeta(nullptr) {} + ~ReqMeta() override; + explicit PROTOBUF_CONSTEXPR ReqMeta(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ReqMeta(const ReqMeta& from); + ReqMeta(ReqMeta&& from) noexcept + : ReqMeta() { + *this = ::std::move(from); + } + + inline ReqMeta& operator=(const ReqMeta& from) { + CopyFrom(from); + return *this; + } + inline ReqMeta& operator=(ReqMeta&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ReqMeta& default_instance() { + return *internal_default_instance(); + } + static inline const ReqMeta* internal_default_instance() { + return reinterpret_cast( + &_ReqMeta_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(ReqMeta& a, ReqMeta& b) { + a.Swap(&b); + } + inline void Swap(ReqMeta* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ReqMeta* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ReqMeta* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ReqMeta& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const ReqMeta& from) { + ReqMeta::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ReqMeta* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "control.ReqMeta"; + } + protected: + explicit ReqMeta(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kRpcnameFieldNumber = 1, + }; + // string rpcname = 1; + void clear_rpcname(); + const std::string& rpcname() const; + template + void set_rpcname(ArgT0&& arg0, ArgT... args); + std::string* mutable_rpcname(); + PROTOBUF_NODISCARD std::string* release_rpcname(); + void set_allocated_rpcname(std::string* rpcname); + private: + const std::string& _internal_rpcname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_rpcname(const std::string& value); + std::string* _internal_mutable_rpcname(); + public: + + // @@protoc_insertion_point(class_scope:control.ReqMeta) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr rpcname_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_control_2eproto; +}; +// ------------------------------------------------------------------- + +class ResMeta final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:control.ResMeta) */ { + public: + inline ResMeta() : ResMeta(nullptr) {} + ~ResMeta() override; + explicit PROTOBUF_CONSTEXPR ResMeta(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ResMeta(const ResMeta& from); + ResMeta(ResMeta&& from) noexcept + : ResMeta() { + *this = ::std::move(from); + } + + inline ResMeta& operator=(const ResMeta& from) { + CopyFrom(from); + return *this; + } + inline ResMeta& operator=(ResMeta&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ResMeta& default_instance() { + return *internal_default_instance(); + } + static inline const ResMeta* internal_default_instance() { + return reinterpret_cast( + &_ResMeta_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(ResMeta& a, ResMeta& b) { + a.Swap(&b); + } + inline void Swap(ResMeta* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ResMeta* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ResMeta* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ResMeta& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const ResMeta& from) { + ResMeta::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ResMeta* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "control.ResMeta"; + } + protected: + explicit ResMeta(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMessageFieldNumber = 2, + kErrorFieldNumber = 1, + }; + // string message = 2; + void clear_message(); + const std::string& message() const; + template + void set_message(ArgT0&& arg0, ArgT... args); + std::string* mutable_message(); + PROTOBUF_NODISCARD std::string* release_message(); + void set_allocated_message(std::string* message); + private: + const std::string& _internal_message() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_message(const std::string& value); + std::string* _internal_mutable_message(); + public: + + // bool error = 1; + void clear_error(); + bool error() const; + void set_error(bool value); + private: + bool _internal_error() const; + void _internal_set_error(bool value); + public: + + // @@protoc_insertion_point(class_scope:control.ResMeta) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr message_; + bool error_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_control_2eproto; +}; +// ------------------------------------------------------------------- + +class Request final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:control.Request) */ { + public: + inline Request() : Request(nullptr) {} + ~Request() override; + explicit PROTOBUF_CONSTEXPR Request(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Request(const Request& from); + Request(Request&& from) noexcept + : Request() { + *this = ::std::move(from); + } + + inline Request& operator=(const Request& from) { + CopyFrom(from); + return *this; + } + inline Request& operator=(Request&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Request& default_instance() { + return *internal_default_instance(); + } + static inline const Request* internal_default_instance() { + return reinterpret_cast( + &_Request_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + friend void swap(Request& a, Request& b) { + a.Swap(&b); + } + inline void Swap(Request* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Request* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Request* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Request& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const Request& from) { + Request::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Request* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "control.Request"; + } + protected: + explicit Request(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMetaFieldNumber = 1, + }; + // .control.ReqMeta meta = 1; + bool has_meta() const; + private: + bool _internal_has_meta() const; + public: + void clear_meta(); + const ::control::ReqMeta& meta() const; + PROTOBUF_NODISCARD ::control::ReqMeta* release_meta(); + ::control::ReqMeta* mutable_meta(); + void set_allocated_meta(::control::ReqMeta* meta); + private: + const ::control::ReqMeta& _internal_meta() const; + ::control::ReqMeta* _internal_mutable_meta(); + public: + void unsafe_arena_set_allocated_meta( + ::control::ReqMeta* meta); + ::control::ReqMeta* unsafe_arena_release_meta(); + + // @@protoc_insertion_point(class_scope:control.Request) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::control::ReqMeta* meta_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_control_2eproto; +}; +// ------------------------------------------------------------------- + +class Result final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:control.Result) */ { + public: + inline Result() : Result(nullptr) {} + ~Result() override; + explicit PROTOBUF_CONSTEXPR Result(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Result(const Result& from); + Result(Result&& from) noexcept + : Result() { + *this = ::std::move(from); + } + + inline Result& operator=(const Result& from) { + CopyFrom(from); + return *this; + } + inline Result& operator=(Result&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Result& default_instance() { + return *internal_default_instance(); + } + static inline const Result* internal_default_instance() { + return reinterpret_cast( + &_Result_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + friend void swap(Result& a, Result& b) { + a.Swap(&b); + } + inline void Swap(Result* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Result* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Result* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const Result& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const Result& from) { + Result::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(Result* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "control.Result"; + } + protected: + explicit Result(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kMetaFieldNumber = 1, + }; + // .control.ResMeta meta = 1; + bool has_meta() const; + private: + bool _internal_has_meta() const; + public: + void clear_meta(); + const ::control::ResMeta& meta() const; + PROTOBUF_NODISCARD ::control::ResMeta* release_meta(); + ::control::ResMeta* mutable_meta(); + void set_allocated_meta(::control::ResMeta* meta); + private: + const ::control::ResMeta& _internal_meta() const; + ::control::ResMeta* _internal_mutable_meta(); + public: + void unsafe_arena_set_allocated_meta( + ::control::ResMeta* meta); + ::control::ResMeta* unsafe_arena_release_meta(); + + // @@protoc_insertion_point(class_scope:control.Result) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::control::ResMeta* meta_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_control_2eproto; +}; +// ------------------------------------------------------------------- + +class HelloRequest final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:control.HelloRequest) */ { + public: + inline HelloRequest() : HelloRequest(nullptr) {} + ~HelloRequest() override; + explicit PROTOBUF_CONSTEXPR HelloRequest(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + HelloRequest(const HelloRequest& from); + HelloRequest(HelloRequest&& from) noexcept + : HelloRequest() { + *this = ::std::move(from); + } + + inline HelloRequest& operator=(const HelloRequest& from) { + CopyFrom(from); + return *this; + } + inline HelloRequest& operator=(HelloRequest&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const HelloRequest& default_instance() { + return *internal_default_instance(); + } + static inline const HelloRequest* internal_default_instance() { + return reinterpret_cast( + &_HelloRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + friend void swap(HelloRequest& a, HelloRequest& b) { + a.Swap(&b); + } + inline void Swap(HelloRequest* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(HelloRequest* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + HelloRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const HelloRequest& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const HelloRequest& from) { + HelloRequest::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HelloRequest* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "control.HelloRequest"; + } + protected: + explicit HelloRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 3, + kMetaFieldNumber = 1, + kIdFieldNumber = 2, + }; + // string name = 3; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // .control.ReqMeta meta = 1; + bool has_meta() const; + private: + bool _internal_has_meta() const; + public: + void clear_meta(); + const ::control::ReqMeta& meta() const; + PROTOBUF_NODISCARD ::control::ReqMeta* release_meta(); + ::control::ReqMeta* mutable_meta(); + void set_allocated_meta(::control::ReqMeta* meta); + private: + const ::control::ReqMeta& _internal_meta() const; + ::control::ReqMeta* _internal_mutable_meta(); + public: + void unsafe_arena_set_allocated_meta( + ::control::ReqMeta* meta); + ::control::ReqMeta* unsafe_arena_release_meta(); + + // int32 id = 2; + void clear_id(); + int32_t id() const; + void set_id(int32_t value); + private: + int32_t _internal_id() const; + void _internal_set_id(int32_t value); + public: + + // @@protoc_insertion_point(class_scope:control.HelloRequest) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::control::ReqMeta* meta_; + int32_t id_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_control_2eproto; +}; +// ------------------------------------------------------------------- + +class HelloResult final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:control.HelloResult) */ { + public: + inline HelloResult() : HelloResult(nullptr) {} + ~HelloResult() override; + explicit PROTOBUF_CONSTEXPR HelloResult(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + HelloResult(const HelloResult& from); + HelloResult(HelloResult&& from) noexcept + : HelloResult() { + *this = ::std::move(from); + } + + inline HelloResult& operator=(const HelloResult& from) { + CopyFrom(from); + return *this; + } + inline HelloResult& operator=(HelloResult&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const HelloResult& default_instance() { + return *internal_default_instance(); + } + static inline const HelloResult* internal_default_instance() { + return reinterpret_cast( + &_HelloResult_default_instance_); + } + static constexpr int kIndexInFileMessages = + 5; + + friend void swap(HelloResult& a, HelloResult& b) { + a.Swap(&b); + } + inline void Swap(HelloResult* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(HelloResult* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + HelloResult* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const HelloResult& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const HelloResult& from) { + HelloResult::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HelloResult* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "control.HelloResult"; + } + protected: + explicit HelloResult(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 3, + kMetaFieldNumber = 1, + kIdFieldNumber = 2, + }; + // string name = 3; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // .control.ResMeta meta = 1; + bool has_meta() const; + private: + bool _internal_has_meta() const; + public: + void clear_meta(); + const ::control::ResMeta& meta() const; + PROTOBUF_NODISCARD ::control::ResMeta* release_meta(); + ::control::ResMeta* mutable_meta(); + void set_allocated_meta(::control::ResMeta* meta); + private: + const ::control::ResMeta& _internal_meta() const; + ::control::ResMeta* _internal_mutable_meta(); + public: + void unsafe_arena_set_allocated_meta( + ::control::ResMeta* meta); + ::control::ResMeta* unsafe_arena_release_meta(); + + // int32 id = 2; + void clear_id(); + int32_t id() const; + void set_id(int32_t value); + private: + int32_t _internal_id() const; + void _internal_set_id(int32_t value); + public: + + // @@protoc_insertion_point(class_scope:control.HelloResult) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::control::ResMeta* meta_; + int32_t id_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_control_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// ReqMeta + +// string rpcname = 1; +inline void ReqMeta::clear_rpcname() { + _impl_.rpcname_.ClearToEmpty(); +} +inline const std::string& ReqMeta::rpcname() const { + // @@protoc_insertion_point(field_get:control.ReqMeta.rpcname) + return _internal_rpcname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ReqMeta::set_rpcname(ArgT0&& arg0, ArgT... args) { + + _impl_.rpcname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:control.ReqMeta.rpcname) +} +inline std::string* ReqMeta::mutable_rpcname() { + std::string* _s = _internal_mutable_rpcname(); + // @@protoc_insertion_point(field_mutable:control.ReqMeta.rpcname) + return _s; +} +inline const std::string& ReqMeta::_internal_rpcname() const { + return _impl_.rpcname_.Get(); +} +inline void ReqMeta::_internal_set_rpcname(const std::string& value) { + + _impl_.rpcname_.Set(value, GetArenaForAllocation()); +} +inline std::string* ReqMeta::_internal_mutable_rpcname() { + + return _impl_.rpcname_.Mutable(GetArenaForAllocation()); +} +inline std::string* ReqMeta::release_rpcname() { + // @@protoc_insertion_point(field_release:control.ReqMeta.rpcname) + return _impl_.rpcname_.Release(); +} +inline void ReqMeta::set_allocated_rpcname(std::string* rpcname) { + if (rpcname != nullptr) { + + } else { + + } + _impl_.rpcname_.SetAllocated(rpcname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.rpcname_.IsDefault()) { + _impl_.rpcname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:control.ReqMeta.rpcname) +} + +// ------------------------------------------------------------------- + +// ResMeta + +// bool error = 1; +inline void ResMeta::clear_error() { + _impl_.error_ = false; +} +inline bool ResMeta::_internal_error() const { + return _impl_.error_; +} +inline bool ResMeta::error() const { + // @@protoc_insertion_point(field_get:control.ResMeta.error) + return _internal_error(); +} +inline void ResMeta::_internal_set_error(bool value) { + + _impl_.error_ = value; +} +inline void ResMeta::set_error(bool value) { + _internal_set_error(value); + // @@protoc_insertion_point(field_set:control.ResMeta.error) +} + +// string message = 2; +inline void ResMeta::clear_message() { + _impl_.message_.ClearToEmpty(); +} +inline const std::string& ResMeta::message() const { + // @@protoc_insertion_point(field_get:control.ResMeta.message) + return _internal_message(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ResMeta::set_message(ArgT0&& arg0, ArgT... args) { + + _impl_.message_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:control.ResMeta.message) +} +inline std::string* ResMeta::mutable_message() { + std::string* _s = _internal_mutable_message(); + // @@protoc_insertion_point(field_mutable:control.ResMeta.message) + return _s; +} +inline const std::string& ResMeta::_internal_message() const { + return _impl_.message_.Get(); +} +inline void ResMeta::_internal_set_message(const std::string& value) { + + _impl_.message_.Set(value, GetArenaForAllocation()); +} +inline std::string* ResMeta::_internal_mutable_message() { + + return _impl_.message_.Mutable(GetArenaForAllocation()); +} +inline std::string* ResMeta::release_message() { + // @@protoc_insertion_point(field_release:control.ResMeta.message) + return _impl_.message_.Release(); +} +inline void ResMeta::set_allocated_message(std::string* message) { + if (message != nullptr) { + + } else { + + } + _impl_.message_.SetAllocated(message, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.message_.IsDefault()) { + _impl_.message_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:control.ResMeta.message) +} + +// ------------------------------------------------------------------- + +// Request + +// .control.ReqMeta meta = 1; +inline bool Request::_internal_has_meta() const { + return this != internal_default_instance() && _impl_.meta_ != nullptr; +} +inline bool Request::has_meta() const { + return _internal_has_meta(); +} +inline void Request::clear_meta() { + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; +} +inline const ::control::ReqMeta& Request::_internal_meta() const { + const ::control::ReqMeta* p = _impl_.meta_; + return p != nullptr ? *p : reinterpret_cast( + ::control::_ReqMeta_default_instance_); +} +inline const ::control::ReqMeta& Request::meta() const { + // @@protoc_insertion_point(field_get:control.Request.meta) + return _internal_meta(); +} +inline void Request::unsafe_arena_set_allocated_meta( + ::control::ReqMeta* meta) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.meta_); + } + _impl_.meta_ = meta; + if (meta) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:control.Request.meta) +} +inline ::control::ReqMeta* Request::release_meta() { + + ::control::ReqMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::control::ReqMeta* Request::unsafe_arena_release_meta() { + // @@protoc_insertion_point(field_release:control.Request.meta) + + ::control::ReqMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; + return temp; +} +inline ::control::ReqMeta* Request::_internal_mutable_meta() { + + if (_impl_.meta_ == nullptr) { + auto* p = CreateMaybeMessage<::control::ReqMeta>(GetArenaForAllocation()); + _impl_.meta_ = p; + } + return _impl_.meta_; +} +inline ::control::ReqMeta* Request::mutable_meta() { + ::control::ReqMeta* _msg = _internal_mutable_meta(); + // @@protoc_insertion_point(field_mutable:control.Request.meta) + return _msg; +} +inline void Request::set_allocated_meta(::control::ReqMeta* meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.meta_; + } + if (meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(meta); + if (message_arena != submessage_arena) { + meta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, meta, submessage_arena); + } + + } else { + + } + _impl_.meta_ = meta; + // @@protoc_insertion_point(field_set_allocated:control.Request.meta) +} + +// ------------------------------------------------------------------- + +// Result + +// .control.ResMeta meta = 1; +inline bool Result::_internal_has_meta() const { + return this != internal_default_instance() && _impl_.meta_ != nullptr; +} +inline bool Result::has_meta() const { + return _internal_has_meta(); +} +inline void Result::clear_meta() { + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; +} +inline const ::control::ResMeta& Result::_internal_meta() const { + const ::control::ResMeta* p = _impl_.meta_; + return p != nullptr ? *p : reinterpret_cast( + ::control::_ResMeta_default_instance_); +} +inline const ::control::ResMeta& Result::meta() const { + // @@protoc_insertion_point(field_get:control.Result.meta) + return _internal_meta(); +} +inline void Result::unsafe_arena_set_allocated_meta( + ::control::ResMeta* meta) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.meta_); + } + _impl_.meta_ = meta; + if (meta) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:control.Result.meta) +} +inline ::control::ResMeta* Result::release_meta() { + + ::control::ResMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::control::ResMeta* Result::unsafe_arena_release_meta() { + // @@protoc_insertion_point(field_release:control.Result.meta) + + ::control::ResMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; + return temp; +} +inline ::control::ResMeta* Result::_internal_mutable_meta() { + + if (_impl_.meta_ == nullptr) { + auto* p = CreateMaybeMessage<::control::ResMeta>(GetArenaForAllocation()); + _impl_.meta_ = p; + } + return _impl_.meta_; +} +inline ::control::ResMeta* Result::mutable_meta() { + ::control::ResMeta* _msg = _internal_mutable_meta(); + // @@protoc_insertion_point(field_mutable:control.Result.meta) + return _msg; +} +inline void Result::set_allocated_meta(::control::ResMeta* meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.meta_; + } + if (meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(meta); + if (message_arena != submessage_arena) { + meta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, meta, submessage_arena); + } + + } else { + + } + _impl_.meta_ = meta; + // @@protoc_insertion_point(field_set_allocated:control.Result.meta) +} + +// ------------------------------------------------------------------- + +// HelloRequest + +// .control.ReqMeta meta = 1; +inline bool HelloRequest::_internal_has_meta() const { + return this != internal_default_instance() && _impl_.meta_ != nullptr; +} +inline bool HelloRequest::has_meta() const { + return _internal_has_meta(); +} +inline void HelloRequest::clear_meta() { + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; +} +inline const ::control::ReqMeta& HelloRequest::_internal_meta() const { + const ::control::ReqMeta* p = _impl_.meta_; + return p != nullptr ? *p : reinterpret_cast( + ::control::_ReqMeta_default_instance_); +} +inline const ::control::ReqMeta& HelloRequest::meta() const { + // @@protoc_insertion_point(field_get:control.HelloRequest.meta) + return _internal_meta(); +} +inline void HelloRequest::unsafe_arena_set_allocated_meta( + ::control::ReqMeta* meta) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.meta_); + } + _impl_.meta_ = meta; + if (meta) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:control.HelloRequest.meta) +} +inline ::control::ReqMeta* HelloRequest::release_meta() { + + ::control::ReqMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::control::ReqMeta* HelloRequest::unsafe_arena_release_meta() { + // @@protoc_insertion_point(field_release:control.HelloRequest.meta) + + ::control::ReqMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; + return temp; +} +inline ::control::ReqMeta* HelloRequest::_internal_mutable_meta() { + + if (_impl_.meta_ == nullptr) { + auto* p = CreateMaybeMessage<::control::ReqMeta>(GetArenaForAllocation()); + _impl_.meta_ = p; + } + return _impl_.meta_; +} +inline ::control::ReqMeta* HelloRequest::mutable_meta() { + ::control::ReqMeta* _msg = _internal_mutable_meta(); + // @@protoc_insertion_point(field_mutable:control.HelloRequest.meta) + return _msg; +} +inline void HelloRequest::set_allocated_meta(::control::ReqMeta* meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.meta_; + } + if (meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(meta); + if (message_arena != submessage_arena) { + meta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, meta, submessage_arena); + } + + } else { + + } + _impl_.meta_ = meta; + // @@protoc_insertion_point(field_set_allocated:control.HelloRequest.meta) +} + +// int32 id = 2; +inline void HelloRequest::clear_id() { + _impl_.id_ = 0; +} +inline int32_t HelloRequest::_internal_id() const { + return _impl_.id_; +} +inline int32_t HelloRequest::id() const { + // @@protoc_insertion_point(field_get:control.HelloRequest.id) + return _internal_id(); +} +inline void HelloRequest::_internal_set_id(int32_t value) { + + _impl_.id_ = value; +} +inline void HelloRequest::set_id(int32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:control.HelloRequest.id) +} + +// string name = 3; +inline void HelloRequest::clear_name() { + _impl_.name_.ClearToEmpty(); +} +inline const std::string& HelloRequest::name() const { + // @@protoc_insertion_point(field_get:control.HelloRequest.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void HelloRequest::set_name(ArgT0&& arg0, ArgT... args) { + + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:control.HelloRequest.name) +} +inline std::string* HelloRequest::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:control.HelloRequest.name) + return _s; +} +inline const std::string& HelloRequest::_internal_name() const { + return _impl_.name_.Get(); +} +inline void HelloRequest::_internal_set_name(const std::string& value) { + + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* HelloRequest::_internal_mutable_name() { + + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* HelloRequest::release_name() { + // @@protoc_insertion_point(field_release:control.HelloRequest.name) + return _impl_.name_.Release(); +} +inline void HelloRequest::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:control.HelloRequest.name) +} + +// ------------------------------------------------------------------- + +// HelloResult + +// .control.ResMeta meta = 1; +inline bool HelloResult::_internal_has_meta() const { + return this != internal_default_instance() && _impl_.meta_ != nullptr; +} +inline bool HelloResult::has_meta() const { + return _internal_has_meta(); +} +inline void HelloResult::clear_meta() { + if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { + delete _impl_.meta_; + } + _impl_.meta_ = nullptr; +} +inline const ::control::ResMeta& HelloResult::_internal_meta() const { + const ::control::ResMeta* p = _impl_.meta_; + return p != nullptr ? *p : reinterpret_cast( + ::control::_ResMeta_default_instance_); +} +inline const ::control::ResMeta& HelloResult::meta() const { + // @@protoc_insertion_point(field_get:control.HelloResult.meta) + return _internal_meta(); +} +inline void HelloResult::unsafe_arena_set_allocated_meta( + ::control::ResMeta* meta) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.meta_); + } + _impl_.meta_ = meta; + if (meta) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:control.HelloResult.meta) +} +inline ::control::ResMeta* HelloResult::release_meta() { + + ::control::ResMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::control::ResMeta* HelloResult::unsafe_arena_release_meta() { + // @@protoc_insertion_point(field_release:control.HelloResult.meta) + + ::control::ResMeta* temp = _impl_.meta_; + _impl_.meta_ = nullptr; + return temp; +} +inline ::control::ResMeta* HelloResult::_internal_mutable_meta() { + + if (_impl_.meta_ == nullptr) { + auto* p = CreateMaybeMessage<::control::ResMeta>(GetArenaForAllocation()); + _impl_.meta_ = p; + } + return _impl_.meta_; +} +inline ::control::ResMeta* HelloResult::mutable_meta() { + ::control::ResMeta* _msg = _internal_mutable_meta(); + // @@protoc_insertion_point(field_mutable:control.HelloResult.meta) + return _msg; +} +inline void HelloResult::set_allocated_meta(::control::ResMeta* meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete _impl_.meta_; + } + if (meta) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(meta); + if (message_arena != submessage_arena) { + meta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, meta, submessage_arena); + } + + } else { + + } + _impl_.meta_ = meta; + // @@protoc_insertion_point(field_set_allocated:control.HelloResult.meta) +} + +// int32 id = 2; +inline void HelloResult::clear_id() { + _impl_.id_ = 0; +} +inline int32_t HelloResult::_internal_id() const { + return _impl_.id_; +} +inline int32_t HelloResult::id() const { + // @@protoc_insertion_point(field_get:control.HelloResult.id) + return _internal_id(); +} +inline void HelloResult::_internal_set_id(int32_t value) { + + _impl_.id_ = value; +} +inline void HelloResult::set_id(int32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:control.HelloResult.id) +} + +// string name = 3; +inline void HelloResult::clear_name() { + _impl_.name_.ClearToEmpty(); +} +inline const std::string& HelloResult::name() const { + // @@protoc_insertion_point(field_get:control.HelloResult.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void HelloResult::set_name(ArgT0&& arg0, ArgT... args) { + + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:control.HelloResult.name) +} +inline std::string* HelloResult::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:control.HelloResult.name) + return _s; +} +inline const std::string& HelloResult::_internal_name() const { + return _impl_.name_.Get(); +} +inline void HelloResult::_internal_set_name(const std::string& value) { + + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* HelloResult::_internal_mutable_name() { + + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* HelloResult::release_name() { + // @@protoc_insertion_point(field_release:control.HelloResult.name) + return _impl_.name_.Release(); +} +inline void HelloResult::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:control.HelloResult.name) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace control + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_control_2eproto diff --git a/control.proto b/control.proto new file mode 100644 index 0000000..cbb093d --- /dev/null +++ b/control.proto @@ -0,0 +1,36 @@ +syntax = "proto3"; + +package control; +//option optimize_for = LITE_RUNTIME; +//option cc_generic_services = false; + +message ReqMeta { + string rpcname = 1; +} + +message ResMeta { + bool error = 1; + string message = 2; +} + +message Request { + ReqMeta meta = 1; +} + +message Result { + ResMeta meta = 1; +} + +message HelloRequest { + ReqMeta meta = 1; + int32 id = 2; + string name = 3; +} + +message HelloResult { + ResMeta meta = 1; + int32 id = 2; + string name = 3; +} + + diff --git a/fakeconnect.cpp b/fakeconnect.cpp new file mode 100644 index 0000000..4abd1cf --- /dev/null +++ b/fakeconnect.cpp @@ -0,0 +1,54 @@ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + + +FakeConnector::FakeConnector(NetHandler& hand) { + handler = &hand; +} + +std::expected FakeConnector::Write(std::string reqNetPacket) { + std::stringstream ss(reqNetPacket); + // Read binary header + std::string reqRawHeader; + const int rhSize = 8; + reqRawHeader.resize(rhSize); + ss.read(reqRawHeader.data(), rhSize); + // Decode header + RPCHeader reqHeader; + reqHeader.Decode(reqRawHeader); + // Read protobuf packet + std::string reqData; + auto pSize = reqHeader.PacketSize(); + reqData.resize(pSize); + ss.read(reqData.data(), pSize); + // Call handler + std::string resData; + handler->Handle(reqData, resData); + // Pack result + std::string resNetPacket; + RPCHeader resHeader(resData.size()); + resNetPacket.append(resHeader.Encode()); + resNetPacket.append(resData); + + in = resNetPacket; + return reqNetPacket.size(); +} + +std::expected FakeConnector::Read(std::string& res, int size) { + res = in; + return 0; +} + +FakeConnector::~FakeConnector() {} + diff --git a/fakeconnect.hpp b/fakeconnect.hpp new file mode 100644 index 0000000..6d2856f --- /dev/null +++ b/fakeconnect.hpp @@ -0,0 +1,27 @@ + +#ifndef FAKECLIENT_HPP +#define FAKECLIENT_HPP + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +class FakeConnector : public NetClient { +private: + NetHandler* handler; + std::string in; +public: + FakeConnector(NetHandler& hand); + std::expected Write(std::string payload) override; + std::expected Read(std::string& buffer, int size) override; + ~FakeConnector(void); +}; + +#endif diff --git a/fakeconnect_test.cpp b/fakeconnect_test.cpp new file mode 100644 index 0000000..55f19b0 --- /dev/null +++ b/fakeconnect_test.cpp @@ -0,0 +1,53 @@ + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include + +class FakeHandler : public NetHandler { +public: + std::expected Handle(std::string& req, std::string& res) override; +}; + +std::expected FakeHandler::Handle(std::string& req, std::string& res) { + control::HelloRequest pbReq; + pbReq.ParseFromString(req); + std::cout << std::format("name: {}\n", pbReq.name()); + std::cout << std::format("id: {}\n", pbReq.id()); + return {}; +} + +int main(int argc, char** argv) { + + FakeHandler handler; + FakeConnector conn(handler); + + control::HelloRequest pbReq; + pbReq.set_id(10); + pbReq.set_name("barefoo"); + + std::string rawReq; + pbReq.SerializeToString(&rawReq); + + RPCHeader reqHeader(rawReq.size()); + auto rawHeader = reqHeader.Encode(); + + std::cout << rawHeader.size() << std::endl; + + std::string reqPacket; + reqPacket.append(rawHeader); + reqPacket.append(rawReq); + + conn.Write(reqPacket); + std::string rawRes; + +} diff --git a/hello.pb.cc b/hello.pb.cc deleted file mode 100644 index a6e827a..0000000 --- a/hello.pb.cc +++ /dev/null @@ -1,839 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: hello.proto - -#include "hello.pb.h" - -#include - -#include -#include -#include -#include -#include -#include -#include -// @@protoc_insertion_point(includes) -#include - -PROTOBUF_PRAGMA_INIT_SEG - -namespace _pb = ::PROTOBUF_NAMESPACE_ID; -namespace _pbi = _pb::internal; - -namespace control { -PROTOBUF_CONSTEXPR Header::Header( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.meta_)*/nullptr - , /*decltype(_impl_._cached_size_)*/{}} {} -struct HeaderDefaultTypeInternal { - PROTOBUF_CONSTEXPR HeaderDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~HeaderDefaultTypeInternal() {} - union { - Header _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 HeaderDefaultTypeInternal _Header_default_instance_; -PROTOBUF_CONSTEXPR Meta::Meta( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.rpcname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_._cached_size_)*/{}} {} -struct MetaDefaultTypeInternal { - PROTOBUF_CONSTEXPR MetaDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~MetaDefaultTypeInternal() {} - union { - Meta _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MetaDefaultTypeInternal _Meta_default_instance_; -PROTOBUF_CONSTEXPR Hello::Hello( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.meta_)*/nullptr - , /*decltype(_impl_.id_)*/0 - , /*decltype(_impl_._cached_size_)*/{}} {} -struct HelloDefaultTypeInternal { - PROTOBUF_CONSTEXPR HelloDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~HelloDefaultTypeInternal() {} - union { - Hello _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 HelloDefaultTypeInternal _Hello_default_instance_; -} // namespace control -static ::_pb::Metadata file_level_metadata_hello_2eproto[3]; -static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_hello_2eproto = nullptr; -static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_hello_2eproto = nullptr; - -const uint32_t TableStruct_hello_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::control::Header, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::control::Header, _impl_.meta_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::control::Meta, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::control::Meta, _impl_.rpcname_), - ~0u, // no _has_bits_ - PROTOBUF_FIELD_OFFSET(::control::Hello, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::control::Hello, _impl_.meta_), - PROTOBUF_FIELD_OFFSET(::control::Hello, _impl_.id_), - PROTOBUF_FIELD_OFFSET(::control::Hello, _impl_.name_), -}; -static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - { 0, -1, -1, sizeof(::control::Header)}, - { 7, -1, -1, sizeof(::control::Meta)}, - { 14, -1, -1, sizeof(::control::Hello)}, -}; - -static const ::_pb::Message* const file_default_instances[] = { - &::control::_Header_default_instance_._instance, - &::control::_Meta_default_instance_._instance, - &::control::_Hello_default_instance_._instance, -}; - -const char descriptor_table_protodef_hello_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = - "\n\013hello.proto\022\007control\"%\n\006Header\022\033\n\004meta" - "\030\001 \001(\0132\r.control.Meta\"\027\n\004Meta\022\017\n\007rpcname" - "\030\001 \001(\t\">\n\005Hello\022\033\n\004meta\030\001 \001(\0132\r.control." - "Meta\022\n\n\002id\030\002 \001(\005\022\014\n\004name\030\003 \001(\tb\006proto3" - ; -static ::_pbi::once_flag descriptor_table_hello_2eproto_once; -const ::_pbi::DescriptorTable descriptor_table_hello_2eproto = { - false, false, 158, descriptor_table_protodef_hello_2eproto, - "hello.proto", - &descriptor_table_hello_2eproto_once, nullptr, 0, 3, - schemas, file_default_instances, TableStruct_hello_2eproto::offsets, - file_level_metadata_hello_2eproto, file_level_enum_descriptors_hello_2eproto, - file_level_service_descriptors_hello_2eproto, -}; -PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_hello_2eproto_getter() { - return &descriptor_table_hello_2eproto; -} - -// Force running AddDescriptors() at dynamic initialization time. -PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_hello_2eproto(&descriptor_table_hello_2eproto); -namespace control { - -// =================================================================== - -class Header::_Internal { -public: - static const ::control::Meta& meta(const Header* msg); -}; - -const ::control::Meta& -Header::_Internal::meta(const Header* msg) { - return *msg->_impl_.meta_; -} -Header::Header(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:control.Header) -} -Header::Header(const Header& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Header* const _this = this; - (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.meta_) { - nullptr - } - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_meta()) { - _this->_impl_.meta_ = new ::control::Meta(*from._impl_.meta_); - } - // @@protoc_insertion_point(copy_constructor:control.Header) -} - -inline void Header::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.meta_) { - nullptr - } - , /*decltype(_impl_._cached_size_)*/{} - }; -} - -Header::~Header() { - // @@protoc_insertion_point(destructor:control.Header) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Header::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - if (this != internal_default_instance()) delete _impl_.meta_; -} - -void Header::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Header::Clear() { -// @@protoc_insertion_point(message_clear_start:control.Header) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { - delete _impl_.meta_; - } - _impl_.meta_ = nullptr; - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Header::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // .control.Meta meta = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - ptr = ctx->ParseMessage(_internal_mutable_meta(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch -handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Header::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:control.Header) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // .control.Meta meta = 1; - if (this->_internal_has_meta()) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, _Internal::meta(this), - _Internal::meta(this).GetCachedSize(), target, stream); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:control.Header) - return target; -} - -size_t Header::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:control.Header) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // .control.Meta meta = 1; - if (this->_internal_has_meta()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.meta_); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Header::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Header::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Header::GetClassData() const { - return &_class_data_; -} - - -void Header::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:control.Header) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (from._internal_has_meta()) { - _this->_internal_mutable_meta()->::control::Meta::MergeFrom( - from._internal_meta()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Header::CopyFrom(const Header& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:control.Header) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Header::IsInitialized() const { - return true; -} - -void Header::InternalSwap(Header* other) { - using std::swap; - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(_impl_.meta_, other->_impl_.meta_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Header::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_hello_2eproto_getter, &descriptor_table_hello_2eproto_once, - file_level_metadata_hello_2eproto[0]); -} - -// =================================================================== - -class Meta::_Internal { -public: -}; - -Meta::Meta(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:control.Meta) -} -Meta::Meta(const Meta& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Meta* const _this = this; - (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.rpcname_) {} - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.rpcname_.InitDefault(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.rpcname_.Set("", GetArenaForAllocation()); -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_rpcname().empty()) { - _this->_impl_.rpcname_.Set(from._internal_rpcname(), - _this->GetArenaForAllocation()); - } - // @@protoc_insertion_point(copy_constructor:control.Meta) -} - -inline void Meta::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.rpcname_) {} - , /*decltype(_impl_._cached_size_)*/{} - }; - _impl_.rpcname_.InitDefault(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.rpcname_.Set("", GetArenaForAllocation()); -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING -} - -Meta::~Meta() { - // @@protoc_insertion_point(destructor:control.Meta) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Meta::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.rpcname_.Destroy(); -} - -void Meta::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Meta::Clear() { -// @@protoc_insertion_point(message_clear_start:control.Meta) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.rpcname_.ClearToEmpty(); - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Meta::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // string rpcname = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - auto str = _internal_mutable_rpcname(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "control.Meta.rpcname")); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch -handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Meta::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:control.Meta) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // string rpcname = 1; - if (!this->_internal_rpcname().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_rpcname().data(), static_cast(this->_internal_rpcname().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "control.Meta.rpcname"); - target = stream->WriteStringMaybeAliased( - 1, this->_internal_rpcname(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:control.Meta) - return target; -} - -size_t Meta::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:control.Meta) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // string rpcname = 1; - if (!this->_internal_rpcname().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_rpcname()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Meta::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Meta::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Meta::GetClassData() const { - return &_class_data_; -} - - -void Meta::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:control.Meta) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (!from._internal_rpcname().empty()) { - _this->_internal_set_rpcname(from._internal_rpcname()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Meta::CopyFrom(const Meta& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:control.Meta) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Meta::IsInitialized() const { - return true; -} - -void Meta::InternalSwap(Meta* other) { - using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.rpcname_, lhs_arena, - &other->_impl_.rpcname_, rhs_arena - ); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Meta::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_hello_2eproto_getter, &descriptor_table_hello_2eproto_once, - file_level_metadata_hello_2eproto[1]); -} - -// =================================================================== - -class Hello::_Internal { -public: - static const ::control::Meta& meta(const Hello* msg); -}; - -const ::control::Meta& -Hello::_Internal::meta(const Hello* msg) { - return *msg->_impl_.meta_; -} -Hello::Hello(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { - SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:control.Hello) -} -Hello::Hello(const Hello& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { - Hello* const _this = this; - (void)_this; - new (&_impl_) Impl_{ - decltype(_impl_.name_) {} - , decltype(_impl_.meta_) { - nullptr - } - , decltype(_impl_.id_) {} - , /*decltype(_impl_._cached_size_)*/{}}; - - _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.name_.InitDefault(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (!from._internal_name().empty()) { - _this->_impl_.name_.Set(from._internal_name(), - _this->GetArenaForAllocation()); - } - if (from._internal_has_meta()) { - _this->_impl_.meta_ = new ::control::Meta(*from._impl_.meta_); - } - _this->_impl_.id_ = from._impl_.id_; - // @@protoc_insertion_point(copy_constructor:control.Hello) -} - -inline void Hello::SharedCtor( - ::_pb::Arena* arena, bool is_message_owned) { - (void)arena; - (void)is_message_owned; - new (&_impl_) Impl_{ - decltype(_impl_.name_) {} - , decltype(_impl_.meta_) { - nullptr - } - , decltype(_impl_.id_) { - 0 - } - , /*decltype(_impl_._cached_size_)*/{} - }; - _impl_.name_.InitDefault(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING -} - -Hello::~Hello() { - // @@protoc_insertion_point(destructor:control.Hello) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { - (void)arena; - return; - } - SharedDtor(); -} - -inline void Hello::SharedDtor() { - GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.name_.Destroy(); - if (this != internal_default_instance()) delete _impl_.meta_; -} - -void Hello::SetCachedSize(int size) const { - _impl_._cached_size_.Set(size); -} - -void Hello::Clear() { -// @@protoc_insertion_point(message_clear_start:control.Hello) - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - _impl_.name_.ClearToEmpty(); - if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { - delete _impl_.meta_; - } - _impl_.meta_ = nullptr; - _impl_.id_ = 0; - _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); -} - -const char* Hello::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { -#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure - while (!ctx->Done(&ptr)) { - uint32_t tag; - ptr = ::_pbi::ReadTag(ptr, &tag); - switch (tag >> 3) { - // .control.Meta meta = 1; - case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - ptr = ctx->ParseMessage(_internal_mutable_meta(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // int32 id = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // string name = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { - auto str = _internal_mutable_name(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "control.Hello.name")); - } else - goto handle_unusual; - continue; - default: - goto handle_unusual; - } // switch -handle_unusual: - if ((tag == 0) || ((tag & 7) == 4)) { - CHK_(ptr); - ctx->SetLastTag(tag); - goto message_done; - } - ptr = UnknownFieldParse( - tag, - _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), - ptr, ctx); - CHK_(ptr != nullptr); - } // while -message_done: - return ptr; -failure: - ptr = nullptr; - goto message_done; -#undef CHK_ -} - -uint8_t* Hello::_InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:control.Hello) - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - // .control.Meta meta = 1; - if (this->_internal_has_meta()) { - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, _Internal::meta(this), - _Internal::meta(this).GetCachedSize(), target, stream); - } - - // int32 id = 2; - if (this->_internal_id() != 0) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteInt32ToArray(2, this->_internal_id(), target); - } - - // string name = 3; - if (!this->_internal_name().empty()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_name().data(), static_cast(this->_internal_name().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "control.Hello.name"); - target = stream->WriteStringMaybeAliased( - 3, this->_internal_name(), target); - } - - if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { - target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( - _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); - } - // @@protoc_insertion_point(serialize_to_array_end:control.Hello) - return target; -} - -size_t Hello::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:control.Hello) - size_t total_size = 0; - - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // string name = 3; - if (!this->_internal_name().empty()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_name()); - } - - // .control.Meta meta = 1; - if (this->_internal_has_meta()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *_impl_.meta_); - } - - // int32 id = 2; - if (this->_internal_id() != 0) { - total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(this->_internal_id()); - } - - return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); -} - -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Hello::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - Hello::MergeImpl -}; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Hello::GetClassData() const { - return &_class_data_; -} - - -void Hello::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:control.Hello) - GOOGLE_DCHECK_NE(&from, _this); - uint32_t cached_has_bits = 0; - (void) cached_has_bits; - - if (!from._internal_name().empty()) { - _this->_internal_set_name(from._internal_name()); - } - if (from._internal_has_meta()) { - _this->_internal_mutable_meta()->::control::Meta::MergeFrom( - from._internal_meta()); - } - if (from._internal_id() != 0) { - _this->_internal_set_id(from._internal_id()); - } - _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); -} - -void Hello::CopyFrom(const Hello& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:control.Hello) - if (&from == this) return; - Clear(); - MergeFrom(from); -} - -bool Hello::IsInitialized() const { - return true; -} - -void Hello::InternalSwap(Hello* other) { - using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); - _internal_metadata_.InternalSwap(&other->_internal_metadata_); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.name_, lhs_arena, - &other->_impl_.name_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(Hello, _impl_.id_) - + sizeof(Hello::_impl_.id_) - - PROTOBUF_FIELD_OFFSET(Hello, _impl_.meta_)>( - reinterpret_cast(&_impl_.meta_), - reinterpret_cast(&other->_impl_.meta_)); -} - -::PROTOBUF_NAMESPACE_ID::Metadata Hello::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_hello_2eproto_getter, &descriptor_table_hello_2eproto_once, - file_level_metadata_hello_2eproto[2]); -} - -// @@protoc_insertion_point(namespace_scope) -} // namespace control -PROTOBUF_NAMESPACE_OPEN -template<> PROTOBUF_NOINLINE ::control::Header* -Arena::CreateMaybeMessage< ::control::Header >(Arena* arena) { - return Arena::CreateMessageInternal< ::control::Header >(arena); -} -template<> PROTOBUF_NOINLINE ::control::Meta* -Arena::CreateMaybeMessage< ::control::Meta >(Arena* arena) { - return Arena::CreateMessageInternal< ::control::Meta >(arena); -} -template<> PROTOBUF_NOINLINE ::control::Hello* -Arena::CreateMaybeMessage< ::control::Hello >(Arena* arena) { - return Arena::CreateMessageInternal< ::control::Hello >(arena); -} -PROTOBUF_NAMESPACE_CLOSE - -// @@protoc_insertion_point(global_scope) -#include diff --git a/hello.pb.h b/hello.pb.h deleted file mode 100644 index ecf832f..0000000 --- a/hello.pb.h +++ /dev/null @@ -1,909 +0,0 @@ -// Generated by the protocol buffer compiler. DO NOT EDIT! -// source: hello.proto - -#ifndef GOOGLE_PROTOBUF_INCLUDED_hello_2eproto -#define GOOGLE_PROTOBUF_INCLUDED_hello_2eproto - -#include -#include - -#include -#if PROTOBUF_VERSION < 3021000 -#error This file was generated by a newer version of protoc which is -#error incompatible with your Protocol Buffer headers. Please update -#error your headers. -#endif -#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION -#error This file was generated by an older version of protoc which is -#error incompatible with your Protocol Buffer headers. Please -#error regenerate this file with a newer version of protoc. -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include // IWYU pragma: export -#include // IWYU pragma: export -#include -// @@protoc_insertion_point(includes) -#include -#define PROTOBUF_INTERNAL_EXPORT_hello_2eproto -PROTOBUF_NAMESPACE_OPEN -namespace internal { -class AnyMetadata; -} // namespace internal -PROTOBUF_NAMESPACE_CLOSE - -// Internal implementation detail -- do not use these members. -struct TableStruct_hello_2eproto { - static const uint32_t offsets[]; -}; -extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_hello_2eproto; -namespace control { -class Header; -struct HeaderDefaultTypeInternal; -extern HeaderDefaultTypeInternal _Header_default_instance_; -class Hello; -struct HelloDefaultTypeInternal; -extern HelloDefaultTypeInternal _Hello_default_instance_; -class Meta; -struct MetaDefaultTypeInternal; -extern MetaDefaultTypeInternal _Meta_default_instance_; -} // namespace control -PROTOBUF_NAMESPACE_OPEN -template<> ::control::Header* Arena::CreateMaybeMessage<::control::Header>(Arena*); -template<> ::control::Hello* Arena::CreateMaybeMessage<::control::Hello>(Arena*); -template<> ::control::Meta* Arena::CreateMaybeMessage<::control::Meta>(Arena*); -PROTOBUF_NAMESPACE_CLOSE -namespace control { - -// =================================================================== - -class Header final : - public ::PROTOBUF_NAMESPACE_ID::Message { /* @@protoc_insertion_point(class_definition:control.Header) */ -public: - inline Header() : Header(nullptr) {} - ~Header() override; - explicit PROTOBUF_CONSTEXPR Header(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Header(const Header& from); - Header(Header&& from) noexcept - : Header() { - *this = ::std::move(from); - } - - inline Header& operator=(const Header& from) { - CopyFrom(from); - return *this; - } - inline Header& operator=(Header&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Header& default_instance() { - return *internal_default_instance(); - } - static inline const Header* internal_default_instance() { - return reinterpret_cast( - &_Header_default_instance_); - } - static constexpr int kIndexInFileMessages = - 0; - - friend void swap(Header& a, Header& b) { - a.Swap(&b); - } - inline void Swap(Header* other) { - if (other == this) return; -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Header* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Header* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage
(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Header& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Header& from) { - Header::MergeImpl(*this, from); - } -private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); -public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - -private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Header* other); - -private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "control.Header"; - } -protected: - explicit Header(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); -public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kMetaFieldNumber = 1, - }; - // .control.Meta meta = 1; - bool has_meta() const; -private: - bool _internal_has_meta() const; -public: - void clear_meta(); - const ::control::Meta& meta() const; - PROTOBUF_NODISCARD ::control::Meta* release_meta(); - ::control::Meta* mutable_meta(); - void set_allocated_meta(::control::Meta* meta); -private: - const ::control::Meta& _internal_meta() const; - ::control::Meta* _internal_mutable_meta(); -public: - void unsafe_arena_set_allocated_meta( - ::control::Meta* meta); - ::control::Meta* unsafe_arena_release_meta(); - - // @@protoc_insertion_point(class_scope:control.Header) -private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::control::Meta* meta_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_hello_2eproto; -}; -// ------------------------------------------------------------------- - -class Meta final : - public ::PROTOBUF_NAMESPACE_ID::Message { /* @@protoc_insertion_point(class_definition:control.Meta) */ -public: - inline Meta() : Meta(nullptr) {} - ~Meta() override; - explicit PROTOBUF_CONSTEXPR Meta(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Meta(const Meta& from); - Meta(Meta&& from) noexcept - : Meta() { - *this = ::std::move(from); - } - - inline Meta& operator=(const Meta& from) { - CopyFrom(from); - return *this; - } - inline Meta& operator=(Meta&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Meta& default_instance() { - return *internal_default_instance(); - } - static inline const Meta* internal_default_instance() { - return reinterpret_cast( - &_Meta_default_instance_); - } - static constexpr int kIndexInFileMessages = - 1; - - friend void swap(Meta& a, Meta& b) { - a.Swap(&b); - } - inline void Swap(Meta* other) { - if (other == this) return; -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Meta* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Meta* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Meta& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Meta& from) { - Meta::MergeImpl(*this, from); - } -private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); -public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - -private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Meta* other); - -private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "control.Meta"; - } -protected: - explicit Meta(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); -public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kRpcnameFieldNumber = 1, - }; - // string rpcname = 1; - void clear_rpcname(); - const std::string& rpcname() const; - template - void set_rpcname(ArgT0&& arg0, ArgT... args); - std::string* mutable_rpcname(); - PROTOBUF_NODISCARD std::string* release_rpcname(); - void set_allocated_rpcname(std::string* rpcname); -private: - const std::string& _internal_rpcname() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_rpcname(const std::string& value); - std::string* _internal_mutable_rpcname(); -public: - - // @@protoc_insertion_point(class_scope:control.Meta) -private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr rpcname_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_hello_2eproto; -}; -// ------------------------------------------------------------------- - -class Hello final : - public ::PROTOBUF_NAMESPACE_ID::Message { /* @@protoc_insertion_point(class_definition:control.Hello) */ -public: - inline Hello() : Hello(nullptr) {} - ~Hello() override; - explicit PROTOBUF_CONSTEXPR Hello(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - Hello(const Hello& from); - Hello(Hello&& from) noexcept - : Hello() { - *this = ::std::move(from); - } - - inline Hello& operator=(const Hello& from) { - CopyFrom(from); - return *this; - } - inline Hello& operator=(Hello&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() -#ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr -#endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const Hello& default_instance() { - return *internal_default_instance(); - } - static inline const Hello* internal_default_instance() { - return reinterpret_cast( - &_Hello_default_instance_); - } - static constexpr int kIndexInFileMessages = - 2; - - friend void swap(Hello& a, Hello& b) { - a.Swap(&b); - } - inline void Swap(Hello* other) { - if (other == this) return; -#ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { -#else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { -#endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(Hello* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - Hello* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const Hello& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const Hello& from) { - Hello::MergeImpl(*this, from); - } -private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); -public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { - return _impl_._cached_size_.Get(); - } - -private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(Hello* other); - -private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "control.Hello"; - } -protected: - explicit Hello(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); -public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kNameFieldNumber = 3, - kMetaFieldNumber = 1, - kIdFieldNumber = 2, - }; - // string name = 3; - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); -private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); -public: - - // .control.Meta meta = 1; - bool has_meta() const; -private: - bool _internal_has_meta() const; -public: - void clear_meta(); - const ::control::Meta& meta() const; - PROTOBUF_NODISCARD ::control::Meta* release_meta(); - ::control::Meta* mutable_meta(); - void set_allocated_meta(::control::Meta* meta); -private: - const ::control::Meta& _internal_meta() const; - ::control::Meta* _internal_mutable_meta(); -public: - void unsafe_arena_set_allocated_meta( - ::control::Meta* meta); - ::control::Meta* unsafe_arena_release_meta(); - - // int32 id = 2; - void clear_id(); - int32_t id() const; - void set_id(int32_t value); -private: - int32_t _internal_id() const; - void _internal_set_id(int32_t value); -public: - - // @@protoc_insertion_point(class_scope:control.Hello) -private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::control::Meta* meta_; - int32_t id_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - }; - union { - Impl_ _impl_; - }; - friend struct ::TableStruct_hello_2eproto; -}; -// =================================================================== - - -// =================================================================== - -#ifdef __GNUC__ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wstrict-aliasing" -#endif // __GNUC__ -// Header - -// .control.Meta meta = 1; -inline bool Header::_internal_has_meta() const { - return this != internal_default_instance() && _impl_.meta_ != nullptr; -} -inline bool Header::has_meta() const { - return _internal_has_meta(); -} -inline void Header::clear_meta() { - if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { - delete _impl_.meta_; - } - _impl_.meta_ = nullptr; -} -inline const ::control::Meta& Header::_internal_meta() const { - const ::control::Meta* p = _impl_.meta_; - return p != nullptr ? *p : reinterpret_cast( - ::control::_Meta_default_instance_); -} -inline const ::control::Meta& Header::meta() const { - // @@protoc_insertion_point(field_get:control.Header.meta) - return _internal_meta(); -} -inline void Header::unsafe_arena_set_allocated_meta( - ::control::Meta* meta) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.meta_); - } - _impl_.meta_ = meta; - if (meta) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:control.Header.meta) -} -inline ::control::Meta* Header::release_meta() { - - ::control::Meta* temp = _impl_.meta_; - _impl_.meta_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::control::Meta* Header::unsafe_arena_release_meta() { - // @@protoc_insertion_point(field_release:control.Header.meta) - - ::control::Meta* temp = _impl_.meta_; - _impl_.meta_ = nullptr; - return temp; -} -inline ::control::Meta* Header::_internal_mutable_meta() { - - if (_impl_.meta_ == nullptr) { - auto* p = CreateMaybeMessage<::control::Meta>(GetArenaForAllocation()); - _impl_.meta_ = p; - } - return _impl_.meta_; -} -inline ::control::Meta* Header::mutable_meta() { - ::control::Meta* _msg = _internal_mutable_meta(); - // @@protoc_insertion_point(field_mutable:control.Header.meta) - return _msg; -} -inline void Header::set_allocated_meta(::control::Meta* meta) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.meta_; - } - if (meta) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(meta); - if (message_arena != submessage_arena) { - meta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, meta, submessage_arena); - } - - } else { - - } - _impl_.meta_ = meta; - // @@protoc_insertion_point(field_set_allocated:control.Header.meta) -} - -// ------------------------------------------------------------------- - -// Meta - -// string rpcname = 1; -inline void Meta::clear_rpcname() { - _impl_.rpcname_.ClearToEmpty(); -} -inline const std::string& Meta::rpcname() const { - // @@protoc_insertion_point(field_get:control.Meta.rpcname) - return _internal_rpcname(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Meta::set_rpcname(ArgT0&& arg0, ArgT... args) { - - _impl_.rpcname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:control.Meta.rpcname) -} -inline std::string* Meta::mutable_rpcname() { - std::string* _s = _internal_mutable_rpcname(); - // @@protoc_insertion_point(field_mutable:control.Meta.rpcname) - return _s; -} -inline const std::string& Meta::_internal_rpcname() const { - return _impl_.rpcname_.Get(); -} -inline void Meta::_internal_set_rpcname(const std::string& value) { - - _impl_.rpcname_.Set(value, GetArenaForAllocation()); -} -inline std::string* Meta::_internal_mutable_rpcname() { - - return _impl_.rpcname_.Mutable(GetArenaForAllocation()); -} -inline std::string* Meta::release_rpcname() { - // @@protoc_insertion_point(field_release:control.Meta.rpcname) - return _impl_.rpcname_.Release(); -} -inline void Meta::set_allocated_rpcname(std::string* rpcname) { - if (rpcname != nullptr) { - - } else { - - } - _impl_.rpcname_.SetAllocated(rpcname, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.rpcname_.IsDefault()) { - _impl_.rpcname_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:control.Meta.rpcname) -} - -// ------------------------------------------------------------------- - -// Hello - -// .control.Meta meta = 1; -inline bool Hello::_internal_has_meta() const { - return this != internal_default_instance() && _impl_.meta_ != nullptr; -} -inline bool Hello::has_meta() const { - return _internal_has_meta(); -} -inline void Hello::clear_meta() { - if (GetArenaForAllocation() == nullptr && _impl_.meta_ != nullptr) { - delete _impl_.meta_; - } - _impl_.meta_ = nullptr; -} -inline const ::control::Meta& Hello::_internal_meta() const { - const ::control::Meta* p = _impl_.meta_; - return p != nullptr ? *p : reinterpret_cast( - ::control::_Meta_default_instance_); -} -inline const ::control::Meta& Hello::meta() const { - // @@protoc_insertion_point(field_get:control.Hello.meta) - return _internal_meta(); -} -inline void Hello::unsafe_arena_set_allocated_meta( - ::control::Meta* meta) { - if (GetArenaForAllocation() == nullptr) { - delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.meta_); - } - _impl_.meta_ = meta; - if (meta) { - - } else { - - } - // @@protoc_insertion_point(field_unsafe_arena_set_allocated:control.Hello.meta) -} -inline ::control::Meta* Hello::release_meta() { - - ::control::Meta* temp = _impl_.meta_; - _impl_.meta_ = nullptr; -#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE - auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - if (GetArenaForAllocation() == nullptr) { - delete old; - } -#else // PROTOBUF_FORCE_COPY_IN_RELEASE - if (GetArenaForAllocation() != nullptr) { - temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); - } -#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE - return temp; -} -inline ::control::Meta* Hello::unsafe_arena_release_meta() { - // @@protoc_insertion_point(field_release:control.Hello.meta) - - ::control::Meta* temp = _impl_.meta_; - _impl_.meta_ = nullptr; - return temp; -} -inline ::control::Meta* Hello::_internal_mutable_meta() { - - if (_impl_.meta_ == nullptr) { - auto* p = CreateMaybeMessage<::control::Meta>(GetArenaForAllocation()); - _impl_.meta_ = p; - } - return _impl_.meta_; -} -inline ::control::Meta* Hello::mutable_meta() { - ::control::Meta* _msg = _internal_mutable_meta(); - // @@protoc_insertion_point(field_mutable:control.Hello.meta) - return _msg; -} -inline void Hello::set_allocated_meta(::control::Meta* meta) { - ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); - if (message_arena == nullptr) { - delete _impl_.meta_; - } - if (meta) { - ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = - ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(meta); - if (message_arena != submessage_arena) { - meta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( - message_arena, meta, submessage_arena); - } - - } else { - - } - _impl_.meta_ = meta; - // @@protoc_insertion_point(field_set_allocated:control.Hello.meta) -} - -// int32 id = 2; -inline void Hello::clear_id() { - _impl_.id_ = 0; -} -inline int32_t Hello::_internal_id() const { - return _impl_.id_; -} -inline int32_t Hello::id() const { - // @@protoc_insertion_point(field_get:control.Hello.id) - return _internal_id(); -} -inline void Hello::_internal_set_id(int32_t value) { - - _impl_.id_ = value; -} -inline void Hello::set_id(int32_t value) { - _internal_set_id(value); - // @@protoc_insertion_point(field_set:control.Hello.id) -} - -// string name = 3; -inline void Hello::clear_name() { - _impl_.name_.ClearToEmpty(); -} -inline const std::string& Hello::name() const { - // @@protoc_insertion_point(field_get:control.Hello.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void Hello::set_name(ArgT0&& arg0, ArgT... args) { - - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:control.Hello.name) -} -inline std::string* Hello::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:control.Hello.name) - return _s; -} -inline const std::string& Hello::_internal_name() const { - return _impl_.name_.Get(); -} -inline void Hello::_internal_set_name(const std::string& value) { - - _impl_.name_.Set(value, GetArenaForAllocation()); -} -inline std::string* Hello::_internal_mutable_name() { - - return _impl_.name_.Mutable(GetArenaForAllocation()); -} -inline std::string* Hello::release_name() { - // @@protoc_insertion_point(field_release:control.Hello.name) - return _impl_.name_.Release(); -} -inline void Hello::set_allocated_name(std::string* name) { - if (name != nullptr) { - - } else { - - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:control.Hello.name) -} - -#ifdef __GNUC__ -#pragma GCC diagnostic pop -#endif // __GNUC__ -// ------------------------------------------------------------------- - -// ------------------------------------------------------------------- - - -// @@protoc_insertion_point(namespace_scope) - -} // namespace control - -// @@protoc_insertion_point(global_scope) - -#include -#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_hello_2eproto diff --git a/hello.proto b/hello.proto deleted file mode 100644 index 0fa8d28..0000000 --- a/hello.proto +++ /dev/null @@ -1,21 +0,0 @@ -syntax = "proto3"; - -package control; -//option optimize_for = LITE_RUNTIME; -//option cc_generic_services = false; - -message Header { - Meta meta = 1; -} -message Meta { - string rpcname = 1; -} - -message Hello { - Meta meta = 1; - int32 id = 2; - string name = 3; -} - - - diff --git a/message_test.cpp b/message_test.cpp deleted file mode 100644 index 399dd1e..0000000 --- a/message_test.cpp +++ /dev/null @@ -1,26 +0,0 @@ - -#include -#include -#include -#include -#include - -#include - -int main(int argc, char** argv) { - control::Hello msg; - msg.set_id(1); - msg.set_name("bare"); - - auto meta = msg.mutable_meta(); - meta->set_rpcname("getHello"); - - std::string buffer; - msg.SerializeToString(&buffer); - - control::Header newmsg; - newmsg.ParsePartialFromString(buffer); - - auto newmeta = newmsg.meta(); - std::cout << std::format("{}\n", meta->rpcname()); -} diff --git a/netclient.cpp b/netclient.cpp new file mode 100644 index 0000000..241b3a6 --- /dev/null +++ b/netclient.cpp @@ -0,0 +1,41 @@ +extern "C" { +#include +#include +#include +#include +#include +#include +#include +#include +} + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include + +NetClient::NetClient() {} + +std::expected NetClient::Connect(const std::string naddress, const int port) { + return {}; +} + +std::expected NetClient::Write(std::string payload) { + return payload.size(); +} + +std::expected NetClient::Read(std::string& res, int size) { + return 0; +} + +NetClient::~NetClient() {} + diff --git a/netclient.hpp b/netclient.hpp new file mode 100644 index 0000000..2ce7c80 --- /dev/null +++ b/netclient.hpp @@ -0,0 +1,21 @@ + +#ifndef NETCLIENT_HPP +#define NETCLIENT_HPP + +#include +#include +#include +#include +#include +#include + +class NetClient { +public: + NetClient(void); + virtual std::expected Connect(std::string address, const int port); + virtual std::expected Write(std::string payload); + virtual std::expected Read(std::string& buffer, int size); + virtual ~NetClient(void); +}; + +#endif diff --git a/nethandler.cpp b/nethandler.cpp new file mode 100644 index 0000000..d4e76b5 --- /dev/null +++ b/nethandler.cpp @@ -0,0 +1,33 @@ +extern "C" { +#include +#include +#include +#include +#include +#include +#include +#include +} + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include + +NetHandler::NetHandler() {} + +std::expected NetHandler::Handle(std::string& req, std::string& res) { + return {}; +} + +NetHandler::~NetHandler() {} + diff --git a/nethandler.hpp b/nethandler.hpp new file mode 100644 index 0000000..80a861c --- /dev/null +++ b/nethandler.hpp @@ -0,0 +1,27 @@ + + +#ifndef NETHANDLER_HPP +#define NETHANDLER_HPP + + +#include +#include +#include +#include +#include +#include + +#include + +class NetHandler { +public: + NetHandler(void); + virtual std::expected Handle(std::string& req, std::string& res); + virtual ~NetHandler(void); + + NetHandler(const NetHandler&) = delete; + NetHandler& operator=(const NetHandler&) = delete; + +}; + +#endif diff --git a/rcpclient.hpp b/rcpclient.hpp deleted file mode 100644 index 5aa0721..0000000 --- a/rcpclient.hpp +++ /dev/null @@ -1,11 +0,0 @@ - - -#include -#include -#include -#include -#include -#include - -class RPCClient { -}; diff --git a/rpcclient.cpp b/rpcclient.cpp index 8dbaa1c..da700e4 100644 --- a/rpcclient.cpp +++ b/rpcclient.cpp @@ -1,18 +1,47 @@ - #include #include #include #include #include #include +#include #include +#include -#include +#include +#include -//google::protobuf::Message -std::expected Transaction(const google::protobuf::Message& m) { +void Router(std::string& req, std::string& res) { + + std::string rawResult; + control::HelloResult helloRes; + helloRes.Clear(); + helloRes.set_name("foobare"); + helloRes.set_id(12); + helloRes.SerializeToString(&rawResult); + res.append(rawResult); + +} + +std::expected RPCClient::Transaction(const pbMessage& pbReq, pbMessage& pbRes) { + + std::string rawRequest; + pbReq.SerializeToString(&rawRequest); + + //RPCHeader header(rawRequest.size()); + //auto rawHeader = header.Encode(); + + std::string reqPacket; + //request.append(rawHeader); + reqPacket.append(rawRequest); + + std::string resPacket; + Router(reqPacket, resPacket); + + pbRes.ParseFromString(resPacket); + return {}; } diff --git a/rpcclient.hpp b/rpcclient.hpp new file mode 100644 index 0000000..8e21b71 --- /dev/null +++ b/rpcclient.hpp @@ -0,0 +1,18 @@ + + +#include +#include +#include +#include +#include +#include + +#include + +using pbMessage = google::protobuf::Message; +using pbMessagePtr = std::unique_ptr; + +class RPCClient { +public: + std::expected Transaction(const pbMessage& req, pbMessage& res); +}; diff --git a/rpcclient_test.cpp b/rpcclient_test.cpp new file mode 100644 index 0000000..f17efee --- /dev/null +++ b/rpcclient_test.cpp @@ -0,0 +1,23 @@ + +#include +#include +#include +#include +#include + +#include +#include + +int main(int argc, char** argv) { + RPCClient rpcCli; + + control::HelloRequest pbReq; + pbReq.set_id(10); + pbReq.set_name("barefoo"); + + control::HelloResult pbRes; + pbRes.Clear(); + auto trRes = rpcCli.Transaction(pbReq, pbRes); + + std::cout << std::format("res name: {}\n", pbRes.name()); +} diff --git a/header.cpp b/rpcheader.cpp similarity index 78% rename from header.cpp rename to rpcheader.cpp index 8dff1e8..3786677 100644 --- a/header.cpp +++ b/rpcheader.cpp @@ -10,17 +10,17 @@ extern "C" { #include #include -#include +#include -Header::Header(const uint32_t ipSize) { +RPCHeader::RPCHeader(const uint32_t ipSize) { pSize = ipSize; } -Header::Header(void) { +RPCHeader::RPCHeader(void) { pSize = 0; } -std::string Header::Encode() { +std::string RPCHeader::Encode() { std::string buffer, tmp; auto magic = htonl(MAGIC); tmp = std::string(reinterpret_cast(&magic), sizeof(magic)); @@ -32,7 +32,7 @@ std::string Header::Encode() { return buffer; } -std::expected Header::Decode(const std::string rawHeader) { +std::expected RPCHeader::Decode(const std::string rawHeader) { uint32_t tmp; std::memcpy(&tmp, rawHeader.data(), sizeof(uint32_t)); auto magic = ntohl(tmp); @@ -44,6 +44,6 @@ std::expected Header::Decode(const std::string rawHeader) { return {}; } -uint32_t Header::PacketSize() { +uint32_t RPCHeader::PacketSize() { return pSize; } diff --git a/header.hpp b/rpcheader.hpp similarity index 74% rename from header.hpp rename to rpcheader.hpp index 5849e0b..43adb9a 100644 --- a/header.hpp +++ b/rpcheader.hpp @@ -3,12 +3,12 @@ const uint32_t MAGIC = 0xABBA; -class Header { +class RPCHeader { private: uint32_t pSize = 0; public: - Header(const uint32_t pSize); - Header(void); + RPCHeader(const uint32_t pSize); + RPCHeader(void); std::string Encode(void); std::expected Decode(const std::string buffer); uint32_t PacketSize(void); diff --git a/header_test.cpp b/rpcheader_test.cpp similarity index 73% rename from header_test.cpp rename to rpcheader_test.cpp index 025b9e8..374f62d 100644 --- a/header_test.cpp +++ b/rpcheader_test.cpp @@ -5,14 +5,13 @@ #include #include -#include +#include int main(int argc, char** argv) { - uint32_t size = - Header primary(1021); + RPCHeader primary(1021); auto rawHeader = primary.Encode(); - Header second; + RPCHeader second; second.Decode(rawHeader); std::cout << std::format("{}\n", second.PacketSize()); diff --git a/tcpclient.hpp b/tcpclient.hpp index f5fbb2d..84504bb 100644 --- a/tcpclient.hpp +++ b/tcpclient.hpp @@ -5,6 +5,8 @@ #include #include +//#include + class TCPClient { private: int sock; diff --git a/works/header/header_test.cpp b/works/header/header_test.cpp index 025b9e8..a3ddf0e 100644 --- a/works/header/header_test.cpp +++ b/works/header/header_test.cpp @@ -8,8 +8,7 @@ #include int main(int argc, char** argv) { - uint32_t size = - Header primary(1021); + Header primary(1021); auto rawHeader = primary.Encode(); Header second;