Module: Riml::QuestionVariableExistence

Included in:
GetVariableNode
Defined in:
lib/riml/nodes.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



502
503
504
505
506
507
508
509
510
511
512
513
514
515
# File 'lib/riml/nodes.rb', line 502

def self.included(base)
  base.class_eval do
    raise "#{base} must define method 'name'" unless method_defined?(:name)
    alias name_with_question_mark name
    def name_without_question_mark
      if question_existence?
        name_with_question_mark[0...-1]
      else
        name_with_question_mark
      end
    end
    alias name name_without_question_mark
  end
end

Instance Method Details

#question_existence?Boolean

Returns:

  • (Boolean)


517
518
519
# File 'lib/riml/nodes.rb', line 517

def question_existence?
  name_with_question_mark[-1, 1] == '?'
end