69#ifndef LLVM_SUPPORT_MUSTACHE
70#define LLVM_SUPPORT_MUSTACHE
This file defines the StringMap class.
This file defines the BumpPtrAllocator interface.
This file supports working with JSON data.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringRef - Represent a constant reference to a string, i.e.
Saves strings in the provided stable storage and returns a StringRef with a stable character pointer.
An intrusive list with ownership and callbacks specified/controlled by ilist_traits,...
A Value is an JSON value of unknown type.
Template(const Template &)=delete
LLVM_ABI void registerPartial(std::string Name, std::string Partial)
Template & operator=(const Template &)=delete
LLVM_ABI void registerLambda(std::string Name, Lambda Lambda)
LLVM_ABI Template(StringRef TemplateStr, MustacheContext &Ctx)
Template & operator=(Template &&)=delete
LLVM_ABI void render(const llvm::json::Value &Data, llvm::raw_ostream &OS)
LLVM_ABI void overrideEscapeCharacters(DenseMap< char, std::string > Escapes)
This class implements an extremely fast bulk output stream that can only output to a stream.
This file defines classes to implement an intrusive doubly linked list class (i.e.
This file defines the ilist_node class template, which is a convenient base class for creating classe...
iplist< ASTNode > ASTNodeList
std::function< llvm::json::Value(std::string)> SectionLambda
std::function< llvm::json::Value()> Lambda
DenseMap< char, std::string > EscapeMap
BumpPtrAllocatorImpl BumpPtrAllocator
The standard BumpPtrAllocator which just uses the default template parameters.
FunctionAddr VTableAddr uintptr_t uintptr_t Data
StringMap< Lambda > Lambdas
StringMap< SectionLambda > SectionLambdas
BumpPtrAllocator & Allocator
MustacheContext(BumpPtrAllocator &Allocator, StringSaver &Saver)
StringMap< AstPtr > Partials