Class: Mime::Mimes

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/action_dispatch/http/mime_type.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeMimes

Returns a new instance of Mimes.



13
14
15
16
17
# File 'lib/action_dispatch/http/mime_type.rb', line 13

def initialize
  @mimes = []
  @symbols = []
  @symbols_set = Set.new
end

Instance Attribute Details

#symbolsObject (readonly)

Returns the value of attribute symbols.



9
10
11
# File 'lib/action_dispatch/http/mime_type.rb', line 9

def symbols
  @symbols
end

Instance Method Details

#<<(type) ⇒ Object



23
24
25
26
27
28
# File 'lib/action_dispatch/http/mime_type.rb', line 23

def <<(type)
  @mimes << type
  sym_type = type.to_sym
  @symbols << sym_type
  @symbols_set << sym_type
end

#delete_ifObject



30
31
32
33
34
35
36
37
38
39
# File 'lib/action_dispatch/http/mime_type.rb', line 30

def delete_if
  @mimes.delete_if do |x|
    if yield x
      sym_type = x.to_sym
      @symbols.delete(sym_type)
      @symbols_set.delete(sym_type)
      true
    end
  end
end

#each(&block) ⇒ Object



19
20
21
# File 'lib/action_dispatch/http/mime_type.rb', line 19

def each(&block)
  @mimes.each(&block)
end

#valid_symbols?(symbols) ⇒ Boolean

:nodoc

Returns:

  • (Boolean)


41
42
43
# File 'lib/action_dispatch/http/mime_type.rb', line 41

def valid_symbols?(symbols) # :nodoc
  symbols.all? { |s| @symbols_set.include?(s) }
end