| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/bundle_file_rule.h" | 5 #include "tools/gn/bundle_file_rule.h" |
| 6 | 6 |
| 7 #include "tools/gn/output_file.h" | 7 #include "tools/gn/output_file.h" |
| 8 #include "tools/gn/settings.h" | 8 #include "tools/gn/settings.h" |
| 9 #include "tools/gn/substitution_pattern.h" | 9 #include "tools/gn/substitution_pattern.h" |
| 10 #include "tools/gn/substitution_writer.h" | 10 #include "tools/gn/substitution_writer.h" |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 const Settings* settings, | 22 const Settings* settings, |
| 23 const BundleData& bundle_data, | 23 const BundleData& bundle_data, |
| 24 const SourceFile& source_file) const { | 24 const SourceFile& source_file) const { |
| 25 std::string output_path; | 25 std::string output_path; |
| 26 for (const auto& subrange : pattern_.ranges()) { | 26 for (const auto& subrange : pattern_.ranges()) { |
| 27 switch (subrange.type) { | 27 switch (subrange.type) { |
| 28 case SUBSTITUTION_LITERAL: | 28 case SUBSTITUTION_LITERAL: |
| 29 output_path.append(subrange.literal); | 29 output_path.append(subrange.literal); |
| 30 break; | 30 break; |
| 31 case SUBSTITUTION_BUNDLE_ROOT_DIR: | 31 case SUBSTITUTION_BUNDLE_ROOT_DIR: |
| 32 output_path.append(bundle_data.root_dir()); | 32 output_path.append(bundle_data.root_dir().value()); |
| 33 break; | 33 break; |
| 34 case SUBSTITUTION_BUNDLE_RESOURCES_DIR: | 34 case SUBSTITUTION_BUNDLE_RESOURCES_DIR: |
| 35 output_path.append(bundle_data.resources_dir()); | 35 output_path.append(bundle_data.resources_dir().value()); |
| 36 break; | 36 break; |
| 37 case SUBSTITUTION_BUNDLE_EXECUTABLE_DIR: | 37 case SUBSTITUTION_BUNDLE_EXECUTABLE_DIR: |
| 38 output_path.append(bundle_data.executable_dir()); | 38 output_path.append(bundle_data.executable_dir().value()); |
| 39 break; | 39 break; |
| 40 case SUBSTITUTION_BUNDLE_PLUGINS_DIR: | 40 case SUBSTITUTION_BUNDLE_PLUGINS_DIR: |
| 41 output_path.append(bundle_data.plugins_dir()); | 41 output_path.append(bundle_data.plugins_dir().value()); |
| 42 break; | 42 break; |
| 43 default: | 43 default: |
| 44 output_path.append(SubstitutionWriter::GetSourceSubstitution( | 44 output_path.append(SubstitutionWriter::GetSourceSubstitution( |
| 45 settings, source_file, subrange.type, | 45 settings, source_file, subrange.type, |
| 46 SubstitutionWriter::OUTPUT_ABSOLUTE, SourceDir())); | 46 SubstitutionWriter::OUTPUT_ABSOLUTE, SourceDir())); |
| 47 break; | 47 break; |
| 48 } | 48 } |
| 49 } | 49 } |
| 50 return SourceFile(SourceFile::SWAP_IN, &output_path); | 50 return SourceFile(SourceFile::SWAP_IN, &output_path); |
| 51 } | 51 } |
| 52 | 52 |
| 53 OutputFile BundleFileRule::ApplyPatternToSourceAsOutputFile( | 53 OutputFile BundleFileRule::ApplyPatternToSourceAsOutputFile( |
| 54 const Settings* settings, | 54 const Settings* settings, |
| 55 const BundleData& bundle_data, | 55 const BundleData& bundle_data, |
| 56 const SourceFile& source_file) const { | 56 const SourceFile& source_file) const { |
| 57 return OutputFile(settings->build_settings(), | 57 return OutputFile(settings->build_settings(), |
| 58 ApplyPatternToSource(settings, bundle_data, source_file)); | 58 ApplyPatternToSource(settings, bundle_data, source_file)); |
| 59 } | 59 } |
| OLD | NEW |