Class: LazyFuncGenerator
- Inherits:
-
Object
- Object
- LazyFuncGenerator
- Includes:
- LazyFuncGeneratorSettingUtility
- Defined in:
- lib/statsailr/block_to_r/sts_lazy_func_gen.rb
Constant Summary collapse
- SETTING_FOR_PREFIX =
"setting_for_"
Instance Method Summary collapse
Methods included from LazyFuncGeneratorSettingUtility
#is_param_name?, #is_r_obj?, #is_result_name?, #is_result_name_array?, #one_from, #param, #previous_inst_name, #previous_or, #r_obj, #read_as_formula, #read_as_intvec, #read_as_numvec, #read_as_one_str, #read_as_realvec, #read_as_strvec, #read_as_symbol, #read_named_args_as_named_strvec, #read_symbols_as_strvec, #read_symbols_or_functions_as_strvec, #result
Instance Method Details
#gen_lazy_func(command, proc_stmt, param_manager) ⇒ Object
320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 |
# File 'lib/statsailr/block_to_r/sts_lazy_func_gen.rb', line 320 def gen_lazy_func( command, proc_stmt , param_manager) inst = proc_stmt[0] main_arg = proc_stmt[1] opt_args = proc_stmt[2] underscored_inst = inst.gsub(/\./, "_") setting = LazyFuncGeneratorSetting.new() if respond_to?( SETTING_FOR_PREFIX + underscored_inst ) send( SETTING_FOR_PREFIX + underscored_inst , setting ) else raise "method for this instruction(#{inst})" "is not defined: " + SETTING_FOR_PREFIX + underscored_inst end libname = setting.libname envname = setting.envname func_name = setting.func_name func_hash = setting.create_func_arg_hash( main_arg, opt_args ) result_name = inst store_result = setting.store_result print_opt = setting.print_opt plot_opt = setting.plot_opt if libname.nil? || libname == "" libname = nil end if envname.nil? || libname == "" envname = nil end if ! libname.nil? lazy_func = RBridge::create_ns_lazy_function( libname, func_name, func_hash, param_manager) else if ! envname.nil? lazy_func = RBridge::create_env_lazy_function( envname, func_name, func_hash, param_manager) else lazy_func = RBridge::create_lazy_function( func_name, func_hash, param_manager) end end return [ lazy_func, print_opt, plot_opt, store_result, result_name ] end |