Module: ProcSettingModule::ClassMethods
- Defined in:
- lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb
Instance Method Summary collapse
- #add_setting_from(abs_path_dir, filename) ⇒ Object
- #extend_object(extender) ⇒ Object
- #source_r_file(abs_path_dir, filename) ⇒ Object
- #validate_option(opt_key, is_a: nil, as: nil, required: true) ⇒ Object
- #validator ⇒ Object
Instance Method Details
#add_setting_from(abs_path_dir, filename) ⇒ Object
25 26 27 28 29 30 |
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 25 def add_setting_from( abs_path_dir, filename) raise "directory path should be specified in absolute path for " + __method__ unless Pathname.new(abs_path_dir).absolute? require( abs_path_dir + "/" + filename ) klass_name = File.basename( filename , ".rb").split("_").map{|elem| elem.capitalize()}.join("") + "Setting" # e.g. dev_copy.rb => DevCopySetting self.include(Object.const_get(klass_name)) end |
#extend_object(extender) ⇒ Object
12 13 14 15 16 |
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 12 def extend_object( extender ) extender.instance_variable_set(:@validator, @validator) extender.singleton_class.__send__( :attr_accessor, :validator) super end |
#source_r_file(abs_path_dir, filename) ⇒ Object
18 19 20 21 22 23 |
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 18 def source_r_file( abs_path_dir, filename) raise "directory path should be specified in absolute path for " + __method__ unless Pathname.new(abs_path_dir).absolute? r_path = abs_path_dir + "/" + filename func = RBridge::create_function_call("source", { "file" => RBridge::create_strvec([r_path])} ) RBridge::exec_function(func) end |
#validate_option(opt_key, is_a: nil, as: nil, required: true) ⇒ Object
32 33 34 |
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 32 def validate_option(opt_key, is_a: nil, as: nil , required: true) @validator.rule( opt_key, is_a: is_a, as: as, required: required ) end |
#validator ⇒ Object
36 37 38 |
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 36 def validator @validator end |