LLDB mainline
Classes | Namespaces | Functions
PostfixExpression.h File Reference
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Casting.h"
#include <vector>

Go to the source code of this file.

Classes

class  lldb_private::postfix::Node
 The base class for all nodes in the parsed postfix tree. More...
 
class  lldb_private::postfix::BinaryOpNode
 A node representing a binary expression. More...
 
class  lldb_private::postfix::InitialValueNode
 A node representing the canonical frame address. More...
 
class  lldb_private::postfix::IntegerNode
 A node representing an integer literal. More...
 
class  lldb_private::postfix::RegisterNode
 A node representing the value of a register with the given register number. More...
 
class  lldb_private::postfix::SymbolNode
 A node representing a symbolic reference to a named entity. More...
 
class  lldb_private::postfix::UnaryOpNode
 A node representing a unary operation. More...
 
class  lldb_private::postfix::Visitor< ResultT >
 A template class implementing a visitor pattern, but with a couple of twists: More...
 

Namespaces

namespace  lldb_private
 A class that represents a running process on the host machine.
 
namespace  lldb_private::postfix
 

Functions

bool lldb_private::postfix::ResolveSymbols (Node *&node, llvm::function_ref< Node *(SymbolNode &symbol)> replacer)
 A utility function for "resolving" SymbolNodes.
 
template<typename T , typename... Args>
T * lldb_private::postfix::MakeNode (llvm::BumpPtrAllocator &alloc, Args &&... args)
 
Nodelldb_private::postfix::ParseOneExpression (llvm::StringRef expr, llvm::BumpPtrAllocator &alloc)
 Parse the given postfix expression.
 
std::vector< std::pair< llvm::StringRef, Node * > > lldb_private::postfix::ParseFPOProgram (llvm::StringRef prog, llvm::BumpPtrAllocator &alloc)
 
void lldb_private::postfix::ToDWARF (Node &node, Stream &stream)
 Serialize the given expression tree as DWARF.