Sha256: c6dbd8dc596f45e6cc536513437674b93376cf466cc33eb53d7bb9b54186cf7e
Contents?: true
Size: 1.05 KB
Versions: 3
Compression:
Stored size: 1.05 KB
Contents
module ROM module SQL # @api private class DSL < BasicObject # @api private attr_reader :schema # @api private def initialize(schema) @schema = schema end # @api private def call(&block) result = instance_exec(&block) if result.is_a?(::Array) result else [result] end end # Return a string literal that will be used directly in an ORDER clause # # @param [String] value # # @return [Sequel::LiteralString] # # @api public def `(value) ::Sequel.lit(value) end # @api private def respond_to_missing?(name, include_private = false) super || schema.key?(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 end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rom-sql-2.1.0 | lib/rom/sql/dsl.rb |
rom-sql-2.0.0 | lib/rom/sql/dsl.rb |
rom-sql-2.0.0.rc1 | lib/rom/sql/dsl.rb |