diff --git a/lib/DB/SQLite/Native.pm6 b/lib/DB/SQLite/Native.pm6 index 909fc5c..151ebbd 100644 --- a/lib/DB/SQLite/Native.pm6 +++ b/lib/DB/SQLite/Native.pm6 @@ -73,6 +73,11 @@ class DB::SQLite::Native::Statement is repr('CPointer') $.bind-int64($n,$v) == SQLITE_OK or $.check } + multi method bind(Int $n, IntStr:D $v --> Nil) + { + $.bind-int64($n,$v) == SQLITE_OK or $.check + } + multi method bind(Int $n, Any:U --> Nil) { $.bind-null($n) == SQLITE_OK or $.check diff --git a/t/08-intstr.t b/t/08-intstr.t new file mode 100644 index 0000000..97f3192 --- /dev/null +++ b/t/08-intstr.t @@ -0,0 +1,19 @@ +use Test; +use Test::When ; + +use DB::SQLite; + +plan 4; + +isa-ok my $db = DB::SQLite.new, DB::SQLite, 'Create object'; + +my IntStr $foo = <42>; + +is $db.query('select 1 where ? = ?', $foo, $foo).value, 1, + 'Pass in IntStr value'; + +lives-ok { $db.finish }, 'Finish object'; + +is DB::SQLite::Native.memory-used, 0, 'All handles deleted'; + +done-testing;