Module: Vault::Response

Defined in:
lib/vault/response.rb

Class Method Summary collapse

Class Method Details

.new(*members) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/vault/response.rb', line 3

def self.new(*members)
  Struct.new(*members) do
    def self.decode(object)
      self.new(*object.values_at(*self.members))
    end

    def to_s
      "#<#{self.class.name}>"
    end

    def inspect
      data = self.members.map { |m| "@#{m}=#{self.public_send(m).inspect}" }.join(", ")
      "#<#{self.class.name} #{data}>"
    end
  end
end