module Transform
Constants
- Error
Public Instance Methods
transform_const?(subject_constant)
click to toggle source
# File lib/transform/transform.rb, line 28 def transform_const?(subject_constant) Reflect.constant?(subject_constant, :Transform) end
transformer?(subject)
click to toggle source
# File lib/transform/transform.rb, line 36 def transformer?(subject) subject_constant = Reflect.constant(subject) transform_const?(subject_constant) || transformer_const?(subject_constant) end
transformer_const?(subject_constant)
click to toggle source
# File lib/transform/transform.rb, line 32 def transformer_const?(subject_constant) Reflect.constant?(subject_constant, :Transformer) end
transformer_name(subject_constant)
click to toggle source
# File lib/transform/transform.rb, line 18 def transformer_name(subject_constant) if transform_const?(subject_constant) return :Transform elsif transformer_const?(subject_constant) return :Transformer else return nil end end
transformer_reflection(subject)
click to toggle source
# File lib/transform/transform.rb, line 6 def transformer_reflection(subject) subject_constant = Reflect.constant(subject) transformer_name = transformer_name(subject_constant) if transformer_name.nil? raise Error, "#{subject_constant.name} doesn't have a Transform namespace that implements the transformation protocol" end Reflect.(subject, transformer_name, strict: true) end