htslib 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +25 -16
- data/lib/hts/bam.rb +38 -32
- data/lib/hts/bam/cigar.rb +3 -3
- data/lib/hts/bam/flag.rb +91 -0
- data/lib/hts/bam/header.rb +2 -2
- data/lib/hts/bam/{alignment.rb → record.rb} +49 -43
- data/lib/hts/fai.rb +8 -8
- data/lib/hts/libhts.rb +141 -0
- data/lib/hts/{ffi → libhts}/bgzf.rb +1 -1
- data/lib/hts/{ffi → libhts}/constants.rb +114 -43
- data/lib/hts/{ffi → libhts}/faidx.rb +1 -1
- data/lib/hts/{ffi → libhts}/hfile.rb +1 -1
- data/lib/hts/{ffi → libhts}/hts.rb +7 -1
- data/lib/hts/{ffi → libhts}/kfunc.rb +1 -1
- data/lib/hts/{ffi → libhts}/sam.rb +25 -25
- data/lib/hts/{ffi → libhts}/tbx.rb +1 -1
- data/lib/hts/{ffi → libhts}/vcf.rb +1 -1
- data/lib/hts/vcf.rb +17 -17
- data/lib/hts/vcf/format.rb +24 -0
- data/lib/hts/vcf/header.rb +2 -2
- data/lib/hts/vcf/info.rb +24 -0
- data/lib/hts/vcf/{variant.rb → record.rb} +2 -2
- data/lib/hts/version.rb +1 -1
- data/lib/htslib.rb +16 -19
- metadata +20 -17
- data/lib/hts/ffi.rb +0 -85
| @@ -1,11 +1,17 @@ | |
| 1 1 | 
             
            # frozen_string_literal: true
         | 
| 2 2 |  | 
| 3 3 | 
             
            module HTS
         | 
| 4 | 
            -
              module  | 
| 4 | 
            +
              module LibHTS
         | 
| 5 5 | 
             
                # hts_expand
         | 
| 6 6 | 
             
                # hts_expand3
         | 
| 7 7 | 
             
                # hts_resize
         | 
| 8 8 |  | 
| 9 | 
            +
                # hts_log.h
         | 
| 10 | 
            +
                attach_function \
         | 
| 11 | 
            +
                  :hts_get_log_level,
         | 
| 12 | 
            +
                  [],
         | 
| 13 | 
            +
                  HtsLogLevel
         | 
| 14 | 
            +
             | 
| 9 15 | 
             
                attach_function \
         | 
| 10 16 | 
             
                  :hts_lib_shutdown,
         | 
| 11 17 | 
             
                  [],
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            # frozen_string_literal: true
         | 
| 2 2 |  | 
| 3 3 | 
             
            module HTS
         | 
| 4 | 
            -
              module  | 
| 4 | 
            +
              module LibHTS
         | 
| 5 5 | 
             
                # constants
         | 
| 6 6 | 
             
                BAM_CMATCH     = 0
         | 
| 7 7 | 
             
                BAM_CINS       = 1
         | 
| @@ -14,8 +14,8 @@ module HTS | |
| 14 14 | 
             
                BAM_CDIFF      = 8
         | 
| 15 15 | 
             
                BAM_CBACK      = 9
         | 
| 16 16 |  | 
| 17 | 
            -
                BAM_CIGAR_STR =  | 
| 18 | 
            -
                BAM_CIGAR_STR_PADDED =  | 
| 17 | 
            +
                BAM_CIGAR_STR = "MIDNSHP=XB"
         | 
| 18 | 
            +
                BAM_CIGAR_STR_PADDED = "MIDNSHP=XB??????"
         | 
| 19 19 | 
             
                BAM_CIGAR_SHIFT = 4
         | 
| 20 20 | 
             
                BAM_CIGAR_MASK  = 0xf
         | 
| 21 21 | 
             
                BAM_CIGAR_TYPE  = 0x3C1A7
         | 
| @@ -441,7 +441,7 @@ module HTS | |
| 441 441 | 
             
                # Get the next read from a SAM/BAM/CRAM iterator
         | 
| 442 442 | 
             
                def self.sam_itr_next(htsfp, itr, r)
         | 
| 443 443 | 
             
                  # FIXME: check if htsfp is compressed BGZF
         | 
| 444 | 
            -
                  hts_log_error( | 
| 444 | 
            +
                  hts_log_error("Null iterator") if itr.null?
         | 
| 445 445 | 
             
                  # FIXME: check multi
         | 
| 446 446 | 
             
                  hts_itr_next(htsfp[:fp][:bgzf], itr, r, htsfp)
         | 
| 447 447 | 
             
                end
         | 
| @@ -584,52 +584,52 @@ module HTS | |
| 584 584 | 
             
                attach_function \
         | 
| 585 585 | 
             
                  :bam_plp_init,
         | 
| 586 586 | 
             
                  %i[bam_plp_auto_f pointer],
         | 
| 587 | 
            -
                   | 
| 587 | 
            +
                  :bam_plp
         | 
| 588 588 |  | 
| 589 589 | 
             
                attach_function \
         | 
| 590 590 | 
             
                  :bam_plp_destroy,
         | 
| 591 | 
            -
                  [ | 
| 591 | 
            +
                  [:bam_plp],
         | 
| 592 592 | 
             
                  :void
         | 
| 593 593 |  | 
| 594 594 | 
             
                attach_function \
         | 
| 595 595 | 
             
                  :bam_plp_push,
         | 
| 596 | 
            -
                  [ | 
| 596 | 
            +
                  [:bam_plp, Bam1],
         | 
| 597 597 | 
             
                  :int
         | 
| 598 598 |  | 
| 599 599 | 
             
                attach_function \
         | 
| 600 600 | 
             
                  :bam_plp_next,
         | 
| 601 | 
            -
                  [ | 
| 602 | 
            -
                   | 
| 601 | 
            +
                  %i[bam_plp pointer pointer pointer],
         | 
| 602 | 
            +
                  BamPileup1.by_ref
         | 
| 603 603 |  | 
| 604 604 | 
             
                attach_function \
         | 
| 605 605 | 
             
                  :bam_plp_auto,
         | 
| 606 | 
            -
                  [ | 
| 607 | 
            -
                   | 
| 606 | 
            +
                  %i[bam_plp pointer pointer pointer],
         | 
| 607 | 
            +
                  BamPileup1.by_ref
         | 
| 608 608 |  | 
| 609 609 | 
             
                attach_function \
         | 
| 610 610 | 
             
                  :bam_plp64_next,
         | 
| 611 | 
            -
                  [ | 
| 612 | 
            -
                   | 
| 611 | 
            +
                  %i[bam_plp pointer pointer pointer],
         | 
| 612 | 
            +
                  BamPileup1.by_ref
         | 
| 613 613 |  | 
| 614 614 | 
             
                attach_function \
         | 
| 615 615 | 
             
                  :bam_plp64_auto,
         | 
| 616 | 
            -
                  [ | 
| 617 | 
            -
                   | 
| 616 | 
            +
                  %i[bam_plp pointer pointer pointer],
         | 
| 617 | 
            +
                  BamPileup1.by_ref
         | 
| 618 618 |  | 
| 619 619 | 
             
                attach_function \
         | 
| 620 620 | 
             
                  :bam_plp_set_maxcnt,
         | 
| 621 | 
            -
                  [ | 
| 621 | 
            +
                  %i[bam_plp int],
         | 
| 622 622 | 
             
                  :void
         | 
| 623 623 |  | 
| 624 624 | 
             
                attach_function \
         | 
| 625 625 | 
             
                  :bam_plp_reset,
         | 
| 626 | 
            -
                  [ | 
| 626 | 
            +
                  [:bam_plp],
         | 
| 627 627 | 
             
                  :void
         | 
| 628 628 |  | 
| 629 629 | 
             
                # sets a callback to initialise any per-pileup1_t fields.
         | 
| 630 630 | 
             
                attach_function \
         | 
| 631 631 | 
             
                  :bam_plp_insertion,
         | 
| 632 | 
            -
                  [ | 
| 632 | 
            +
                  [BamPileup1, KString, :pointer],
         | 
| 633 633 | 
             
                  :int
         | 
| 634 634 |  | 
| 635 635 | 
             
                # sets a callback to initialise any per-pileup1_t fields.
         | 
| @@ -643,36 +643,36 @@ module HTS | |
| 643 643 | 
             
                attach_function \
         | 
| 644 644 | 
             
                  :bam_mplp_init,
         | 
| 645 645 | 
             
                  %i[int bam_plp_auto_f pointer],
         | 
| 646 | 
            -
                   | 
| 646 | 
            +
                  :bam_mplp
         | 
| 647 647 |  | 
| 648 648 | 
             
                attach_function \
         | 
| 649 649 | 
             
                  :bam_mplp_init_overlaps,
         | 
| 650 | 
            -
                  [ | 
| 650 | 
            +
                  [:bam_mplp],
         | 
| 651 651 | 
             
                  :int
         | 
| 652 652 |  | 
| 653 653 | 
             
                attach_function \
         | 
| 654 654 | 
             
                  :bam_mplp_destroy,
         | 
| 655 | 
            -
                  [ | 
| 655 | 
            +
                  [:bam_mplp],
         | 
| 656 656 | 
             
                  :void
         | 
| 657 657 |  | 
| 658 658 | 
             
                attach_function \
         | 
| 659 659 | 
             
                  :bam_mplp_set_maxcnt,
         | 
| 660 | 
            -
                  [ | 
| 660 | 
            +
                  %i[bam_mplp int],
         | 
| 661 661 | 
             
                  :void
         | 
| 662 662 |  | 
| 663 663 | 
             
                attach_function \
         | 
| 664 664 | 
             
                  :bam_mplp_auto,
         | 
| 665 | 
            -
                  [ | 
| 665 | 
            +
                  %i[bam_mplp pointer pointer pointer pointer], # BamPileup1T
         | 
| 666 666 | 
             
                  :int
         | 
| 667 667 |  | 
| 668 668 | 
             
                attach_function \
         | 
| 669 669 | 
             
                  :bam_mplp64_auto,
         | 
| 670 | 
            -
                  [ | 
| 670 | 
            +
                  %i[bam_mplp pointer pointer pointer pointer], # BamPileup1T
         | 
| 671 671 | 
             
                  :int
         | 
| 672 672 |  | 
| 673 673 | 
             
                attach_function \
         | 
| 674 674 | 
             
                  :bam_mplp_reset,
         | 
| 675 | 
            -
                  [ | 
| 675 | 
            +
                  [:bam_mplp],
         | 
| 676 676 | 
             
                  :void
         | 
| 677 677 |  | 
| 678 678 | 
             
                # bam_mplp_constructor
         | 
    
        data/lib/hts/vcf.rb
    CHANGED
    
    | @@ -3,40 +3,40 @@ | |
| 3 3 | 
             
            # Based on hts-python
         | 
| 4 4 | 
             
            # https://github.com/quinlan-lab/hts-python
         | 
| 5 5 |  | 
| 6 | 
            -
            require_relative  | 
| 7 | 
            -
            require_relative  | 
| 6 | 
            +
            require_relative "vcf/header"
         | 
| 7 | 
            +
            require_relative "vcf/record"
         | 
| 8 8 |  | 
| 9 9 | 
             
            module HTS
         | 
| 10 10 | 
             
              class VCF
         | 
| 11 11 | 
             
                include Enumerable
         | 
| 12 | 
            -
                attr_reader :file_path, :mode, : | 
| 12 | 
            +
                attr_reader :file_path, :mode, :htf, :header
         | 
| 13 13 |  | 
| 14 | 
            -
                def initialize(file_path, mode =  | 
| 15 | 
            -
                   | 
| 16 | 
            -
                   | 
| 14 | 
            +
                def initialize(file_path, mode = "r")
         | 
| 15 | 
            +
                  file_path = File.expand_path(file_path)
         | 
| 16 | 
            +
                  raise("No such VCF/BCF file - #{file_path}") unless File.exist?(file_path)
         | 
| 17 17 |  | 
| 18 | 
            -
                  @ | 
| 19 | 
            -
                  @ | 
| 18 | 
            +
                  @file_path = file_path
         | 
| 19 | 
            +
                  @mode      = mode
         | 
| 20 | 
            +
                  @htf       = LibHTS.hts_open(file_path, mode)
         | 
| 21 | 
            +
                  @header = VCF::Header.new(LibHTS.bcf_hdr_read(htf))
         | 
| 20 22 |  | 
| 21 | 
            -
                   | 
| 22 | 
            -
             | 
| 23 | 
            -
                  @c = FFI.bcf_init
         | 
| 23 | 
            +
                  # FIXME: should be defined here?
         | 
| 24 | 
            +
                  @c = LibHTS.bcf_init
         | 
| 24 25 | 
             
                end
         | 
| 25 26 |  | 
| 26 27 | 
             
                # def inspect; end
         | 
| 27 28 |  | 
| 28 29 | 
             
                def each(&block)
         | 
| 29 | 
            -
                   | 
| 30 | 
            +
                  while LibHTS.bcf_read(htf, header.h, @c) != -1
         | 
| 31 | 
            +
                    record = Record.new(@c, self)
         | 
| 32 | 
            +
                    block.call(record)
         | 
| 33 | 
            +
                  end
         | 
| 30 34 | 
             
                end
         | 
| 31 35 |  | 
| 32 36 | 
             
                def seq(tid); end
         | 
| 33 37 |  | 
| 34 38 | 
             
                def n_samples
         | 
| 35 | 
            -
                   | 
| 39 | 
            +
                  LibHTS.bcf_hdr_nsamples(header.h)
         | 
| 36 40 | 
             
                end
         | 
| 37 41 | 
             
              end
         | 
| 38 | 
            -
             | 
| 39 | 
            -
              class Format
         | 
| 40 | 
            -
                def initialize; end
         | 
| 41 | 
            -
              end
         | 
| 42 42 | 
             
            end
         | 
| @@ -0,0 +1,24 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # https://github.com/brentp/hts-nim/blob/master/src/hts/vcf.nim
         | 
| 4 | 
            +
            # This is a port from Nim.
         | 
| 5 | 
            +
            # TODO: Make it more like Ruby.
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            module HTS
         | 
| 8 | 
            +
              class VCF
         | 
| 9 | 
            +
                class Format
         | 
| 10 | 
            +
                  def initialize; end
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                  def delete; end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                  def get; end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                  def set; end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                  # def fields # iterator
         | 
| 19 | 
            +
                  # end
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                  def genotypes; end
         | 
| 22 | 
            +
                end
         | 
| 23 | 
            +
              end
         | 
| 24 | 
            +
            end
         | 
    
        data/lib/hts/vcf/header.rb
    CHANGED
    
    | @@ -12,12 +12,12 @@ module HTS | |
| 12 12 | 
             
                  # FIXME: better name?
         | 
| 13 13 | 
             
                  def seqs
         | 
| 14 14 | 
             
                    Array.new(@h[:n_targets]) do |i|
         | 
| 15 | 
            -
                       | 
| 15 | 
            +
                      LibHTS.sam_hdr_tid2name(@h, i)
         | 
| 16 16 | 
             
                    end
         | 
| 17 17 | 
             
                  end
         | 
| 18 18 |  | 
| 19 19 | 
             
                  def text
         | 
| 20 | 
            -
                     | 
| 20 | 
            +
                    LibHTS.sam_hdr_str(@h)
         | 
| 21 21 | 
             
                  end
         | 
| 22 22 | 
             
                end
         | 
| 23 23 | 
             
              end
         | 
    
        data/lib/hts/vcf/info.rb
    ADDED
    
    | @@ -0,0 +1,24 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # https://github.com/brentp/hts-nim/blob/master/src/hts/vcf.nim
         | 
| 4 | 
            +
            # This is a port from Nim.
         | 
| 5 | 
            +
            # TODO: Make it more like Ruby.
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            module HTS
         | 
| 8 | 
            +
              class VCF
         | 
| 9 | 
            +
                class Info
         | 
| 10 | 
            +
                  def initialize; end
         | 
| 11 | 
            +
             | 
| 12 | 
            +
                  def has_flag?; end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
                  def get; end
         | 
| 15 | 
            +
             | 
| 16 | 
            +
                  def set; end
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                  def delete; end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
                  # def fields # iterator
         | 
| 21 | 
            +
                  # end
         | 
| 22 | 
            +
                end
         | 
| 23 | 
            +
              end
         | 
| 24 | 
            +
            end
         | 
    
        data/lib/hts/version.rb
    CHANGED
    
    
    
        data/lib/htslib.rb
    CHANGED
    
    | @@ -1,27 +1,27 @@ | |
| 1 1 | 
             
            # frozen_string_literal: true
         | 
| 2 2 |  | 
| 3 | 
            -
            require  | 
| 3 | 
            +
            require "ffi"
         | 
| 4 4 |  | 
| 5 | 
            -
            require  | 
| 5 | 
            +
            require "hts/version"
         | 
| 6 6 |  | 
| 7 7 | 
             
            module HTS
         | 
| 8 8 | 
             
              class Error < StandardError; end
         | 
| 9 9 |  | 
| 10 10 | 
             
              class << self
         | 
| 11 | 
            -
                attr_accessor : | 
| 11 | 
            +
                attr_accessor :lib_path
         | 
| 12 12 |  | 
| 13 13 | 
             
                def search_htslib(name = nil)
         | 
| 14 | 
            -
                  name ||= "libhts.#{ | 
| 15 | 
            -
                  lib_path = if ENV[ | 
| 16 | 
            -
                               File.expand_path(name, ENV[ | 
| 14 | 
            +
                  name ||= "libhts.#{FFI::Platform::LIBSUFFIX}"
         | 
| 15 | 
            +
                  lib_path = if ENV["HTSLIBDIR"]
         | 
| 16 | 
            +
                               File.expand_path(name, ENV["HTSLIBDIR"])
         | 
| 17 17 | 
             
                             else
         | 
| 18 18 | 
             
                               File.expand_path("../vendor/#{name}", __dir__)
         | 
| 19 19 | 
             
                             end
         | 
| 20 20 | 
             
                  return lib_path if File.exist?(lib_path)
         | 
| 21 21 |  | 
| 22 22 | 
             
                  begin
         | 
| 23 | 
            -
                    require  | 
| 24 | 
            -
                    lib_dir = PKGConfig.variable( | 
| 23 | 
            +
                    require "pkg-config"
         | 
| 24 | 
            +
                    lib_dir = PKGConfig.variable("htslib", "libdir")
         | 
| 25 25 | 
             
                    lib_path = File.expand_path(name, lib_dir)
         | 
| 26 26 | 
             
                  rescue PackageConfig::NotFoundError
         | 
| 27 27 | 
             
                    warn "htslib.pc was not found in the pkg-config search path."
         | 
| @@ -32,17 +32,14 @@ module HTS | |
| 32 32 | 
             
                end
         | 
| 33 33 | 
             
              end
         | 
| 34 34 |  | 
| 35 | 
            -
              self. | 
| 35 | 
            +
              self.lib_path = search_htslib
         | 
| 36 36 |  | 
| 37 | 
            -
              # You can change the path of the shared library with `HTS. | 
| 38 | 
            -
              # before calling the  | 
| 39 | 
            -
              autoload : | 
| 37 | 
            +
              # You can change the path of the shared library with `HTS.lib_path=`
         | 
| 38 | 
            +
              # before calling the LibHTS module.
         | 
| 39 | 
            +
              autoload :LibHTS, "hts/libhts"
         | 
| 40 40 | 
             
            end
         | 
| 41 41 |  | 
| 42 | 
            -
             | 
| 43 | 
            -
             | 
| 44 | 
            -
             | 
| 45 | 
            -
            require_relative  | 
| 46 | 
            -
            require_relative 'hts/fai'
         | 
| 47 | 
            -
            require_relative 'hts/tbx'
         | 
| 48 | 
            -
            require_relative 'hts/vcf'
         | 
| 42 | 
            +
            require_relative "hts/bam"
         | 
| 43 | 
            +
            require_relative "hts/fai"
         | 
| 44 | 
            +
            require_relative "hts/tbx"
         | 
| 45 | 
            +
            require_relative "hts/vcf"
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: htslib
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - kojix2
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2021- | 
| 11 | 
            +
            date: 2021-07-08 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: ffi
         | 
| @@ -53,7 +53,7 @@ dependencies: | |
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 54 | 
             
                    version: '0'
         | 
| 55 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 | 
            -
              name:  | 
| 56 | 
            +
              name: irb
         | 
| 57 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 58 | 
             
                requirements:
         | 
| 59 59 | 
             
                - - ">="
         | 
| @@ -67,7 +67,7 @@ dependencies: | |
| 67 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 68 | 
             
                    version: '0'
         | 
| 69 69 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 | 
            -
              name:  | 
| 70 | 
            +
              name: minitest
         | 
| 71 71 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 72 72 | 
             
                requirements:
         | 
| 73 73 | 
             
                - - ">="
         | 
| @@ -81,7 +81,7 @@ dependencies: | |
| 81 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 82 82 | 
             
                    version: '0'
         | 
| 83 83 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 84 | 
            -
              name:  | 
| 84 | 
            +
              name: rake
         | 
| 85 85 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 86 86 | 
             
                requirements:
         | 
| 87 87 | 
             
                - - ">="
         | 
| @@ -118,24 +118,27 @@ files: | |
| 118 118 | 
             
            - LICENSE.txt
         | 
| 119 119 | 
             
            - README.md
         | 
| 120 120 | 
             
            - lib/hts/bam.rb
         | 
| 121 | 
            -
            - lib/hts/bam/alignment.rb
         | 
| 122 121 | 
             
            - lib/hts/bam/cigar.rb
         | 
| 122 | 
            +
            - lib/hts/bam/flag.rb
         | 
| 123 123 | 
             
            - lib/hts/bam/header.rb
         | 
| 124 | 
            +
            - lib/hts/bam/record.rb
         | 
| 124 125 | 
             
            - lib/hts/fai.rb
         | 
| 125 | 
            -
            - lib/hts/ | 
| 126 | 
            -
            - lib/hts/ | 
| 127 | 
            -
            - lib/hts/ | 
| 128 | 
            -
            - lib/hts/ | 
| 129 | 
            -
            - lib/hts/ | 
| 130 | 
            -
            - lib/hts/ | 
| 131 | 
            -
            - lib/hts/ | 
| 132 | 
            -
            - lib/hts/ | 
| 133 | 
            -
            - lib/hts/ | 
| 134 | 
            -
            - lib/hts/ | 
| 126 | 
            +
            - lib/hts/libhts.rb
         | 
| 127 | 
            +
            - lib/hts/libhts/bgzf.rb
         | 
| 128 | 
            +
            - lib/hts/libhts/constants.rb
         | 
| 129 | 
            +
            - lib/hts/libhts/faidx.rb
         | 
| 130 | 
            +
            - lib/hts/libhts/hfile.rb
         | 
| 131 | 
            +
            - lib/hts/libhts/hts.rb
         | 
| 132 | 
            +
            - lib/hts/libhts/kfunc.rb
         | 
| 133 | 
            +
            - lib/hts/libhts/sam.rb
         | 
| 134 | 
            +
            - lib/hts/libhts/tbx.rb
         | 
| 135 | 
            +
            - lib/hts/libhts/vcf.rb
         | 
| 135 136 | 
             
            - lib/hts/tbx.rb
         | 
| 136 137 | 
             
            - lib/hts/vcf.rb
         | 
| 138 | 
            +
            - lib/hts/vcf/format.rb
         | 
| 137 139 | 
             
            - lib/hts/vcf/header.rb
         | 
| 138 | 
            -
            - lib/hts/vcf/ | 
| 140 | 
            +
            - lib/hts/vcf/info.rb
         | 
| 141 | 
            +
            - lib/hts/vcf/record.rb
         | 
| 139 142 | 
             
            - lib/hts/version.rb
         | 
| 140 143 | 
             
            - lib/htslib.rb
         | 
| 141 144 | 
             
            homepage: https://github.com/kojix2/ruby-htslib
         |