class Antlr4::Runtime::DoubleKeyMap

Public Class Methods

new() click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 3
def initialize
  @data = {}
end

Public Instance Methods

get1(k1) click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 27
def get1(k1)
  @data[k1]
end
get2(k1, k2) click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 20
def get2(k1, k2)
  data2 = @data[k1]
  return nil if data2.nil?

  data2[k2]
end
key_set0() click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 38
def key_set0
  @data.keys
end
key_set1(k1) click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 42
def key_set1(k1)
  data2 = @data[k1]
  return nil if data2.nil?

  data2.keys
end
put(k1, k2, v) click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 7
def put(k1, k2, v)
  data2 = @data[k1]
  prev = nil
  if data2.nil?
    data2 = {}
    @data[k1] = data2
  else
    prev = data2[k2]
  end
  data2[k2] = v
  prev
end
values(k1) click to toggle source
# File lib/antlr4/runtime/double_key_map.rb, line 31
def values(k1)
  data2 = @data[k1]
  return nil if data2.nil?

  data2.values
end