class Ouidb::Manufacturer
Attributes
name[R]
ranges[R]
Public Class Methods
[](name)
click to toggle source
# File lib/ouidb/manufacturer.rb, line 6 def self.[](name) @all ||= {} @all[name] ||= new(name) end
as_json()
click to toggle source
# File lib/ouidb/manufacturer.rb, line 29 def self.as_json Hash[@all.map { |name, man| [name, man.ranges.map(&:as_json)] }] end
clear!()
click to toggle source
# File lib/ouidb/manufacturer.rb, line 15 def self.clear! @all.clear if @all self end
load_file!(path)
click to toggle source
# File lib/ouidb/manufacturer.rb, line 20 def self.load_file!(path) clear! JSON.parse(path.read).each do |name, ranges| man = self[name] ranges.each { |range| man.ranges << MacRange.new_by_number(range, man) } end self end
new(name)
click to toggle source
# File lib/ouidb/manufacturer.rb, line 35 def initialize(name) @name = name.dup.freeze @ranges = Set.new end
to_json()
click to toggle source
# File lib/ouidb/manufacturer.rb, line 11 def self.to_json JSON.generate(as_json) end
Public Instance Methods
inspect()
click to toggle source
# File lib/ouidb/manufacturer.rb, line 44 def inspect "#<Manufacturer ‘#{name}’>" end
to_s()
click to toggle source
# File lib/ouidb/manufacturer.rb, line 40 def to_s name end