retdec
parentheses_node.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_PARENTHESES_NODE_H
8 #define RETDEC_PARENTHESES_NODE_H
9 
12 
13 namespace retdec {
14 namespace demangler {
15 namespace borland {
16 
17 /*
18  * @brief Representation of node that adds parentheses around another node in borland AST.
19  */
20 class ParenthesesNode : public Node
21 {
22 public:
23  static std::shared_ptr<ParenthesesNode> create(std::shared_ptr<Node> type);
24 
25  void printLeft(std::ostream &s) const override;
26 
27 private:
28  explicit ParenthesesNode(std::shared_ptr<Node> type);
29 
30 private:
31  std::shared_ptr<Node> _type;
32 };
33 
34 } // namespace borland
35 } // namespace demangler
36 } // namespace retdec
37 
38 #endif //RETDEC_PARENTHESES_NODE_H
Base class for all nodes in AST.
Definition: node.h:22
Definition: parentheses_node.h:21
ParenthesesNode(std::shared_ptr< Node > type)
Definition: parentheses_node.cpp:15
static std::shared_ptr< ParenthesesNode > create(std::shared_ptr< Node > type)
Definition: parentheses_node.cpp:25
std::shared_ptr< Node > _type
Definition: parentheses_node.h:31
void printLeft(std::ostream &s) const override
Definition: parentheses_node.cpp:18
Storage for all created nodes in borland AST.
Definition: archive_wrapper.h:19
Base class for all nodes in borland AST.