/cpp-protoc-initializers

Protocol Buffers Compiler (protoc) plugin allowing aggregate initialization on generated types in C++

Primary LanguageC++MIT LicenseMIT

cpp-protoc-initializers

WORK IN PROGRESS

This plugin allows using aggregate initialization on Protocol Buffer generated classes.

Invocation: protoc --plugin=protoc-gen-cpp_initializers=<path_to_plugin> --cpp_initializers_out=. PROTO_FILES.

Example:

syntax = "proto3";

package foo;

message Message {
	int32 field;
}
template <typename T>
void foo(const typename T::initializable_type &message_) {
	T message(message_);
}

foo<package::Message>({.field = 2});