class Origen::Mode
A class to handle the Origen
execution mode
Constants
- MODES
Public Class Methods
Source
# File lib/origen/mode.rb, line 6 def initialize(_options = {}) @current_mode = :production end
Public Instance Methods
Source
# File lib/origen/mode.rb, line 57 def ==(val) if val.is_a?(Symbol) @current_mode == val else super end end
Calls superclass method
Source
# File lib/origen/mode.rb, line 45 def debug? !production? end
Any mode which is not production will return true here, if you want to test for only debug mode use Origen.mode
== :debug
Source
# File lib/origen/mode.rb, line 27 def find_mode(name) name = name.to_s.downcase.to_sym if MODES.include?(name) name else mode = MODES.find do |m| m.to_s =~ /^#{name}/ end if mode mode else fail "Invalid mode requested, must be one of: #{MODES}" end end end
Source
# File lib/origen/mode.rb, line 11 def freeze @frozen = true end
When called any future changes to the mode will be ignored
Source
# File lib/origen/mode.rb, line 49 def production? @current_mode == :production end
Source
# File lib/origen/mode.rb, line 19 def set(val) @current_mode = find_mode(val) unless @frozen end
Source
# File lib/origen/mode.rb, line 53 def simulation? @current_mode == :simulation end
Source
# File lib/origen/mode.rb, line 23 def to_s @current_mode ? @current_mode.to_s : '' end