You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by ma...@apache.org on 2009/12/13 00:20:09 UTC

svn commit: r890005 - /lucene/lucy/trunk/clownfish/lib/Clownfish/Binding/Perl/TypeMap.pm

Author: marvin
Date: Sat Dec 12 23:20:08 2009
New Revision: 890005

URL: http://svn.apache.org/viewvc?rev=890005&view=rev
Log:
Add Perl typemaps for some stdint.h integer types.

Modified:
    lucene/lucy/trunk/clownfish/lib/Clownfish/Binding/Perl/TypeMap.pm

Modified: lucene/lucy/trunk/clownfish/lib/Clownfish/Binding/Perl/TypeMap.pm
URL: http://svn.apache.org/viewvc/lucene/lucy/trunk/clownfish/lib/Clownfish/Binding/Perl/TypeMap.pm?rev=890005&r1=890004&r2=890005&view=diff
==============================================================================
--- lucene/lucy/trunk/clownfish/lib/Clownfish/Binding/Perl/TypeMap.pm (original)
+++ lucene/lucy/trunk/clownfish/lib/Clownfish/Binding/Perl/TypeMap.pm Sat Dec 12 23:20:08 2009
@@ -22,6 +22,14 @@
             : "$_[0] = (long)SvNV( $_[1] );";
     },
     size_t     => sub {"$_[0] = (size_t)SvIV( $_[1] );"},
+    uint64_t   => sub {"$_[0] = (uint64_t)SvNV( $_[1] );"},
+    uint32_t   => sub {"$_[0] = (uint32_t)SvUV( $_[1] );"},
+    uint16_t   => sub {"$_[0] = (uint16_t)SvUV( $_[1] );"},
+    uint8_t    => sub {"$_[0] = (uint8_t)SvUV( $_[1] );"},
+    int64_t    => sub {"$_[0] = (int64_t)SvNV( $_[1] );"},
+    int32_t    => sub {"$_[0] = (int32_t)SvIV( $_[1] );"},
+    int16_t    => sub {"$_[0] = (int16_t)SvIV( $_[1] );"},
+    int8_t     => sub {"$_[0] = (int8_t)SvIV( $_[1] );"},
     chy_u64_t  => sub {"$_[0] = (chy_u64_t)SvNV( $_[1] );"},
     chy_u32_t  => sub {"$_[0] = (chy_u32_t)SvUV( $_[1] );"},
     chy_u16_t  => sub {"$_[0] = (chy_u16_t)SvUV( $_[1] );"},
@@ -44,7 +52,23 @@
             ? "$_[0] = newSViv( $_[1] );"
             : "$_[0] = newSVnv( (NV)$_[1] );";
     },
-    size_t    => sub {"$_[0] = newSViv( $_[1] );"},
+    size_t   => sub {"$_[0] = newSViv( $_[1] );"},
+    uint64_t => sub {
+        $Config{uvsize} == 8
+            ? "$_[0] = newSVuv( $_[1] );"
+            : "$_[0] = newSVnv( (NV)$_[1] );";
+    },
+    uint32_t => sub {"$_[0] = newSVuv( $_[1] );"},
+    uint16_t => sub {"$_[0] = newSVuv( $_[1] );"},
+    uint8_t  => sub {"$_[0] = newSVuv( $_[1] );"},
+    int64_t  => sub {
+        $Config{ivsize} == 8
+            ? "$_[0] = newSViv( $_[1] );"
+            : "$_[0] = newSVnv( (NV)$_[1] );";
+    },
+    int32_t   => sub {"$_[0] = newSViv( $_[1] );"},
+    int16_t   => sub {"$_[0] = newSViv( $_[1] );"},
+    int8_t    => sub {"$_[0] = newSViv( $_[1] );"},
     chy_u64_t => sub {
         $Config{uvsize} == 8
             ? "$_[0] = newSVuv( $_[1] );"