%module ABAC // Accessing these overloaded functions confuses perl and python. // ignore the string& set, // The bare name takes an open file. %rename(ID_chunk) ABAC::ID::ID(abac_chunk_t); %ignore ABAC::ID::write_cert(const std::string&); %ignore ABAC::ID::write_privkey(const std::string&); %ignore ABAC::Attribute::write(const std::string&); // Accessing these overloaded functions confuses perl and python. // Rename these so we can get to them %rename(write_cert_name) ABAC::ID::write_cert_file(const char *); %rename(write_privkey_name) ABAC::ID::write_privkey_file(const char *); %rename(write_name) ABAC::Attribute::write_file(const char *); %rename(ID_chunk) Creddy::ID::ID(abac_chunk_t); %{ #include "abac.hh" using namespace ABAC; %} %include "language.i" %ignore std::vector::vector(size_type); %ignore std::vector::resize(size_type); %ignore std::vector::pop(); %include "std_vector.i" namespace std { %template(CredentialVector) vector; }; %include "abac.h" %include "abac.hh"