Class: Scheherazade::Logger
- Inherits:
-
Object
- Object
- Scheherazade::Logger
- Defined in:
- lib/scheherazade/log.rb
Constant Summary collapse
- EVENTS =
[:saving, :building, :fixing_errors, :final_value, :setting_assocation, :setting, :additional_character].to_set.freeze
Instance Method Summary collapse
- #log(event, character, *rest) ⇒ Object
- #off ⇒ Object
- #on ⇒ Object
- #only(*events_and_characters) ⇒ Object
Instance Method Details
#log(event, character, *rest) ⇒ Object
19 20 21 22 23 |
# File 'lib/scheherazade/log.rb', line 19 def log(event, character, *rest) if @events && @events.include?(event) && (@characters.nil? || @characters.include?(character)) puts "#{character}: #{rest.unshift(event).join(' | ')}" end end |
#off ⇒ Object
5 6 7 |
# File 'lib/scheherazade/log.rb', line 5 def off @events = [] end |
#on ⇒ Object
9 10 11 |
# File 'lib/scheherazade/log.rb', line 9 def on only end |
#only(*events_and_characters) ⇒ Object
13 14 15 16 17 |
# File 'lib/scheherazade/log.rb', line 13 def only *events_and_characters events_and_characters = events_and_characters.to_set @events = (EVENTS & events_and_characters).presence || EVENTS @characters = (events_and_characters - @events).to_set.presence end |