aboutsummaryrefslogtreecommitdiff
path: root/src/google/protobuf/compiler/ruby/ruby_generator.cc
diff options
context:
space:
mode:
authorChris Fallin <cfallin@c1f.net>2014-12-12 17:31:25 -0800
committerChris Fallin <cfallin@c1f.net>2014-12-12 18:27:19 -0800
commit5ce69e991a00a5a0c5016bffd150ce0abbf84e1b (patch)
tree3023097d0228c46c0287448250e6e5c21f589925 /src/google/protobuf/compiler/ruby/ruby_generator.cc
parent044e095a9be224a07ebec4bf9ada1de92e159816 (diff)
downloadprotobuf-5ce69e991a00a5a0c5016bffd150ce0abbf84e1b.tar.gz
protobuf-5ce69e991a00a5a0c5016bffd150ce0abbf84e1b.tar.bz2
protobuf-5ce69e991a00a5a0c5016bffd150ce0abbf84e1b.zip
Support Ruby code generation only for proto3.
Diffstat (limited to 'src/google/protobuf/compiler/ruby/ruby_generator.cc')
-rw-r--r--src/google/protobuf/compiler/ruby/ruby_generator.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/google/protobuf/compiler/ruby/ruby_generator.cc b/src/google/protobuf/compiler/ruby/ruby_generator.cc
index e70425ff..c5687903 100644
--- a/src/google/protobuf/compiler/ruby/ruby_generator.cc
+++ b/src/google/protobuf/compiler/ruby/ruby_generator.cc
@@ -297,6 +297,14 @@ bool Generator::Generate(
const string& parameter,
GeneratorContext* generator_context,
string* error) const {
+
+ if (file->syntax() != FileDescriptor::SYNTAX_PROTO3) {
+ *error =
+ "Can only generate Ruby code for proto3 .proto files.\n"
+ "Please add 'syntax = \"proto3\";' to the top of your .proto file.\n";
+ return false;
+ }
+
std::string filename =
StripDotProto(file->name()) + ".rb";
scoped_ptr<io::ZeroCopyOutputStream> output(generator_context->Open(filename));