Module: ActiveMatrix::Extensions
- Included in:
- AccountDataCache, Api, Bot::Base, Client, Event, Room, StateEventCache, User
- Defined in:
- lib/active_matrix/extensions.rb
Instance Method Summary collapse
Instance Method Details
#events(*symbols) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/active_matrix/extensions.rb', line 5 def events(*symbols) module_name = "#{name}Events" initializers = [] readers = [] methods = [] symbols.each do |sym| name = sym.to_s initializers << " @on_#{name} = ::ActiveMatrix::EventHandlerArray.new " readers << ":on_#{name}" methods << " def fire_#{name}(ev, filter = nil) @on_#{name}.fire(ev, filter) when_#{name}(ev) if !ev.handled? end def when_#{name}(ev); end " end class_eval " module #{module_name} attr_reader #{readers.join ', '} def event_initialize #{initializers.join} end #{methods.join} end include #{module_name} ", __FILE__, __LINE__ - 12 end |
#ignore_inspect(*symbols) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/active_matrix/extensions.rb', line 44 def ignore_inspect(*symbols) require 'pp' class_eval %* def pretty_print_instance_variables instance_variables .reject { |f| %i[#{symbols.map { |s| "@#{s}" }.join ' '}].include? f } .sort end def pretty_print(pp) return pp.pp(self) if respond_to? :mocha_inspect pp.pp_object(self) end alias inspect pretty_print_inspect *, __FILE__, __LINE__ - 14 end |