Fix some language's std::map wrappers to recognise difference_type, size_type, key_type and mapped_type.

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@13092 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2012-05-15 19:51:06 +00:00
commit 142f1e72bb
8 changed files with 33 additions and 4 deletions

View file

@ -5,6 +5,10 @@ See the RELEASENOTES file for a summary of changes in each release.
Version 2.0.7 (in progress) Version 2.0.7 (in progress)
=========================== ===========================
2012-05-14: wsfulton
Fix some language's std::map wrappers to recognise difference_type, size_type, key_type
and mapped_type.
2012-05-14: kwwette (signed off by xavier98) 2012-05-14: kwwette (signed off by xavier98)
[Octave] Prevent Octave from seg-faulting at exit when SWIG [Octave] Prevent Octave from seg-faulting at exit when SWIG
modules are loaded, due to bugs in Octave's cleanup code: modules are loaded, due to bugs in Octave's cleanup code:

View file

@ -215,12 +215,13 @@
%} %}
public: public:
map(); typedef size_t size_type;
map(const map< K, T > &other); typedef ptrdiff_t difference_type;
typedef K key_type; typedef K key_type;
typedef T mapped_type; typedef T mapped_type;
typedef size_t size_type;
map();
map(const map< K, T > &other);
size_type size() const; size_type size() const;
bool empty() const; bool empty() const;
%rename(Clear) clear; %rename(Clear) clear;

View file

@ -217,6 +217,10 @@ namespace std {
%rename("delete!") __delitem__; %rename("delete!") __delitem__;
%rename("has-key?") has_key; %rename("has-key?") has_key;
public: public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef K key_type;
typedef T mapped_type;
map(); map();
map(const map<K,T> &); map(const map<K,T> &);

View file

@ -217,6 +217,10 @@ namespace std {
%rename("delete!") __delitem__; %rename("delete!") __delitem__;
%rename("has-key?") has_key; %rename("has-key?") has_key;
public: public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef K key_type;
typedef T mapped_type;
map(); map();
map(const map<K,T> &); map(const map<K,T> &);

View file

@ -22,6 +22,10 @@ namespace std {
template<class K, class T> class map { template<class K, class T> class map {
// add typemaps here // add typemaps here
public: public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef K key_type;
typedef T mapped_type;
map(); map();
map(const map<K,T> &); map(const map<K,T> &);

View file

@ -23,6 +23,10 @@ namespace std {
template<class K, class T> class map { template<class K, class T> class map {
// add typemaps here // add typemaps here
public: public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef K key_type;
typedef T mapped_type;
map(); map();
map(const map<K,T> &); map(const map<K,T> &);

View file

@ -23,6 +23,10 @@ namespace std {
template<class K, class T> class map { template<class K, class T> class map {
// add typemaps here // add typemaps here
public: public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef K key_type;
typedef T mapped_type;
map(); map();
map(const map<K,T> &); map(const map<K,T> &);

View file

@ -24,6 +24,10 @@ namespace std {
template<class K, class T> class map { template<class K, class T> class map {
// add typemaps here // add typemaps here
public: public:
typedef size_t size_type;
typedef ptrdiff_t difference_type;
typedef K key_type;
typedef T mapped_type;
map(); map();
map(const map<K,T> &); map(const map<K,T> &);