class Vidibus::Sysinfo::Result

Public Class Methods

new(options) click to toggle source
# File lib/vidibus/sysinfo/result.rb, line 6
def initialize(options)
  attrs.each do |attr|
    instance_variable_set("@#{attr}", options[attr])
  end
end

Private Class Methods

attrs(*args) click to toggle source
# File lib/vidibus/sysinfo/result.rb, line 33
def attrs(*args)
  self.send(:attr, *args)
  @attrs = args
end

Public Instance Methods

[](key) click to toggle source
# File lib/vidibus/sysinfo/result.rb, line 12
def [](key)
  to_h[key]
end
to_h() click to toggle source
# File lib/vidibus/sysinfo/result.rb, line 16
def to_h
  @hash ||= begin
    {}.tap do |hash|
      attrs.each do |attr|
        hash[attr] = send(attr)
      end
    end
  end
end

Private Instance Methods

attrs() click to toggle source
# File lib/vidibus/sysinfo/result.rb, line 28
def attrs
  self.class.instance_variable_get('@attrs')
end