Module: RubyModKit
- Extended by:
- CoreExt::Eval, CoreExt::Load
- Defined in:
- lib/ruby_mod_kit.rb,
lib/ruby_mod_kit/cli.rb,
lib/ruby_mod_kit/memo.rb,
lib/ruby_mod_kit/node.rb,
lib/ruby_mod_kit/config.rb,
lib/ruby_mod_kit/feature.rb,
lib/ruby_mod_kit/mission.rb,
lib/ruby_mod_kit/version.rb,
lib/ruby_mod_kit/memo_pad.rb,
lib/ruby_mod_kit/corrector.rb,
lib/ruby_mod_kit/node/wrap.rb,
lib/ruby_mod_kit/generation.rb,
lib/ruby_mod_kit/offset_diff.rb,
lib/ruby_mod_kit/feature/type.rb,
lib/ruby_mod_kit/core_ext/eval.rb,
lib/ruby_mod_kit/core_ext/load.rb,
lib/ruby_mod_kit/node/def_node.rb,
lib/ruby_mod_kit/memo/ivar_memo.rb,
lib/ruby_mod_kit/node/base_node.rb,
lib/ruby_mod_kit/node/call_node.rb,
lib/ruby_mod_kit/node/begin_node.rb,
lib/ruby_mod_kit/feature/overload.rb,
lib/ruby_mod_kit/memo/method_memo.rb,
lib/ruby_mod_kit/memo/offset_memo.rb,
lib/ruby_mod_kit/node/symbol_node.rb,
lib/ruby_mod_kit/corrector_manager.rb,
lib/ruby_mod_kit/feature/type/yard.rb,
lib/ruby_mod_kit/node/program_node.rb,
lib/ruby_mod_kit/node/untyped_node.rb,
lib/ruby_mod_kit/memo/overload_memo.rb,
lib/ruby_mod_kit/memo/parameter_memo.rb,
lib/ruby_mod_kit/node/parameter_node.rb,
lib/ruby_mod_kit/memo/def_parent_memo.rb,
lib/ruby_mod_kit/node/def_parent_node.rb,
lib/ruby_mod_kit/node/statements_node.rb,
lib/ruby_mod_kit/feature/type/rbs_inline.rb,
lib/ruby_mod_kit/feature/type/check/arguments.rb,
lib/ruby_mod_kit/feature/type/type_attr_mission.rb,
lib/ruby_mod_kit/feature/overload/overload_mission.rb,
lib/ruby_mod_kit/feature/instance_variable_parameter.rb,
lib/ruby_mod_kit/feature/type/yard/type_return_mission.rb,
lib/ruby_mod_kit/feature/type/parameter_arrow_corrector.rb,
lib/ruby_mod_kit/feature/type/yard/type_parameter_mission.rb,
lib/ruby_mod_kit/feature/type/rbs_inline/type_attr_mission.rb,
lib/ruby_mod_kit/feature/type/return_value_colon_corrector.rb,
lib/ruby_mod_kit/feature/type/rbs_inline/type_return_mission.rb,
lib/ruby_mod_kit/feature/type/rbs_inline/type_overload_mission.rb,
lib/ruby_mod_kit/feature/type/instance_variable_colon_corrector.rb,
lib/ruby_mod_kit/feature/type/rbs_inline/type_parameter_mission.rb,
lib/ruby_mod_kit/feature/type/rbs_inline/add_magic_comment_mission.rb,
lib/ruby_mod_kit/feature/type/rbs_inline/type_instance_variable_mission.rb,
lib/ruby_mod_kit/feature/type/check/arguments/add_arguments_checker_mission.rb,
lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_mission.rb,
lib/ruby_mod_kit/feature/instance_variable_parameter/instance_variable_parameter_corrector.rb
Overview
rbs_inline: enabled
Defined Under Namespace
Modules: CoreExt, Memo, Node Classes: CLI, Config, Corrector, CorrectorManager, Error, Feature, Generation, MemoPad, Mission, OffsetDiff, SyntaxError
Constant Summary collapse
- VERSION =
: String
"0.0.6"
Constants included from CoreExt::Load
Class Method Summary collapse
- .execute_file(file, *args, output: nil, config: nil) ⇒ void
- .execute_rb(rb_script, *args) ⇒ void
- .execute_rb_file(file, *args) ⇒ void
- .rb_path(path) ⇒ String
- .transpile(src, filename: nil, config: nil) ⇒ String
- .transpile_file(file, output: nil, config: nil) ⇒ String
- .unify_type(type) ⇒ String
Methods included from CoreExt::Load
load, load_path, loaded_features, require, require_path
Methods included from CoreExt::Eval
Class Method Details
.execute_file(file, *args, output: nil, config: nil) ⇒ void
This method returns an undefined value.
27 28 29 30 31 32 33 34 |
# File 'lib/ruby_mod_kit.rb', line 27 def execute_file(file, *args, output: nil, config: nil) rb_script = transpile_file(file, output: output, config: config) if output execute_rb_file(output, *args) else execute_rb(rb_script, *args) end end |
.execute_rb(rb_script, *args) ⇒ void
This method returns an undefined value.
91 92 93 94 |
# File 'lib/ruby_mod_kit.rb', line 91 def execute_rb(rb_script, *args) ARGV.replace(args) eval(rb_script, TOPLEVEL_BINDING) # rubocop:disable Security/Eval end |
.execute_rb_file(file, *args) ⇒ void
This method returns an undefined value.
73 74 75 |
# File 'lib/ruby_mod_kit.rb', line 73 def execute_rb_file(file, *args) system(RbConfig.ruby, file, *args) end |
.rb_path(path) ⇒ String
81 82 83 |
# File 'lib/ruby_mod_kit.rb', line 81 def rb_path(path) path.sub(/(?:\.rbm)?$/, ".rb") end |
.transpile(src, filename: nil, config: nil) ⇒ String
63 64 65 |
# File 'lib/ruby_mod_kit.rb', line 63 def transpile(src, filename: nil, config: nil) Generation.resolve(src, filename: filename, config: config).script end |
.transpile_file(file, output: nil, config: nil) ⇒ String
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/ruby_mod_kit.rb', line 44 def transpile_file(file, output: nil, config: nil) rb_script = transpile(File.read(file), filename: file, config: config) case output when IO output.write(rb_script) when String File.write(output, rb_script) end rb_script end |
.unify_type(type) ⇒ String
100 101 102 |
# File 'lib/ruby_mod_kit.rb', line 100 def unify_type(type) type[/\A\(([^()]*)\)\z/, 1] || type end |