def []=(key, value)
      key = CF::String.from_string(key) if key.is_a?(::String)
      self.class.check_cftype(key)
      self.class.check_cftype(value)
      CF.CFDictionarySetValue(self, key, value)
      value
    end
def []=(key, value)
      key = CF::String.from_string(key) if key.is_a?(::String)
      self.class.check_cftype(key)
      self.class.check_cftype(value)
      CF.CFDictionarySetValue(self, key, value)
      value
    end
Sets the value associated with the key, or nil
 The key should be a CF::Base instance. As a convenience, instances of string will be converted to CF::String
 @param [CF::Base, String] key the key to access
 @param [CF::Base] value the value to set
 @return [CF::Base] the value that was set