summaryrefslogtreecommitdiffstats
path: root/base/string_util.h
diff options
context:
space:
mode:
authorjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-14 19:36:32 +0000
committerjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-14 19:36:32 +0000
commit0bedb8a46053e44f667da0e800568c38e2150e4a (patch)
treecd14724a4078a65970c56e97cbd7c5a904c2f14c /base/string_util.h
parent6fa508a1cef4a920f570174c77eafc5f21d808eb (diff)
downloadchromium_src-0bedb8a46053e44f667da0e800568c38e2150e4a.zip
chromium_src-0bedb8a46053e44f667da0e800568c38e2150e4a.tar.gz
chromium_src-0bedb8a46053e44f667da0e800568c38e2150e4a.tar.bz2
This CL contains the back-end implementation of the translate feature. It adds a Translate method to the renderer.
On invocation this method triggers a traversal of the DOM page to retrieve the text nodes. The text node contents are then sent to the browser for actual translation (at this point, we just up-case the text for testing purpose). The browser sends back the translated text to the renderer that replace the DOM text node values with the translated text. BUG=None TEST=Run the unit-tests. Review URL: http://codereview.chromium.org/547013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36258 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/string_util.h')
-rw-r--r--base/string_util.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/base/string_util.h b/base/string_util.h
index dd0f8c1..c895f27 100644
--- a/base/string_util.h
+++ b/base/string_util.h
@@ -30,16 +30,19 @@ namespace base {
// are listed below. These functions are then implemented as inline calls
// to the platform-specific equivalents in the platform-specific headers.
-// Compare the two strings s1 and s2 without regard to case using
+// Compares the two strings s1 and s2 without regard to case using
// the current locale; returns 0 if they are equal, 1 if s1 > s2, and -1 if
// s2 > s1 according to a lexicographic comparison.
int strcasecmp(const char* s1, const char* s2);
-// Compare up to count characters of s1 and s2 without regard to case using
+// Compares up to count characters of s1 and s2 without regard to case using
// the current locale; returns 0 if they are equal, 1 if s1 > s2, and -1 if
// s2 > s1 according to a lexicographic comparison.
int strncasecmp(const char* s1, const char* s2, size_t count);
+// Same as strncmp but for char16 strings.
+int strncmp16(const char16* s1, const char16* s2, size_t count);
+
// Wrapper for vsnprintf that always null-terminates and always returns the
// number of characters that would be in an untruncated formatted
// string, even when truncation occurs.
@@ -196,6 +199,11 @@ string16 CollapseWhitespace(const string16& text,
std::string CollapseWhitespaceASCII(const std::string& text,
bool trim_sequences_with_line_breaks);
+// Returns true if the passed string is empty or contains only white-space
+// characters.
+bool ContainsOnlyWhitespaceASCII(const std::string& str);
+bool ContainsOnlyWhitespace(const string16& str);
+
// These convert between ASCII (7-bit) and Wide/UTF16 strings.
std::string WideToASCII(const std::wstring& wide);
std::wstring ASCIIToWide(const base::StringPiece& ascii);