Sha256: 753235b8281268f7a80a715be757e2cb79f9428d3386fec372a3d4e4e7fceed7
Contents?: true
Size: 816 Bytes
Versions: 3
Compression:
Stored size: 816 Bytes
Contents
require 'rom/sql/dsl' require 'rom/sql/function' module ROM module SQL class ProjectionDSL < DSL # @api private def respond_to_missing?(name, include_private = false) super || type(name) end private # @api private def type(identifier) type_name = ::Dry::Core::Inflector.classify(identifier) types.const_get(type_name) if types.const_defined?(type_name) end # @api private def types ::ROM::SQL::Types end # @api private def method_missing(meth, *args, &block) if schema.key?(meth) schema[meth] else type = type(meth) if type ::ROM::SQL::Function.new(type) else super end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rom-sql-1.0.0.beta3 | lib/rom/sql/projection_dsl.rb |
rom-sql-1.0.0.beta2 | lib/rom/sql/projection_dsl.rb |
rom-sql-1.0.0.beta1 | lib/rom/sql/projection_dsl.rb |