Module Magic
In: lib/magic.rb
lib/magic/version.rb
lib/magic/database.rb
lib/magic/constants.rb
lib/magic/errors.rb
lib/magic/api.rb

Methods

Classes and Modules

Class Magic::Database
Class Magic::Exception

Constants

VERSION = "0.2.6"

Public Class methods

Creates magic database and yields it to the given block

Example
  Magic.guess(:mime) { |db| db.buffer("Magic® File™") }
  # => "text/plain; charset=utf-8"

[Source]

# File lib/magic.rb, line 72
    def guess(*args)
      db = Database.new(*args)
      result = yield(db)
      db.close
      result
    end

Guesses mime of given file

Example
  Magic.guess_file_mime("public/images/rails.png")
  # => "image/png; charset=binary"

[Source]

# File lib/magic.rb, line 18
    def guess_file_mime(filename, *args)
      guess(*args.unshift(:mime)) { |db| db.file(filename) }
    end

Guesses mime encoding of given file

Example
  Magic.guess_file_mime_encoding("public/images/rails.png")
  # => "binary"

[Source]

# File lib/magic.rb, line 27
    def guess_file_mime_encoding(filename, *args)
      guess(*args.unshift(:mime_encoding)) { |db| db.file(filename) }
    end

Guesses mime type of given file

Example
  Magic.guess_file_mime_type("public/images/rails.png")
  # => "image/png"

[Source]

# File lib/magic.rb, line 36
    def guess_file_mime_type(filename, *args)
      guess(*args.unshift(:mime_type)) { |db| db.file(filename) }
    end

Guesses mime type of given string

Example
  Magic.guess_string_mime("Magic® File™")
  # => "text/plain; charset=utf-8"

[Source]

# File lib/magic.rb, line 45
    def guess_string_mime(string, *args)
      guess(*args.unshift(:mime)) { |db| db.buffer(string) }
    end

Guesses mime type of given string

Example
  Magic.guess_string_mime_encoding("Magic® File™")
  # => "utf-8"

[Source]

# File lib/magic.rb, line 54
    def guess_string_mime_encoding(string, *args)
      guess(*args.unshift(:mime_type)) { |db| db.buffer(string) }
    end

Guesses mime type of given string

Example
  Magic.guess_string_mime_type("Magic® File™")
  # => "text/plain"

[Source]

# File lib/magic.rb, line 63
    def guess_string_mime_type(string, *args)
      guess(*args.unshift(:mime_type)) { |db| db.buffer(string) }
    end

[Validate]