#!/usr/bin/env ruby $: << ".." # Include .. in load path require 'cppgen' class MethodBodyConstVisitorGen < CppGen def initialize(outdir, amqp) super(outdir, amqp) @namespace="qpid::framing" @classname="MethodBodyConstVisitor" @filename="qpid/framing/MethodBodyConstVisitor" end def generate() h_file("#{@filename}") { namespace(@namespace) { @amqp.methods_.each { |m| genl "class #{m.body_name};" } cpp_class("MethodBodyConstVisitor") { genl "public:" genl "virtual ~MethodBodyConstVisitor() {}" @amqp.methods_.each { |m| genl "virtual void visit(const #{m.body_name}&) = 0;" } }}} end end MethodBodyConstVisitorGen.new($outdir, $amqp).generate();