module EvilEvents::Core::Events::EventExtensions::ClassSignature

@api private @since 0.2.0

Public Class Methods

included(base_class) click to toggle source

@param base_calss [Class{AbstractEvent}]

@since 0.2.0

# File lib/evil_events/core/events/event_extensions/class_signature.rb, line 11
def included(base_class)
  base_class.extend(ClassMethods)

  base_class.singleton_class.class_eval do
    attr_accessor :__creation_strategy__
  end
end

Public Instance Methods

similar_to?(another_event) click to toggle source

@param another_event [Object] @return [Boolean]

@since 0.4.0

# File lib/evil_events/core/events/event_extensions/class_signature.rb, line 24
def similar_to?(another_event)
  id       == another_event.id &&
  type     == another_event.type &&
  payload  == another_event.payload &&
  metadata == another_event.metadata
rescue NoMethodError
  false
end