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

Side by Side Diff: chrome/browser/extensions/api/declarative/declarative_rule.h

Issue 16703018: Rewrite scoped_ptr<T>(NULL) to use the default ctor in chrome/. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // DeclarativeRule<>, DeclarativeConditionSet<>, and DeclarativeActionSet<> 5 // DeclarativeRule<>, DeclarativeConditionSet<>, and DeclarativeActionSet<>
6 // templates usable with multiple different declarativeFoo systems. These are 6 // templates usable with multiple different declarativeFoo systems. These are
7 // templated on the Condition and Action types that define the behavior of a 7 // templated on the Condition and Action types that define the behavior of a
8 // particular declarative event. 8 // particular declarative event.
9 9
10 #ifndef CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_DECLARATIVE_RULE_H__ 10 #ifndef CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_DECLARATIVE_RULE_H__
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 const AnyVector& conditions, 292 const AnyVector& conditions,
293 std::string* error) { 293 std::string* error) {
294 Conditions result; 294 Conditions result;
295 295
296 for (AnyVector::const_iterator i = conditions.begin(); 296 for (AnyVector::const_iterator i = conditions.begin();
297 i != conditions.end(); ++i) { 297 i != conditions.end(); ++i) {
298 CHECK(i->get()); 298 CHECK(i->get());
299 scoped_ptr<ConditionT> condition = 299 scoped_ptr<ConditionT> condition =
300 ConditionT::Create(url_matcher_condition_factory, **i, error); 300 ConditionT::Create(url_matcher_condition_factory, **i, error);
301 if (!error->empty()) 301 if (!error->empty())
302 return scoped_ptr<DeclarativeConditionSet>(NULL); 302 return scoped_ptr<DeclarativeConditionSet>();
303 result.push_back(make_linked_ptr(condition.release())); 303 result.push_back(make_linked_ptr(condition.release()));
304 } 304 }
305 305
306 URLMatcherIdToCondition match_id_to_condition; 306 URLMatcherIdToCondition match_id_to_condition;
307 std::vector<const ConditionT*> conditions_without_urls; 307 std::vector<const ConditionT*> conditions_without_urls;
308 URLMatcherConditionSet::Vector condition_sets; 308 URLMatcherConditionSet::Vector condition_sets;
309 309
310 for (typename Conditions::const_iterator i = result.begin(); 310 for (typename Conditions::const_iterator i = result.begin();
311 i != result.end(); ++i) { 311 i != result.end(); ++i) {
312 condition_sets.clear(); 312 condition_sets.clear();
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 *error = ""; 352 *error = "";
353 *bad_message = false; 353 *bad_message = false;
354 Actions result; 354 Actions result;
355 355
356 for (AnyVector::const_iterator i = actions.begin(); 356 for (AnyVector::const_iterator i = actions.begin();
357 i != actions.end(); ++i) { 357 i != actions.end(); ++i) {
358 CHECK(i->get()); 358 CHECK(i->get());
359 scoped_refptr<const ActionT> action = 359 scoped_refptr<const ActionT> action =
360 ActionT::Create(**i, error, bad_message); 360 ActionT::Create(**i, error, bad_message);
361 if (!error->empty() || *bad_message) 361 if (!error->empty() || *bad_message)
362 return scoped_ptr<DeclarativeActionSet>(NULL); 362 return scoped_ptr<DeclarativeActionSet>();
363 result.push_back(action); 363 result.push_back(action);
364 } 364 }
365 365
366 return scoped_ptr<DeclarativeActionSet>(new DeclarativeActionSet(result)); 366 return scoped_ptr<DeclarativeActionSet>(new DeclarativeActionSet(result));
367 } 367 }
368 368
369 template<typename ActionT> 369 template<typename ActionT>
370 void DeclarativeActionSet<ActionT>::Apply( 370 void DeclarativeActionSet<ActionT>::Apply(
371 const std::string& extension_id, 371 const std::string& extension_id,
372 const base::Time& extension_install_time, 372 const base::Time& extension_install_time,
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 } 475 }
476 476
477 template<typename ConditionT, typename ActionT> 477 template<typename ConditionT, typename ActionT>
478 int DeclarativeRule<ConditionT, ActionT>::GetMinimumPriority() const { 478 int DeclarativeRule<ConditionT, ActionT>::GetMinimumPriority() const {
479 return actions_->GetMinimumPriority(); 479 return actions_->GetMinimumPriority();
480 } 480 }
481 481
482 } // namespace extensions 482 } // namespace extensions
483 483
484 #endif // CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_DECLARATIVE_RULE_H__ 484 #endif // CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_DECLARATIVE_RULE_H__
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698