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

Unified Diff: sky/engine/tonic/dart_library_loader.cc

Issue 1237973004: Port more String and HashMap usages (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 5 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: sky/engine/tonic/dart_library_loader.cc
diff --git a/sky/engine/tonic/dart_library_loader.cc b/sky/engine/tonic/dart_library_loader.cc
index 6e9525eefa5cd3cf33d3b18140bc017043c5cf6e..ac7228e66c24aa58c78eafbe3bb544e5813427ab 100644
--- a/sky/engine/tonic/dart_library_loader.cc
+++ b/sky/engine/tonic/dart_library_loader.cc
@@ -26,13 +26,13 @@ namespace blink {
class DartLibraryLoader::Job : public DartDependency,
public DataPipeDrainer::Client {
public:
- Job(DartLibraryLoader* loader, const String& name)
+ Job(DartLibraryLoader* loader, const std::string& name)
: loader_(loader), name_(name), weak_factory_(this) {
loader->library_provider()->GetLibraryAsStream(
name, base::Bind(&Job::OnStreamAvailable, weak_factory_.GetWeakPtr()));
}
- const String& name() const { return name_; }
+ const std::string& name() const { return name_; }
protected:
DartLibraryLoader* loader_;
@@ -55,7 +55,7 @@ class DartLibraryLoader::Job : public DartDependency,
}
// Subclasses must implement OnDataComplete.
- String name_;
+ std::string name_;
OwnPtr<DataPipeDrainer> drainer_;
base::WeakPtrFactory<Job> weak_factory_;
@@ -63,9 +63,9 @@ class DartLibraryLoader::Job : public DartDependency,
class DartLibraryLoader::ImportJob : public Job {
public:
- ImportJob(DartLibraryLoader* loader, const String& name) : Job(loader, name) {
+ ImportJob(DartLibraryLoader* loader, const std::string& name) : Job(loader, name) {
TRACE_EVENT_ASYNC_BEGIN1("sky", "DartLibraryLoader::ImportJob", this, "url",
- name.ascii().toStdString());
+ name);
}
private:
@@ -78,10 +78,10 @@ class DartLibraryLoader::ImportJob : public Job {
class DartLibraryLoader::SourceJob : public Job {
public:
- SourceJob(DartLibraryLoader* loader, const String& name, Dart_Handle library)
+ SourceJob(DartLibraryLoader* loader, const std::string& name, Dart_Handle library)
: Job(loader, name), library_(loader->dart_state(), library) {
TRACE_EVENT_ASYNC_BEGIN1("sky", "DartLibraryLoader::SourceJob", this, "url",
- name.ascii().toStdString());
+ name);
}
Dart_PersistentHandle library() const { return library_.value(); }
@@ -207,24 +207,26 @@ void DartLibraryLoader::WaitForDependencies(
adoptPtr(new DependencyWatcher(dependencies, callback)));
}
-void DartLibraryLoader::LoadLibrary(const String& name) {
- const auto& result = pending_libraries_.add(name, nullptr);
- if (result.isNewEntry) {
+void DartLibraryLoader::LoadLibrary(const std::string& name) {
+ const auto& result = pending_libraries_.insert(std::make_pair(name, nullptr));
+ if (result.second) {
+ // New entry.
OwnPtr<Job> job = adoptPtr(new ImportJob(this, name));
- result.storedValue->value = job.get();
+ result.first->second = job.get();
jobs_.add(job.release());
}
if (dependency_catcher_)
- dependency_catcher_->AddDependency(result.storedValue->value);
+ dependency_catcher_->AddDependency(result.first->second);
}
Dart_Handle DartLibraryLoader::Import(Dart_Handle library, Dart_Handle url) {
- LoadLibrary(StringFromDart(url));
+ LoadLibrary(StdStringFromDart(url));
return Dart_True();
}
Dart_Handle DartLibraryLoader::Source(Dart_Handle library, Dart_Handle url) {
- OwnPtr<Job> job = adoptPtr(new SourceJob(this, StringFromDart(url), library));
+ OwnPtr<Job> job =
+ adoptPtr(new SourceJob(this, StdStringFromDart(url), library));
if (dependency_catcher_)
dependency_catcher_->AddDependency(job.get());
jobs_.add(job.release());
@@ -245,14 +247,14 @@ void DartLibraryLoader::DidCompleteImportJob(
WatcherSignaler watcher_signaler(*this, job);
Dart_Handle result = Dart_LoadLibrary(
- StringToDart(dart_state_, job->name()),
+ StdStringToDart(job->name()),
Dart_NewStringFromUTF8(buffer.data(), buffer.size()), 0, 0);
if (Dart_IsError(result)) {
- LOG(ERROR) << "Error Loading " << job->name().utf8().data() << " "
+ LOG(ERROR) << "Error Loading " << job->name() << " "
<< Dart_GetError(result);
}
- pending_libraries_.remove(job->name());
+ pending_libraries_.erase(job->name());
jobs_.remove(job);
}
@@ -266,11 +268,11 @@ void DartLibraryLoader::DidCompleteSourceJob(
Dart_Handle result = Dart_LoadSource(
Dart_HandleFromPersistent(job->library()),
- StringToDart(dart_state_, job->name()),
+ StdStringToDart(job->name()),
Dart_NewStringFromUTF8(buffer.data(), buffer.size()), 0, 0);
if (Dart_IsError(result)) {
- LOG(ERROR) << "Error Loading " << job->name().utf8().data() << " "
+ LOG(ERROR) << "Error Loading " << job->name() << " "
<< Dart_GetError(result);
}
@@ -283,7 +285,7 @@ void DartLibraryLoader::DidFailJob(Job* job) {
WatcherSignaler watcher_signaler(*this, job);
- LOG(ERROR) << "Library Load failed: " << job->name().utf8().data();
+ LOG(ERROR) << "Library Load failed: " << job->name();
// TODO(eseidel): Call Dart_LibraryHandleError in the SourceJob case?
jobs_.remove(job);

Powered by Google App Engine
This is Rietveld 408576698