Sha256: adb63cfe40d1cb13e2bdb06dec91968e6f01b62cce56b5a7a12db3300357b4bc

Contents?: true

Size: 408 Bytes

Versions: 92

Compression:

Stored size: 408 Bytes

Contents

module Cairo
  class Surface
    class << self
      def supported?(type)
        type_components = type.to_s.split(/([A-Z][a-z\d]+)/).reject(&:empty?)
        snake_case_type_name = type_components.join("_").downcase
        supported_predicate = "#{snake_case_type_name}_supported?"
        return false unless respond_to?(supported_predicate)
        send(supported_predicate)
      end
    end
  end
end

Version data entries

92 entries across 84 versions & 2 rubygems

Version Path
cairo-1.17.14 lib/cairo/surface.rb
cairo-1.17.13 lib/cairo/surface.rb
cairo-1.17.12 lib/cairo/surface.rb
cairo-1.17.11 lib/cairo/surface.rb
cairo-1.17.10 lib/cairo/surface.rb
cairo-1.17.9 lib/cairo/surface.rb
cairo-1.17.8 lib/cairo/surface.rb
cairo-1.17.7 lib/cairo/surface.rb
cairo-1.17.6 lib/cairo/surface.rb
cairo-1.17.5 lib/cairo/surface.rb
cairo-1.17.4 lib/cairo/surface.rb
cairo-1.16.6 lib/cairo/surface.rb
cairo-1.16.5 lib/cairo/surface.rb
cairo-1.16.4 lib/cairo/surface.rb
cairo-1.16.3 lib/cairo/surface.rb
cairo-1.16.2 lib/cairo/surface.rb
cairo-1.16.1-x86-mingw32 lib/cairo/surface.rb
cairo-1.16.1-x64-mingw32 lib/cairo/surface.rb
cairo-1.16.1 lib/cairo/surface.rb
cairo-1.16.0-x86-mingw32 lib/cairo/surface.rb