Sha256: 6d1e4cc3c71eb5e65af64c31a1a5ad180733795ce3f8fd6a252e524bd7710533

Contents?: true

Size: 441 Bytes

Versions: 3

Compression:

Stored size: 441 Bytes

Contents

class RubyPropertyReflector
  NAMESPACE_SEPARTOR = "/"
  
  def self.propertyForClass(klass, andProperty: property)
    scopes = klass.send(:objectionTypeMappings)[property].to_s.split(NAMESPACE_SEPARTOR).map { |x| x.split("_") }.map { |x| x.map { |y| y.capitalize }.join("") }
    klass = scopes.inject(Object) do |const, name|
      const.const_get name
    end
    JSObjectionPropertyInfo.new(klass, JSObjectionTypeClass).value
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
motion-objection-0.6.1 lib/motion-objection/ruby_property_reflector.rb
motion-objection-0.6 lib/motion-objection/ruby_property_reflector.rb
motion-objection-0.5 lib/motion-objection/ruby_property_reflector.rb