| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef SRC_LIB_FIDL_CODEC_DISPLAY_OPTIONS_H_ |
| #define SRC_LIB_FIDL_CODEC_DISPLAY_OPTIONS_H_ |
| |
| struct ExtraGeneration { |
| enum class Kind { kCpp, kSummary, kTop }; |
| Kind kind; |
| std::string path; |
| ExtraGeneration(Kind kind, std::string_view path) : kind(kind), path(path) {} |
| }; |
| |
| struct DisplayOptions { |
| bool pretty_print = false; |
| bool with_process_info = false; |
| int columns = 0; |
| bool needs_colors = false; |
| bool extra_generation_needs_colors = false; |
| std::vector<ExtraGeneration> extra_generation; |
| bool dump_messages = false; |
| |
| void AddExtraGeneration(ExtraGeneration::Kind kind, std::string_view path) { |
| extra_generation.emplace_back(kind, path); |
| } |
| }; |
| |
| #endif // SRC_LIB_FIDL_CODEC_DISPLAY_OPTIONS_H_ |