Sha256: 2a3bdf3e85e24e7a36b76d19c6248666d25118d79bfd52b1f1f49bf4626ce32f

Contents?: true

Size: 391 Bytes

Versions: 11

Compression:

Stored size: 391 Bytes

Contents

# frozen_string_literal: true

module MiniSql
  module Decoratable
    def decorated(mod)
      @decoratorated_classes ||= {}
      @decoratorated_classes[mod] ||=
        Class.new(self) do
          include(mod)
          instance_eval <<~RUBY
            def decorator
              #{mod}
            end
          RUBY
        end
    end

    def decorator
      nil
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
mini_sql-1.6.0 lib/mini_sql/decoratable.rb
mini_sql-1.5.0 lib/mini_sql/decoratable.rb
mini_sql-1.4.0 lib/mini_sql/decoratable.rb
mini_sql-1.3.0 lib/mini_sql/decoratable.rb
mini_sql-1.2.0 lib/mini_sql/decoratable.rb
mini_sql-1.1.3 lib/mini_sql/decoratable.rb
mini_sql-1.1.2 lib/mini_sql/decoratable.rb
mini_sql-1.1.1 lib/mini_sql/decoratable.rb
mini_sql-1.1.0 lib/mini_sql/decoratable.rb
mini_sql-1.0.1 lib/mini_sql/decoratable.rb
mini_sql-1.0 lib/mini_sql/decoratable.rb