//===- LLDBOptionDefEmitter.cpp -------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // These tablegen backends emits LLDB's OptionDefinition values for different // LLDB commands. // //===----------------------------------------------------------------------===// #include "LLDBTableGenBackends.h" #include "LLDBTableGenUtils.h" #include "llvm/ADT/StringExtras.h" #include "llvm/TableGen/Record.h" #include "llvm/TableGen/StringMatcher.h" #include "llvm/TableGen/TableGenBackend.h" #include <vector> usingnamespacellvm; usingnamespacelldb_private; namespace { struct CommandOption { … }; } // namespace static void emitOption(const CommandOption &O, raw_ostream &OS) { … } /// Emits all option initializers to the raw_ostream. static void emitOptions(std::string Command, ArrayRef<const Record *> Records, raw_ostream &OS) { … } void lldb_private::EmitOptionDefs(const RecordKeeper &Records, raw_ostream &OS) { … }