Sha256: 756b770c7ba7a4b2bd67456ab575e85a97c8da94ed7556568d2da0cb991e4300

Contents?: true

Size: 1.48 KB

Versions: 1

Compression:

Stored size: 1.48 KB

Contents

require 'thread'
require 'socket'
require 'timeout'

module Riddle #:nodoc:
  @@mutex          = Mutex.new
  @@escape_pattern = /[\(\)\|\-!@~"&\/]/
  @@use_encoding   = defined?(::Encoding) &&
                     ::Encoding.respond_to?(:default_external)
  
  class ConnectionError < StandardError #:nodoc:
    #
  end

  def self.encode(data, encoding = defined?(::Encoding) && ::Encoding.default_external)
    if @@use_encoding
      data.force_encoding(encoding)
    else
      data
    end
  end
  
  def self.mutex
    @@mutex
  end
  
  def self.escape_pattern
    @@escape_pattern
  end
  
  def self.escape_pattern=(pattern)
    mutex.synchronize do
      @@escape_pattern = pattern
    end
  end
  
  def self.escape(string)
    string.gsub(escape_pattern) { |char| "\\#{char}" }
  end
  
  def self.loaded_version
    @@sphinx_version
  end
  
  def self.loaded_version=(version)
    @@sphinx_version = version
  end
  
  def self.version_warning
    return if loaded_version
    
    STDERR.puts %Q{
Riddle cannot detect Sphinx on your machine, and so can't determine which
version of Sphinx you are planning on using. Please use one of the following
lines after "require 'riddle'" to avoid this warning.

  require 'riddle/0.9.8'
  # or
  require 'riddle/0.9.9'
  # or
  require 'riddle/1.10'

    }
  end

end

require 'riddle/auto_version'
require 'riddle/client'
require 'riddle/configuration'
require 'riddle/controller'
require 'riddle/query'

Riddle.loaded_version = nil
Riddle::AutoVersion.configure

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
riddle-1.4.0 lib/riddle.rb