module Playwright::EventEmitter
A subset of Events/EventEmitter in Node.js
Public Instance Methods
emit(event, *args)
click to toggle source
@param event [String] @returns [Boolean]
# File lib/playwright/event_emitter.rb, line 38 def emit(event, *args) handled = false (@__event_emitter ||= {})[event.to_s]&.each do |callback| callback.call(*args) handled = true end handled end
off(event, callback)
click to toggle source
@param event [String] @param callback [Proc]
# File lib/playwright/event_emitter.rb, line 72 def off(event, callback) raise ArgumentError.new('callback must not be nil') if callback.nil? cb = (@__event_emitter_callback ||= {})["#{event}/#{callback.object_id}"] if cb (@__event_emitter ||= {})[event.to_s]&.delete(cb) end self end
on(event, callback)
click to toggle source
@param event [String] @param callback [Proc]
# File lib/playwright/event_emitter.rb, line 53 def on(event, callback) raise ArgumentError.new('callback must not be nil') if callback.nil? cb = (@__event_emitter_callback ||= {})["#{event}/#{callback.object_id}"] ||= EventEmitterCallback.new(callback) ((@__event_emitter ||= {})[event.to_s] ||= Set.new) << cb self end
once(event, callback)
click to toggle source
@param event [String] @param callback [Proc]
# File lib/playwright/event_emitter.rb, line 62 def once(event, callback) raise ArgumentError.new('callback must not be nil') if callback.nil? cb = (@__event_emitter_callback ||= {})["#{event}/once/#{callback.object_id}"] ||= EventEmitterOnceCallback.new(callback) ((@__event_emitter ||= {})[event.to_s] ||= Set.new) << cb self end
Private Instance Methods
listener_count(event)
click to toggle source
# File lib/playwright/event_emitter.rb, line 47 def listener_count(event) ((@__event_emitter ||= {})[event.to_s] ||= Set.new).count end