1296417Sdim//===-- OptionGroupOutputFile.h ---------------------------------*- C++ -*-===// 2254721Semaste// 3353358Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4353358Sdim// See https://llvm.org/LICENSE.txt for license information. 5353358Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6254721Semaste// 7254721Semaste//===----------------------------------------------------------------------===// 8254721Semaste 9254721Semaste#ifndef liblldb_OptionGroupOutputFile_h_ 10254721Semaste#define liblldb_OptionGroupOutputFile_h_ 11254721Semaste 12254721Semaste#include "lldb/Interpreter/OptionValueBoolean.h" 13254721Semaste#include "lldb/Interpreter/OptionValueFileSpec.h" 14314564Sdim#include "lldb/Interpreter/Options.h" 15254721Semaste 16254721Semastenamespace lldb_private { 17254721Semaste// OptionGroupOutputFile 18254721Semaste 19314564Sdimclass OptionGroupOutputFile : public OptionGroup { 20254721Semastepublic: 21314564Sdim OptionGroupOutputFile(); 22254721Semaste 23314564Sdim ~OptionGroupOutputFile() override; 24254721Semaste 25314564Sdim llvm::ArrayRef<OptionDefinition> GetDefinitions() override; 26254721Semaste 27321369Sdim Status SetOptionValue(uint32_t option_idx, llvm::StringRef option_value, 28321369Sdim ExecutionContext *execution_context) override; 29321369Sdim Status SetOptionValue(uint32_t, const char *, ExecutionContext *) = delete; 30314564Sdim 31314564Sdim void OptionParsingStarting(ExecutionContext *execution_context) override; 32314564Sdim 33314564Sdim const OptionValueFileSpec &GetFile() { return m_file; } 34314564Sdim 35314564Sdim const OptionValueBoolean &GetAppend() { return m_append; } 36314564Sdim 37314564Sdim bool AnyOptionWasSet() const { 38314564Sdim return m_file.OptionWasSet() || m_append.OptionWasSet(); 39314564Sdim } 40314564Sdim 41254721Semasteprotected: 42314564Sdim OptionValueFileSpec m_file; 43314564Sdim OptionValueBoolean m_append; 44254721Semaste}; 45254721Semaste 46254721Semaste} // namespace lldb_private 47254721Semaste 48296417Sdim#endif // liblldb_OptionGroupOutputFile_h_ 49