Module: BattleroomMachinery

Includes:
Battleroom::Exceptionable, Battleroom::Printable
Defined in:
lib/battleroom/battleroom_machinery.rb

Constant Summary

Constants included from Battleroom::Printable

Battleroom::Printable::CONGRATULATIONS

Instance Method Summary collapse

Methods included from Battleroom::Exceptionable

#isolate_variable_name_from_name_error, #print_colorized_error_prompt, #print_colorized_type_error_prompt, #print_unexpected_end_of_input_explanation

Methods included from Battleroom::Printable

#battleprint, #codify, #colorized_arithmetic_operator_list, #dynamic_word_wrap, #format_class_for_output, #format_value_for_stdout_and_eval, #indent_all_lines_for_stdout, #print_congratulation, #print_menu_options, #random_congratulation

Instance Method Details

#clear_displayObject



8
9
10
# File 'lib/battleroom/battleroom_machinery.rb', line 8

def clear_display
  `reset`
end

#determine_variable_follow_up_question(eval_scope, question) ⇒ Object



17
18
19
20
21
22
23
24
25
# File 'lib/battleroom/battleroom_machinery.rb', line 17

def determine_variable_follow_up_question(eval_scope, question)
  if question.variable_value == true || question.variable_value == false
    VariableReassignmentQuestion.new(eval_scope, question)
  elsif question.variable_value.class == Symbol || question.variable_value.class == String
    nil
  else
    VariableReferenceQuestion.new(eval_scope, question)
  end
end

#naughty_input?(user_input) ⇒ Boolean

Returns:

  • (Boolean)


27
28
29
30
31
32
33
34
# File 'lib/battleroom/battleroom_machinery.rb', line 27

def naughty_input?(user_input)
  if user_input.match(/(require|`|binding)/)
    battleprint "No way no how! Try again.\n".red
    true
  else
    false
  end
end

#rotate_array(array) ⇒ Object



12
13
14
15
# File 'lib/battleroom/battleroom_machinery.rb', line 12

def rotate_array(array)
  item = array.shift
  array << item
end