Sha256: fa29375b8988ef16dee133f022fed9e1dfd471175f034ce2640ad4ffbd9cef9f

Contents?: true

Size: 1.24 KB

Versions: 12

Compression:

Stored size: 1.24 KB

Contents

java_import 'gnu.trove.TIntCollection'
java_import 'gnu.trove.set.hash.TIntHashSet'
java_import 'gnu.trove.set.hash.TLongHashSet'
java_import 'gnu.trove.map.hash.TIntObjectHashMap'
java_import 'gnu.trove.map.hash.TLongObjectHashMap'

module TMap
  def each
    it = iterator
    while it.has_next
      it.advance
      yield it.key, it.value
    end
  end
end

module TSet
  def each
    it = iterator
    while it.has_next
      yield it.next
    end
  end

  def inspect
    if size > 1000
      "#{self.class.name}{too large to display,l=#{size}}"
    else
      to_string
    end
  end
end

class TLongObjectHashMap
  include TMap
  alias :has_key? :containsKey
  alias :[] :get
  alias :[]= :put
  alias :length :size
  alias :delete :remove
end

class TIntObjectHashMap
  include TMap
  alias :has_key? :containsKey
  alias :[] :get
  alias :[]= :put
  alias :length :size
  alias :delete :remove
end

class TLongHashSet
  include TSet
  alias :include? :contains
  alias :length :size
  alias :delete :remove
end

class TIntHashSet
  include TSet
  alias :include? :contains
  alias :length :size
  alias :delete :remove

  java_alias :concat_ints, :addAll, [TIntCollection.java_class]

  def concat(list)
    return if !list
    concat_ints list
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
liquid-ext-3.4.1 lib/liquid/trove.rb
liquid-ext-3.4.0 lib/liquid/trove.rb
liquid-ext-3.3.10 lib/liquid/trove.rb
liquid-ext-3.3.9 lib/liquid/trove.rb
liquid-ext-3.3.8 lib/liquid/trove.rb
liquid-ext-3.3.7 lib/liquid/trove.rb
liquid-ext-3.3.6 lib/liquid/trove.rb
liquid-ext-3.3.5 lib/liquid/trove.rb
liquid-ext-3.3.4 lib/liquid/trove.rb
liquid-ext-3.3.3 lib/liquid/trove.rb
liquid-ext-3.3.2 lib/liquid/trove.rb
liquid-ext-3.3.0 lib/liquid/trove.rb