Class: Rails::Command::RunnerCommand
- Includes:
- EnvironmentArgument
- Defined in:
- railties/lib/rails/commands/runner/runner_command.rb
Overview
:nodoc:
Instance Method Summary collapse
Methods inherited from Base
banner, base_name, class_usage, command_name, default_command_root, desc, engine?, executable, exit_on_failure?, help, hide_command!, inherited, namespace, perform, printing_commands, usage_path
Methods included from Actions
#boot_application!, #load_environment_config!, #load_generators, #load_tasks, #require_application!, #set_application_directory!
Instance Method Details
permalink #perform(code_or_file = nil, *command_argv) ⇒ Object
[View source]
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'railties/lib/rails/commands/runner/runner_command.rb', line 22 def perform(code_or_file = nil, *command_argv) unless code_or_file help exit 1 end boot_application! Rails.application.load_runner ARGV.replace(command_argv) if code_or_file == "-" Rails.application.executor.wrap(source: "application.runner.railties") do eval($stdin.read, TOPLEVEL_BINDING, "stdin") end elsif File.exist?(code_or_file) = File. code_or_file $0 = Rails.application.executor.wrap(source: "application.runner.railties") do Kernel.load end else begin Rails.application.executor.wrap(source: "application.runner.railties") do eval(code_or_file, TOPLEVEL_BINDING, __FILE__, __LINE__) end rescue SyntaxError, NameError => e if looks_like_a_file_path?(code_or_file) error "The file #{code_or_file} could not be found, please check and try again." error "Run '#{self.class.executable} -h' for help." else error "Please specify a valid ruby command or the path of a script to run." error "Run '#{self.class.executable} -h' for help." error "" error e end exit 1 end end end |