llvm/llvm/utils/TableGen/OptParserEmitter.cpp

//===- OptParserEmitter.cpp - Table Driven Command Line Parsing -----------===//
//
// 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
//
//===----------------------------------------------------------------------===//

#include "Common/OptEmitter.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/TableGen/Record.h"
#include "llvm/TableGen/TableGenBackend.h"
#include <cstring>
#include <map>
#include <memory>

usingnamespacellvm;

static std::string getOptionName(const Record &R) {}

static raw_ostream &write_cstring(raw_ostream &OS, llvm::StringRef Str) {}

static std::string getOptionPrefixedName(const Record &R) {}

class MarshallingInfo {};

size_t MarshallingInfo::NextTableIndex =;

static MarshallingInfo createMarshallingInfo(const Record &R) {}

static void EmitHelpTextsForVariants(
    raw_ostream &OS, std::vector<std::pair<std::vector<std::string>, StringRef>>
                         HelpTextsForVariants) {}

/// OptParserEmitter - This tablegen backend takes an input .td file
/// describing a list of options and emits a data structure for parsing and
/// working with those options when given an input command line.
static void EmitOptParser(const RecordKeeper &Records, raw_ostream &OS) {}

static TableGen::Emitter::Opt X("gen-opt-parser-defs", EmitOptParser,
                                "Generate option definitions");