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.



325
326
327
# File 'lib/discorb/audit_logs.rb', line 325

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.



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

def key
  @key
end

#new_value -> Object (readonly)

Returns The new value of the change.

Returns:

  • (Object)

    The new value of the change.



296
297
298
# File 'lib/discorb/audit_logs.rb', line 296

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.



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

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.



334
335
336
# File 'lib/discorb/audit_logs.rb', line 334

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.



343
344
345
# File 'lib/discorb/audit_logs.rb', line 343

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