summaryrefslogtreecommitdiff
path: root/cpp/rubygen/cppgen.rb
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/rubygen/cppgen.rb')
-rwxr-xr-xcpp/rubygen/cppgen.rb9
1 files changed, 7 insertions, 2 deletions
diff --git a/cpp/rubygen/cppgen.rb b/cpp/rubygen/cppgen.rb
index 724634e514..a3314c7e11 100755
--- a/cpp/rubygen/cppgen.rb
+++ b/cpp/rubygen/cppgen.rb
@@ -63,6 +63,7 @@ end
class AmqpField
def cppname() @cache_cppname ||= name.lcaps.cppsafe; end
def cpptype() @cache_cpptype ||= amqp_root.param_type(field_type); end
+ def cppret_type() @cache_cpptype ||= amqp_root.return_type(field_type); end
def type_name () @type_name ||= cpptype+" "+cppname; end
end
@@ -159,8 +160,12 @@ class CppGen < Generator
def struct_class(type, name, bases, &block)
genl
gen "#{type} #{name}"
- gen ": #{bases.join(', ')}" unless bases.empty?
- scope(" {","};") { yield }
+ if (!bases.empty?)
+ genl ":"
+ indent { gen "#{bases.join(",\n")}" }
+ end
+ genl
+ scope("{","};") { yield }
end
def struct(name, *bases, &block) struct_class("struct", name, bases, &block); end