# File lib/sqlite3/driver/dl/driver.rb, line 54 def prepare( db, sql, utf16=false ) handle = ::DL::PtrData.new(0) remainder = ::DL::PtrData.new(0) result = API.send( ( utf16 ? :sqlite3_prepare16 : :sqlite3_prepare ), db, sql+"\0", sql.length, handle.ref, remainder.ref ) args = utf16 ? [ utf16_length(remainder) ] : [] remainder = remainder.to_s( *args ) [ result, handle, remainder ] end