Class: Cure::Dsl::Transformations::Translation

Inherits:
Object
  • Object
show all
Defined in:
lib/cure/dsl/transformations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#generatorObject (readonly)

Returns the value of attribute generator.



68
69
70
# File 'lib/cure/dsl/transformations.rb', line 68

def generator
  @generator
end

#strategyObject (readonly)

Returns the value of attribute strategy.



68
69
70
# File 'lib/cure/dsl/transformations.rb', line 68

def strategy
  @strategy
end

Instance Method Details

#class_exists?(klass_name) ⇒ Boolean

Returns:

  • (Boolean)


86
87
88
89
90
91
# File 'lib/cure/dsl/transformations.rb', line 86

def class_exists?(klass_name)
  klass = Module.const_get(klass_name)
  klass.is_a?(Class)
rescue NameError
  false
end

#replace(name, **options) ⇒ Object



70
71
72
73
74
75
76
# File 'lib/cure/dsl/transformations.rb', line 70

def replace(name, **options)
  klass_name = "Cure::Strategy::#{name.to_s.capitalize}Strategy"
  raise "#{name} is not valid" unless class_exists?(klass_name)

  @strategy = Kernel.const_get(klass_name).new(options)
  self
end

#with(name, **options) ⇒ Object



78
79
80
81
82
83
84
# File 'lib/cure/dsl/transformations.rb', line 78

def with(name, **options)
  klass_name = "Cure::Generator::#{name.to_s.capitalize}Generator"
  raise "#{name} is not valid" unless class_exists?(klass_name)

  @generator = Kernel.const_get(klass_name).new(options)
  self
end