retdec
void_type.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_CTYPES_VOID_TYPE_H
8 #define RETDEC_CTYPES_VOID_TYPE_H
9 
10 #include <memory>
11 
12 #include "retdec/ctypes/type.h"
13 
14 namespace retdec {
15 namespace ctypes {
16 
20 class VoidType : public Type
21 {
22  public:
23  static std::shared_ptr<VoidType> create();
24 
25  virtual bool isVoid() const override;
26 
29  virtual void accept(Visitor *v) override;
31 
32  private:
33  // Instance is created by static method create().
34  VoidType();
35 };
36 
37 } // namespace ctypes
38 } // namespace retdec
39 
40 #endif
A base class of all C types.
Definition: type.h:22
A base class of all C-types' visitors.
Definition: visitor.h:33
A representation of void type.
Definition: void_type.h:21
virtual bool isVoid() const override
Definition: void_type.cpp:35
static std::shared_ptr< VoidType > create()
Creates VoidType.
Definition: void_type.cpp:26
VoidType()
Constructs a new void type.
Definition: void_type.cpp:18
virtual void accept(Visitor *v) override
Visitor pattern implementation.
Definition: void_type.cpp:40
A base class of all C types.
Definition: archive_wrapper.h:19