/core/externals/update-engine/externals/google-toolbox-for-mac/Foundation/GTMNSDictionary+CaseInsensitive.h
http://macfuse.googlecode.com/ · C++ Header · 44 lines · 7 code · 5 blank · 32 comment · 0 complexity · 2b5a23dc9647d56a0a43c9edd3b8347c MD5 · raw file
- //
- // GTMNSDictionary+CaseInsensitive.h
- //
- // Copyright 2009 Google Inc.
- //
- // Licensed under the Apache License, Version 2.0 (the "License"); you may not
- // use this file except in compliance with the License. You may obtain a copy
- // of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- // License for the specific language governing permissions and limitations under
- // the License.
- //
- #import <Foundation/Foundation.h>
- #import "GTMDefines.h"
- /// Utility for building case-insensitive NSDictionary objects.
- @interface NSDictionary (GTMNSDictionaryCaseInsensitiveAdditions)
- /// Initializes an NSDictionary with a case-insensitive comparison function
- /// for NSString keys, while non-NSString keys are treated normally.
- ///
- /// The case for NSString keys is preserved, though duplicate keys (when
- /// compared in a case-insensitive fashion) have one of their values dropped
- /// arbitrarily.
- ///
- /// An example of use with HTTP headers in an NSHTTPURLResponse object:
- ///
- /// NSDictionary *headers =
- /// [NSDictionary gtm_dictionaryWithDictionaryCaseInsensitive:
- /// [response allHeaderFields]];
- /// NSString *contentType = [headers objectForKey:@"Content-Type"];
- - (id)gtm_initWithDictionaryCaseInsensitive:(NSDictionary *)dictionary
- NS_RETURNS_RETAINED NS_CONSUMES_SELF;
- /// Returns a newly created and autoreleased NSDictionary object as above.
- + (id)gtm_dictionaryWithDictionaryCaseInsensitive:(NSDictionary *)dictionary;
- @end