class Railroader::Constant
Attributes
context[R]
file[R]
name[R]
name_array[R]
value[R]
Public Class Methods
new(name, value, context = {})
click to toggle source
# File lib/railroader/tracker/constants.rb, line 7 def initialize name, value, context = {} set_name name, context @value = value @context = context if @context if @context[:class].is_a? Railroader::Controller @context[:class] = @context[:class].name end @file = @context[:file] end end
Public Instance Methods
line()
click to toggle source
# File lib/railroader/tracker/constants.rb, line 21 def line if @value.is_a? Sexp @value.line end end
match?(name)
click to toggle source
# File lib/railroader/tracker/constants.rb, line 32 def match? name if name == @name return true elsif name.is_a? Sexp and name.node_type == :const and name.value == @name return true elsif name.is_a? Symbol and name.value == @name return true elsif name.class == Array name == @name_array or @name_array.reverse.zip(name.reverse).reduce(true) { |m, a| a[1] ? a[0] == a[1] && m : m } else false end end
set_name(name, context)
click to toggle source
# File lib/railroader/tracker/constants.rb, line 27 def set_name name, context @name = name @name_array = Constants.constant_as_array(name) end