Module: ProcSettingModule::ClassMethods

Defined in:
lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb

Instance Method Summary collapse

Instance Method Details

#add_setting_from(abs_path_dir, filename) ⇒ Object



29
30
31
32
33
34
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 29

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



14
15
16
17
18
19
20
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 14

def extend_object( extender )
  extender.instance_variable_set(:@validator, @validator)
  extender.singleton_class.__send__( :attr_accessor, :validator)
  extender.instance_variable_set(:@finalizer, @finalizer)
  extender.singleton_class.__send__( :attr_accessor, :finalizer)
  super
end

#finalizerObject



48
49
50
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 48

def finalizer
  @finalizer
end

#finalizer_enabledObject



44
45
46
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 44

def finalizer_enabled
  @finalizer.enabled = true
end

#source_r_file(abs_path_dir, filename) ⇒ Object



22
23
24
25
26
27
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 22

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



36
37
38
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 36

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

#validatorObject



40
41
42
# File 'lib/statsailr/block_to_r/proc_setting_support/proc_setting_module.rb', line 40

def validator
  @validator
end