struct
   MIME::MediaType
 
  
  Overview
A MediaType describes a MIME content type with optional parameters.
Defined in:
mime/media_type.crConstructors
- 
        .new(media_type : String, params : Hash(String, String) = {} of String => String)
        
          Creates a new MediaTypeinstance.
- 
        .parse(string : String) : MediaType
        
          Parses a MIME type string representation including any optional parameters, per RFC 1521. 
Class Method Summary
- 
        .parse?(string : String) : MediaType | Nil
        
          Parses a MIME type string representation including any optional parameters, per RFC 1521. 
Instance Method Summary
- 
        #[](key : String) : String
        
          Returns the value for the parameter given by key. 
- 
        #[]=(key : String, value : String)
        
          Sets the value of parameter key to the given value. 
- 
        #[]?(key : String) : String | Nil
        
          Returns the value for the parameter given by key. 
- 
        #each_parameter(&block : String, String -> _) : Nil
        
          Calls the given block for each parameter and passes in the key and the value. 
- #each_parameter : Iterator(Tuple(String, String))
- 
        #fetch(key : String, default : T) : String | T forall T
        
          Returns the value for the parameter given by key, or when not found the value given by default. 
- 
        #fetch(key : String, &block : String -> _)
        
          Returns the value for the parameter given by key, or when not found calls the given block with the key. 
- #media_type : String
- 
        #sub_type : String | Nil
        
          Second component of #media_typeornil.
- 
        #to_s(io : IO) : Nil
        
          Same as #inspect(io).
- 
        #type : String
        
          First component of #media_type.
Instance methods inherited from struct Struct
  
  
    
      ==(other) : Bool
    ==, 
    
  
    
      hash(hasher)
    hash, 
    
  
    
      inspect(io : IO) : Nil
    inspect, 
    
  
    
      pretty_print(pp) : Nil
    pretty_print, 
    
  
    
      to_s(io : IO) : Nil
    to_s
    
  
      
      
  Class methods inherited from struct Struct
  
  
    
      pre_initialize(address : Pointer) : Nil
    pre_initialize
    
  
      
    
      
  Instance methods inherited from struct Value
  
  
    
      ==(other : JSON::Any)==(other : YAML::Any)
==(other) ==, dup dup
Instance methods inherited from class Object
  
  
    
      ! : Bool
    !, 
    
  
    
      !=(other)
    !=, 
    
  
    
      !~(other)
    !~, 
    
  
    
      ==(other)
    ==, 
    
  
    
      ===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, as(type : Class) as, as?(type : Class) as?, class class, dup dup, hash(hasher)
hash hash, in?(collection : Object) : Bool
in?(*values : Object) : Bool in?, inspect(io : IO) : Nil
inspect : String inspect, is_a?(type : Class) : Bool is_a?, itself itself, nil? : Bool nil?, not_nil!(message)
not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, responds_to?(name : Symbol) : Bool responds_to?, tap(&) tap, to_json(io : IO) : Nil
to_json : String to_json, to_pretty_json(indent : String = " ") : String
to_pretty_json(io : IO, indent : String = " ") : Nil to_pretty_json, to_s(io : IO) : Nil
to_s : String to_s, to_yaml(io : IO) : Nil
to_yaml : String to_yaml, try(&) try, unsafe_as(type : T.class) forall T unsafe_as
Class methods inherited from class Object
  
  
    
      from_json(string_or_io, root : String)from_json(string_or_io) from_json, from_yaml(string_or_io : String | IO) from_yaml
Macros inherited from class Object
  
  
    
      class_getter(*names, &block)
    class_getter, 
    
  
    
      class_getter!(*names)
    class_getter!, 
    
  
    
      class_getter?(*names, &block)
    class_getter?, 
    
  
    
      class_property(*names, &block)
    class_property, 
    
  
    
      class_property!(*names)
    class_property!, 
    
  
    
      class_property?(*names, &block)
    class_property?, 
    
  
    
      class_setter(*names)
    class_setter, 
    
  
    
      def_clone
    def_clone, 
    
  
    
      def_equals(*fields)
    def_equals, 
    
  
    
      def_equals_and_hash(*fields)
    def_equals_and_hash, 
    
  
    
      def_hash(*fields)
    def_hash, 
    
  
    
      delegate(*methods, to object)
    delegate, 
    
  
    
      forward_missing_to(delegate)
    forward_missing_to, 
    
  
    
      getter(*names, &block)
    getter, 
    
  
    
      getter!(*names)
    getter!, 
    
  
    
      getter?(*names, &block)
    getter?, 
    
  
    
      property(*names, &block)
    property, 
    
  
    
      property!(*names)
    property!, 
    
  
    
      property?(*names, &block)
    property?, 
    
  
    
      setter(*names)
    setter
    
  
    
  Constructor Detail
Parses a MIME type string representation including any optional parameters,
per RFC 1521.
Media types are the values in Content-Type and Content-Disposition HTTP
headers (RFC 2183).
Media type is lowercased and trimmed of whitespace. Param keys are lowercased.
Raises MIME::Error on error.
Class Method Detail
Parses a MIME type string representation including any optional parameters,
per RFC 1521.
Media types are the values in Content-Type and Content-Disposition HTTP
headers (RFC 2183).
Media type is lowercased and trimmed of whitespace. Param keys are lowercased.
Returns nil on error.
Instance Method Detail
Returns the value for the parameter given by key. If not found, raises KeyError.
require "mime/media_type"
MIME::MediaType.parse("text/plain; charset=UTF-8")["charset"] # => "UTF-8"
MIME::MediaType.parse("text/plain; charset=UTF-8")["foo"]     # raises KeyErrorSets the value of parameter key to the given value.
require "mime/media_type"
mime_type = MIME::MediaType.parse("x-application/example")
mime_type["foo"] = "bar"
mime_type["foo"] # => "bar"Returns the value for the parameter given by key. If not found, returns nil.
require "mime/media_type"
MIME::MediaType.parse("text/plain; charset=UTF-8")["charset"]? # => "UTF-8"
MIME::MediaType.parse("text/plain; charset=UTF-8")["foo"]?     # => nilCalls the given block for each parameter and passes in the key and the value.
Returns an iterator over the parameter which behaves like an Iterator returning a Tuple of key and value.
Returns the value for the parameter given by key, or when not found the value given by default.
require "mime/media_type"
MIME::MediaType.parse("x-application/example").fetch("foo", "baz")          # => "baz"
MIME::MediaType.parse("x-application/example; foo=bar").fetch("foo", "baz") # => "bar"Returns the value for the parameter given by key, or when not found calls the given block with the key.
require "mime/media_type"
MIME::MediaType.parse("x-application/example").fetch("foo") { |key| key }          # => "foo"
MIME::MediaType.parse("x-application/example; foo=bar").fetch("foo") { |key| key } # => "bar"Second component of #media_type or nil.
require "mime/media_type"
MIME::MediaType.new("text/plain").sub_type # => "plain"
MIME::MediaType.new("foo").sub_type        # => nilFirst component of #media_type.
require "mime/media_type"
MIME::MediaType.new("text/plain").type # => "text"
MIME::MediaType.new("foo").type        # => "foo"