added missing constructors for std::pair

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7221 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2005-05-25 21:34:39 +00:00
commit 4c4e3f47ad
9 changed files with 138 additions and 46 deletions

View file

@ -115,6 +115,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -212,6 +218,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -307,6 +319,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -394,6 +412,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};

View file

@ -16,16 +16,20 @@
#include <utility>
%}
// exported class
namespace std {
template<class T, class U> struct pair {
// add typemaps here
T first;
U second;
};
template<class T, class U> struct pair {
// add specializations here
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
// add specializations here
}

View file

@ -116,6 +116,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -212,6 +218,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -307,6 +319,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -396,6 +414,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};

View file

@ -16,16 +16,20 @@
#include <utility>
%}
// exported class
namespace std {
template<class T, class U> struct pair {
// add typemaps here
T first;
U second;
};
template<class T, class U> struct pair {
// add specializations here
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
// add specializations here
}

View file

@ -16,16 +16,20 @@
#include <utility>
%}
// exported class
namespace std {
template<class T, class U> struct pair {
// add typemaps here
T first;
U second;
};
template<class T, class U> struct pair {
// add specializations here
pair();
pair(T t, U u);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
// add specializations here
}

View file

@ -16,16 +16,20 @@
#include <utility>
%}
// exported class
namespace std {
template<class T, class U> struct pair {
// add typemaps here
T first;
U second;
};
template<class T, class U> struct pair {
// add specializations here
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
// add specializations here
}

View file

@ -135,6 +135,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -251,6 +257,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -368,6 +380,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
@ -474,6 +492,12 @@ namespace std {
$1 = 0;
}
}
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};

View file

@ -7,7 +7,7 @@
namespace std {
template <class T, class U > struct pair {
typedef T fisrt_type;
typedef T first_type;
typedef U second_type;
%traits_swigtype(T);
@ -30,8 +30,8 @@ namespace std {
%typemap_traits_ptr(SWIG_TYPECHECK_PAIR, std::pair<T,U >);
pair();
pair(T __a, U __b);
pair(const pair& __p);
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
@ -49,7 +49,7 @@ namespace std {
// simplified when a 'const SWIGTYPE*&' can be defined
// ***
template <class T, class U > struct pair<T, U*> {
typedef T fisrt_type;
typedef T first_type;
typedef U* second_type;
%traits_swigtype(T);
@ -85,7 +85,7 @@ namespace std {
};
template <class T, class U > struct pair<T*, U> {
typedef T* fisrt_type;
typedef T* first_type;
typedef U second_type;
%traits_swigtype(T);
@ -121,7 +121,7 @@ namespace std {
};
template <class T, class U > struct pair<T*, U*> {
typedef T* fisrt_type;
typedef T* first_type;
typedef U* second_type;
%traits_swigtype(T);

View file

@ -16,16 +16,20 @@
#include <utility>
%}
// exported class
namespace std {
template<class T, class U> struct pair {
// add typemaps here
T first;
U second;
};
template<class T, class U> struct pair {
// add specializations here
pair();
pair(T first, U second);
pair(const pair& p);
template <class U1, class U2> pair(const pair<U1, U2> &p);
T first;
U second;
};
// add specializations here
}