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

Side by Side Diff: tools/gn/path_output.h

Issue 213353004: GN: Move towards only using / on Windows (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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 #ifndef TOOLS_GN_PATH_OUTPUT_H_ 5 #ifndef TOOLS_GN_PATH_OUTPUT_H_
6 #define TOOLS_GN_PATH_OUTPUT_H_ 6 #define TOOLS_GN_PATH_OUTPUT_H_
7 7
8 #include <iosfwd> 8 #include <iosfwd>
9 #include <string> 9 #include <string>
10 10
(...skipping 16 matching lines...) Expand all
27 // Controls whether writing directory names include the trailing slash. 27 // Controls whether writing directory names include the trailing slash.
28 // Often we don't want the trailing slash when writing out to a command line, 28 // Often we don't want the trailing slash when writing out to a command line,
29 // especially on Windows where it's a backslash and might be interpreted as 29 // especially on Windows where it's a backslash and might be interpreted as
30 // escaping the thing following it. 30 // escaping the thing following it.
31 enum DirSlashEnding { 31 enum DirSlashEnding {
32 DIR_INCLUDE_LAST_SLASH, 32 DIR_INCLUDE_LAST_SLASH,
33 DIR_NO_LAST_SLASH, 33 DIR_NO_LAST_SLASH,
34 }; 34 };
35 35
36 PathOutput(const SourceDir& current_dir, 36 PathOutput(const SourceDir& current_dir,
37 EscapingMode escaping, 37 EscapingMode escaping);
38 bool convert_slashes);
39 ~PathOutput(); 38 ~PathOutput();
40 39
41 // Read-only since inverse_current_dir_ is computed depending on this. 40 // Read-only since inverse_current_dir_ is computed depending on this.
42 EscapingMode escaping_mode() const { return options_.mode; } 41 EscapingMode escaping_mode() const { return options_.mode; }
43 42
44 const SourceDir& current_dir() const { return current_dir_; } 43 const SourceDir& current_dir() const { return current_dir_; }
45 44
46 // When true, converts slashes to the system-type path separators (on
47 // Windows, this is a backslash, this is a NOP otherwise).
48 //
49 // Read-only since inverse_current_dir_ is computed depending on this.
50 bool convert_slashes_to_system() const { return options_.convert_slashes; }
51
52 // When the output escaping is ESCAPE_SHELL, the escaper will normally put 45 // When the output escaping is ESCAPE_SHELL, the escaper will normally put
53 // quotes around suspect things. If this value is set to true, we'll disable 46 // quotes around suspect things. If this value is set to true, we'll disable
54 // the quoting feature. This means that in ESCAPE_SHELL mode, strings with 47 // the quoting feature. This means that in ESCAPE_SHELL mode, strings with
55 // spaces in them qon't be quoted. This mode is for when quoting is done at 48 // spaces in them qon't be quoted. This mode is for when quoting is done at
56 // some higher-level. Defaults to false. 49 // some higher-level. Defaults to false.
57 bool inhibit_quoting() const { return options_.inhibit_quoting; } 50 bool inhibit_quoting() const { return options_.inhibit_quoting; }
58 void set_inhibit_quoting(bool iq) { options_.inhibit_quoting = iq; } 51 void set_inhibit_quoting(bool iq) { options_.inhibit_quoting = iq; }
59 52
60 void WriteFile(std::ostream& out, const SourceFile& file) const; 53 void WriteFile(std::ostream& out, const SourceFile& file) const;
61 void WriteFile(std::ostream& out, const OutputFile& file) const; 54 void WriteFile(std::ostream& out, const OutputFile& file) const;
(...skipping 16 matching lines...) Expand all
78 71
79 // Uses system slashes if convert_slashes_to_system_. 72 // Uses system slashes if convert_slashes_to_system_.
80 std::string inverse_current_dir_; 73 std::string inverse_current_dir_;
81 74
82 // Since the inverse_current_dir_ depends on some of these, we don't expose 75 // Since the inverse_current_dir_ depends on some of these, we don't expose
83 // this directly to modification. 76 // this directly to modification.
84 EscapeOptions options_; 77 EscapeOptions options_;
85 }; 78 };
86 79
87 #endif // TOOLS_GN_PATH_OUTPUT_H_ 80 #endif // TOOLS_GN_PATH_OUTPUT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698