llvm/llvm/lib/Demangle/DLangDemangle.cpp

//===--- DLangDemangle.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
//
//===----------------------------------------------------------------------===//
///
/// \file
/// This file defines a demangler for the D programming language as specified
/// in the ABI specification, available at:
/// https://dlang.org/spec/abi.html#name_mangling
///
//===----------------------------------------------------------------------===//

#include "llvm/Demangle/Demangle.h"
#include "llvm/Demangle/StringViewExtras.h"
#include "llvm/Demangle/Utility.h"

#include <cctype>
#include <cstring>
#include <limits>
#include <string_view>

usingnamespacellvm;
OutputBuffer;
starts_with;

namespace {

/// Demangle information structure.
struct Demangler {};

} // namespace

void Demangler::decodeNumber(std::string_view &Mangled, unsigned long &Ret) {}

bool Demangler::decodeBackrefPos(std::string_view &Mangled, long &Ret) {}

bool Demangler::decodeBackref(std::string_view &Mangled,
                              std::string_view &Ret) {}

void Demangler::parseSymbolBackref(OutputBuffer *Demangled,
                                   std::string_view &Mangled) {}

void Demangler::parseTypeBackref(std::string_view &Mangled) {}

bool Demangler::isSymbolName(std::string_view Mangled) {}

void Demangler::parseMangle(OutputBuffer *Demangled,
                            std::string_view &Mangled) {}

void Demangler::parseQualified(OutputBuffer *Demangled,
                               std::string_view &Mangled) {}

void Demangler::parseIdentifier(OutputBuffer *Demangled,
                                std::string_view &Mangled) {}

bool Demangler::parseType(std::string_view &Mangled) {}

void Demangler::parseLName(OutputBuffer *Demangled, std::string_view &Mangled,
                           unsigned long Len) {}

Demangler::Demangler(std::string_view Mangled)
    :{}

const char *Demangler::parseMangle(OutputBuffer *Demangled) {}

char *llvm::dlangDemangle(std::string_view MangledName) {}