Sha256: 39327e3f8ccabe3f116670d5e07fa82e23beb704edf902bbb1ec5d55535f65a6

Contents?: true

Size: 1.03 KB

Versions: 38

Compression:

Stored size: 1.03 KB

Contents

require_relative 'constants'

module SQLite3

  class Value
    attr_reader :handle

    def initialize( db, handle )
      @driver = db.driver
      @handle = handle
    end

    def null?
      type == :null
    end

    def to_blob
      @driver.value_blob( @handle )
    end

    def length( utf16=false )
      if utf16
        @driver.value_bytes16( @handle )
      else
        @driver.value_bytes( @handle )
      end
    end

    def to_f
      @driver.value_double( @handle )
    end

    def to_i
      @driver.value_int( @handle )
    end

    def to_int64
      @driver.value_int64( @handle )
    end

    def to_s( utf16=false )
      @driver.value_text( @handle, utf16 )
    end

    def type
      case @driver.value_type( @handle )
        when Constants::ColumnType::INTEGER then :int
        when Constants::ColumnType::FLOAT   then :float
        when Constants::ColumnType::TEXT    then :text
        when Constants::ColumnType::BLOB    then :blob
        when Constants::ColumnType::NULL    then :null
      end
    end
    
  end

end

Version data entries

38 entries across 19 versions & 1 rubygems

Version Path
lg_pod_plugin-1.1.6.7 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.7 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.6 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.6 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.5 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.5 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.4 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.4 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.3 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.3 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.2 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.2 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.0 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.6.0 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.5.9 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.5.9 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.5.7 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.5.7 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.5.6 lib/sqlite3-1.5.3-x86_64-darwin/lib/sqlite3/value.rb
lg_pod_plugin-1.1.5.6 lib/sqlite3-1.5.3-arm64-darwin/lib/sqlite3/value.rb