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

Side by Side Diff: tools/gn/build_settings.cc

Issue 2492273002: GN: Always check for bad items. (Closed)
Patch Set: Created 4 years, 1 month 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
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 #include "tools/gn/build_settings.h" 5 #include "tools/gn/build_settings.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/files/file_util.h" 9 #include "base/files/file_util.h"
10 #include "tools/gn/filesystem_utils.h" 10 #include "tools/gn/filesystem_utils.h"
11 11
12 BuildSettings::BuildSettings() 12 BuildSettings::BuildSettings() {
13 : check_for_bad_items_(true) {
14 } 13 }
15 14
16 BuildSettings::BuildSettings(const BuildSettings& other) 15 BuildSettings::BuildSettings(const BuildSettings& other)
17 : root_path_(other.root_path_), 16 : root_path_(other.root_path_),
18 root_path_utf8_(other.root_path_utf8_), 17 root_path_utf8_(other.root_path_utf8_),
19 secondary_source_path_(other.secondary_source_path_), 18 secondary_source_path_(other.secondary_source_path_),
20 python_path_(other.python_path_), 19 python_path_(other.python_path_),
21 build_config_file_(other.build_config_file_), 20 build_config_file_(other.build_config_file_),
22 build_dir_(other.build_dir_), 21 build_dir_(other.build_dir_),
23 build_args_(other.build_args_), 22 build_args_(other.build_args_) {
24 check_for_bad_items_(true) {
25 } 23 }
26 24
27 BuildSettings::~BuildSettings() { 25 BuildSettings::~BuildSettings() {
28 } 26 }
29 27
30 void BuildSettings::SetRootPath(const base::FilePath& r) { 28 void BuildSettings::SetRootPath(const base::FilePath& r) {
31 DCHECK(r.value()[r.value().size() - 1] != base::FilePath::kSeparators[0]); 29 DCHECK(r.value()[r.value().size() - 1] != base::FilePath::kSeparators[0]);
32 root_path_ = r.NormalizePathSeparatorsTo('/'); 30 root_path_ = r.NormalizePathSeparatorsTo('/');
33 root_path_utf8_ = FilePathToUTF8(root_path_); 31 root_path_utf8_ = FilePathToUTF8(root_path_);
34 } 32 }
(...skipping 22 matching lines...) Expand all
57 base::FilePath BuildSettings::GetFullPathSecondary( 55 base::FilePath BuildSettings::GetFullPathSecondary(
58 const SourceDir& dir) const { 56 const SourceDir& dir) const {
59 return dir.Resolve(secondary_source_path_).NormalizePathSeparatorsTo('/'); 57 return dir.Resolve(secondary_source_path_).NormalizePathSeparatorsTo('/');
60 } 58 }
61 59
62 void BuildSettings::ItemDefined(std::unique_ptr<Item> item) const { 60 void BuildSettings::ItemDefined(std::unique_ptr<Item> item) const {
63 DCHECK(item); 61 DCHECK(item);
64 if (!item_defined_callback_.is_null()) 62 if (!item_defined_callback_.is_null())
65 item_defined_callback_.Run(std::move(item)); 63 item_defined_callback_.Run(std::move(item));
66 } 64 }
OLDNEW
« no previous file with comments | « tools/gn/build_settings.h ('k') | tools/gn/command_analyze.cc » ('j') | tools/gn/command_args.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698