diff options
author | Leif Middelschulte <leif.middelschulte@gmail.com> | 2012-08-19 21:08:23 +0000 |
---|---|---|
committer | Leif Middelschulte <leif.middelschulte@gmail.com> | 2012-08-19 21:08:23 +0000 |
commit | e01955d0ffac5daf72c8d7f41c2c62cac6b53680 (patch) | |
tree | 2268d39e9ae02ec94884329b844b82ca5f7dc4e6 | |
parent | f9c0e104e681b9144701242100f5ca59186ce09c (diff) | |
download | swig-e01955d0ffac5daf72c8d7f41c2c62cac6b53680.tar.gz |
Move '[const] T ** const' and size_t of 'out' typemap into macros
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/gsoc2012-c@13672 626c5289-ae23-0410-ae9c-e8d60b6d4f22
-rw-r--r-- | Lib/c/c.swg | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/Lib/c/c.swg b/Lib/c/c.swg index 270dadfdf..dad393aea 100644 --- a/Lib/c/c.swg +++ b/Lib/c/c.swg @@ -350,7 +350,7 @@ PRE short POST, PRE int POST, PRE long POST, PRE long long POST, PRE char POST, //this macro is necessary, because 'unsigned double' is not allowed. %define out_assignment_no_cast_unsigned_only(PRE, POST) -PRE float POST, PRE double POST, PRE signed char POST "$result = $1;" +PRE float POST, PRE double POST, PRE signed char POST, PRE size_t POST "$result = $1;" %enddef %define out_assignment_group(PRE) @@ -360,6 +360,7 @@ out_assignment_no_cast(PRE,&); out_assignment_no_cast(PRE,[ANY]); out_assignment_no_cast(PRE,*&); out_assignment_no_cast(PRE,**); +out_assignment_no_cast(PRE,** const); %enddef out_assignment_group(); @@ -372,30 +373,17 @@ out_assignment_no_cast_unsigned_only(,*); out_assignment_no_cast_unsigned_only(,&); out_assignment_no_cast_unsigned_only(,[ANY]); out_assignment_no_cast_unsigned_only(,**); +out_assignment_no_cast_unsigned_only(,** const); out_assignment_no_cast_unsigned_only(,*&); out_assignment_no_cast_unsigned_only(const,); out_assignment_no_cast_unsigned_only(const,*); out_assignment_no_cast_unsigned_only(const,&); out_assignment_no_cast_unsigned_only(const,[ANY]); out_assignment_no_cast_unsigned_only(const,*&); +out_assignment_no_cast_unsigned_only(const,**); %typemap(out) void "" -// constant pointers -%typemap(out) short* * const, int* * const, long* * const, long long* * const, char* * const, float* * const, double* * const "$result = ($1_ltype) $1;" -%typemap(out) const short* * const, const int* * const, const long* * const, const long long* * const, const char* * const, const float* * const, const double* * const "$result = ($1_ltype) $1;" - -// size_t -%typemap(out) size_t, const size_t "$result = (size_t) $1;" -%typemap(out) size_t*, size_t&, size_t[ANY], size_t[] "$result = (size_t *) $1;" -%typemap(out) const size_t&, const size_t*, const size_t[ANY], const size_t[] "$result = (const size_t *) &$1;" -%typemap(out) size_t**, size_t*&, size_t*[ANY], size_t[ANY][ANY] "$result = (size_t **) $1;" -%typemap(out) const size_t**, const size_t*&, const size_t*[ANY], const size_t[ANY][ANY] "$result = (const size_t **) $1;" -// constant pointers -%typemap(out) size_t * const "$result = (size_t) $1;" -%typemap(out) size_t* * const "$result = (size_t *) $1;" -%typemap(out) const size_t* * const "$result = (const size_t **) $1;" - %typemap(out, fragment="stdbool_inc") bool, bool *, const bool, const bool * "$result = ($1_ltype) $1;" %typemap(out, fragment="stdbool_inc") bool &, const bool & "$result = $1;" |