/* Copyright 2011 The Go Authors.  All rights reserved.
   Use of this source code is governed by a BSD-style
   license that can be found in the LICENSE file.  */

/* An example of writing a C++ virtual function in Go.  */

%module(directors="1") callback

%{
#include <string>
#include "callback.h"
%}

%include "std_string.i"

%feature("director");

%include "callback.h"
