Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(876)

Unified Diff: chrome/browser/ui/app_list/search/tokenized_string_char_iterator.cc

Issue 522683003: Move basic string operations to ui/app_list/search (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: gn Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/app_list/search/tokenized_string_char_iterator.cc
diff --git a/chrome/browser/ui/app_list/search/tokenized_string_char_iterator.cc b/chrome/browser/ui/app_list/search/tokenized_string_char_iterator.cc
deleted file mode 100644
index 744dcaac5c320e194cc161fca8ac95ff18034ef8..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/app_list/search/tokenized_string_char_iterator.cc
+++ /dev/null
@@ -1,92 +0,0 @@
-// 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 "chrome/browser/ui/app_list/search/tokenized_string_char_iterator.h"
-
-#include "base/i18n/char_iterator.h"
-#include "base/logging.h"
-#include "third_party/icu/source/common/unicode/utf16.h"
-
-namespace app_list {
-
-TokenizedStringCharIterator::State::State() : token_index(0u), char_index(0) {}
-
-TokenizedStringCharIterator::State::State(size_t token_index, int char_index)
- : token_index(token_index),
- char_index(char_index) {
-}
-
-TokenizedStringCharIterator::TokenizedStringCharIterator(
- const TokenizedString& tokenized)
- : tokens_(tokenized.tokens()),
- mappings_(tokenized.mappings()),
- current_token_(0) {
- CreateTokenCharIterator();
-}
-
-TokenizedStringCharIterator::~TokenizedStringCharIterator() {}
-
-bool TokenizedStringCharIterator::NextChar() {
- if (current_token_iter_) {
- current_token_iter_->Advance();
- if (!current_token_iter_->end())
- return true;
- }
-
- return NextToken();
-}
-
-bool TokenizedStringCharIterator::NextToken() {
- if (current_token_ < tokens_.size()) {
- ++current_token_;
- CreateTokenCharIterator();
- }
-
- return !!current_token_iter_;
-}
-
-int32 TokenizedStringCharIterator::Get() const {
- return current_token_iter_ ? current_token_iter_->get() : 0;
-}
-
-int32 TokenizedStringCharIterator::GetArrayPos() const {
- DCHECK(current_token_iter_);
- return mappings_[current_token_].start() +
- current_token_iter_->array_pos();
-}
-
-size_t TokenizedStringCharIterator::GetCharSize() const {
- return current_token_iter_ ? U16_LENGTH(Get()) : 0;
-}
-
-bool TokenizedStringCharIterator::IsFirstCharOfToken() const {
- return current_token_iter_ && current_token_iter_->char_pos() == 0;
-}
-
-TokenizedStringCharIterator::State
-TokenizedStringCharIterator::GetState() const {
- return State(current_token_,
- current_token_iter_ ? current_token_iter_->char_pos() : 0);
-}
-
-void TokenizedStringCharIterator::SetState(const State& state) {
- current_token_ = state.token_index;
- CreateTokenCharIterator();
- if (current_token_iter_) {
- while (current_token_iter_->char_pos() < state.char_index)
- current_token_iter_->Advance();
- }
-}
-
-void TokenizedStringCharIterator::CreateTokenCharIterator() {
- if (current_token_ == tokens_.size()) {
- current_token_iter_.reset();
- return;
- }
-
- current_token_iter_.reset(
- new base::i18n::UTF16CharIterator(&tokens_[current_token_]));
-}
-
-} // namespace app_list

Powered by Google App Engine
This is Rietveld 408576698