|  | // Copyright 2013 The Chromium Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style license that can be | 
|  | // found in the LICENSE file. | 
|  |  | 
|  | #include "base/strings/string_util.h" | 
|  |  | 
|  | namespace base { | 
|  |  | 
|  | #define WHITESPACE_UNICODE                    \ | 
|  | 0x0009,     /* CHARACTER TABULATION */      \ | 
|  | 0x000A, /* LINE FEED (LF) */            \ | 
|  | 0x000B, /* LINE TABULATION */           \ | 
|  | 0x000C, /* FORM FEED (FF) */            \ | 
|  | 0x000D, /* CARRIAGE RETURN (CR) */      \ | 
|  | 0x0020, /* SPACE */                     \ | 
|  | 0x0085, /* NEXT LINE (NEL) */           \ | 
|  | 0x00A0, /* NO-BREAK SPACE */            \ | 
|  | 0x1680, /* OGHAM SPACE MARK */          \ | 
|  | 0x2000, /* EN QUAD */                   \ | 
|  | 0x2001, /* EM QUAD */                   \ | 
|  | 0x2002, /* EN SPACE */                  \ | 
|  | 0x2003, /* EM SPACE */                  \ | 
|  | 0x2004, /* THREE-PER-EM SPACE */        \ | 
|  | 0x2005, /* FOUR-PER-EM SPACE */         \ | 
|  | 0x2006, /* SIX-PER-EM SPACE */          \ | 
|  | 0x2007, /* FIGURE SPACE */              \ | 
|  | 0x2008, /* PUNCTUATION SPACE */         \ | 
|  | 0x2009, /* THIN SPACE */                \ | 
|  | 0x200A, /* HAIR SPACE */                \ | 
|  | 0x2028, /* LINE SEPARATOR */            \ | 
|  | 0x2029, /* PARAGRAPH SEPARATOR */       \ | 
|  | 0x202F, /* NARROW NO-BREAK SPACE */     \ | 
|  | 0x205F, /* MEDIUM MATHEMATICAL SPACE */ \ | 
|  | 0x3000, /* IDEOGRAPHIC SPACE */         \ | 
|  | 0 | 
|  |  | 
|  | const wchar_t kWhitespaceWide[] = {WHITESPACE_UNICODE}; | 
|  |  | 
|  | const char16 kWhitespaceUTF16[] = {WHITESPACE_UNICODE}; | 
|  |  | 
|  | const char kWhitespaceASCII[] = {0x09,  // CHARACTER TABULATION | 
|  | 0x0A,  // LINE FEED (LF) | 
|  | 0x0B,  // LINE TABULATION | 
|  | 0x0C,  // FORM FEED (FF) | 
|  | 0x0D,  // CARRIAGE RETURN (CR) | 
|  | 0x20,  // SPACE | 
|  | 0}; | 
|  |  | 
|  | const char16 kWhitespaceASCIIAs16[] = {0x09,  // CHARACTER TABULATION | 
|  | 0x0A,  // LINE FEED (LF) | 
|  | 0x0B,  // LINE TABULATION | 
|  | 0x0C,  // FORM FEED (FF) | 
|  | 0x0D,  // CARRIAGE RETURN (CR) | 
|  | 0x20,  // SPACE | 
|  | 0}; | 
|  |  | 
|  | const char kUtf8ByteOrderMark[] = "\xEF\xBB\xBF"; | 
|  |  | 
|  | }  // namespace base |