module HaveAPI::Hookable::InstanceMethods

Public Instance Methods

call_class_hooks_as_for(klass, *, **) click to toggle source

Call only class hooks for different ‘klass`.

# File lib/haveapi/hooks.rb, line 246
def call_class_hooks_as_for(klass, *, **)
  Hooks.call_for(klass, *, **)
end
call_class_hooks_for(name, where = nil, args: [], kwargs: {}, initial: {}) click to toggle source

Call only class hooks.

# File lib/haveapi/hooks.rb, line 228
def call_class_hooks_for(name, where = nil, args: [], kwargs: {}, initial: {})
  Hooks.call_for(self.class, name, where, args:, kwargs:, initial:)
end
call_hooks_as_for(klass, *, **kwargs) click to toggle source

Call hooks for different ‘klass`.

# File lib/haveapi/hooks.rb, line 233
def call_hooks_as_for(klass, *, **kwargs)
  ret = call_instance_hooks_as_for(klass, *, **kwargs)

  kwargs[:initial] = ret
  call_class_hooks_as_for(klass.class, *, **kwargs)
end
call_hooks_for(*, **kwargs) click to toggle source

Call all instance and class hooks.

# File lib/haveapi/hooks.rb, line 215
def call_hooks_for(*, **kwargs)
  ret = call_instance_hooks_for(*, **kwargs)

  kwargs[:initial] = ret
  call_class_hooks_for(*, **kwargs)
end
call_instance_hooks_as_for(klass, *, **) click to toggle source

Call only instance hooks for different ‘klass`.

# File lib/haveapi/hooks.rb, line 241
def call_instance_hooks_as_for(klass, *, **)
  Hooks.call_for(klass, *, **)
end
call_instance_hooks_for(name, where = nil, args: [], kwargs: {}, initial: {}) click to toggle source

Call only instance hooks.

# File lib/haveapi/hooks.rb, line 223
def call_instance_hooks_for(name, where = nil, args: [], kwargs: {}, initial: {})
  Hooks.call_for(self, name, where, args:, kwargs:, initial:)
end
connect_hook(name, &) click to toggle source

Connect instance level hook ‘name` to `block`.

# File lib/haveapi/hooks.rb, line 251
def connect_hook(name, &)
  Hooks.connect_instance_hook(self, name, &)
end