Sha256: 50a9c5b53185fa688c91b8563fab2b7b3322aefaaa125a4b1255cde0bf9405dd

Contents?: true

Size: 510 Bytes

Versions: 5

Compression:

Stored size: 510 Bytes

Contents

require "fiddle"
require "fiddle/import"

module Openzip
  extend Fiddle::Importer

  def self.lib_ext
    raise NotImplementedError, "Sorry, Windows is not supported" if RUBY_PLATFORM =~ /win32/

    RUBY_PLATFORM =~ /darwin/ ? "dylib" : "so"
  end

  dlload "#{File.dirname(__FILE__)}/../source/target/release/libopenzip.#{lib_ext}"

  def self.extract(zippath, outdirpath)
    extract_rust(zippath, outdirpath) != 0
  end

  extern "char extract_rust(char*, char*)"
  private_class_method :extract_rust
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
openzip-1.0.4 lib/openzip.rb
openzip-1.0.3 lib/openzip.rb
openzip-1.0.2 lib/openzip.rb
openzip-1.0.1 lib/openzip.rb
openzip-1.0.0 lib/openzip.rb