Class: Discorb::AuditLog::Entry::Change

Inherits:
DiscordModel show all
Defined in:
lib/discorb/audit_logs.rb

Overview

Note:

This instance will try to call a method of #new_value if the method wasn't defined.

Represents a change in an audit log entry.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from DiscordModel

#==, #eql?

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method) -> Object

Send a message to the new value.



322
323
324
# File 'lib/discorb/audit_logs.rb', line 322

def method_missing(method, ...)
  @new_value.__send__(method, ...)
end

Instance Attribute Details

#key -> Symbol (readonly)

Returns The key of the change.

Returns:

  • (Symbol)

    The key of the change.



289
290
291
# File 'lib/discorb/audit_logs.rb', line 289

def key
  @key
end

#new_value -> Object (readonly)

Returns The new value of the change.

Returns:

  • (Object)

    The new value of the change.



293
294
295
# File 'lib/discorb/audit_logs.rb', line 293

def new_value
  @new_value
end

#old_value -> Object (readonly)

Returns The old value of the change.

Returns:

  • (Object)

    The old value of the change.



291
292
293
# File 'lib/discorb/audit_logs.rb', line 291

def old_value
  @old_value
end

Instance Method Details

#inspect -> String

Format the change into a string.

Returns:

  • (String)

    The string representation of the change.



331
332
333
# File 'lib/discorb/audit_logs.rb', line 331

def inspect
  "#<#{self.class} #{@key.inspect} #{@old_value.inspect} -> #{@new_value.inspect}>"
end

#respond_to_missing?(method, include_private = false) -> Boolean

Whether the change responds to the given method.

Returns:

  • (Boolean)

    Whether the change responds to the given method.



340
341
342
# File 'lib/discorb/audit_logs.rb', line 340

def respond_to_missing?(method, include_private = false)
  @new_value.respond_to?(method, include_private)
end