module RGL::GraphVisitor::ClassMethods
Public Instance Methods
def_event_handlers(*events)
click to toggle source
Defines an event handler.
# File lib/rgl/graph_visitor.rb, line 101 def def_event_handlers(*events) events.each do |event| params = event.to_s.include?('edge') ? 'u, v' : 'u' handler = "@#{event}_event_handler" class_eval <<-END def handle_#{event}(#{params}) #{handler}.call(#{params}) if defined? #{handler} end def set_#{event}_event_handler(&block) #{handler} = block end END end end
Also aliased as: def_event_handler