1
//! \file
2
/*
3
**  Copyright (C) - Triton
4
**
5
**  This program is under the terms of the Apache License 2.0.
6
*/
7

8
#ifndef TRITON_ASTREPRESENTATIONINTERFACE_HPP
9
#define TRITON_ASTREPRESENTATIONINTERFACE_HPP
10

11
#include <iostream>
12

13
#include <triton/ast.hpp>
14
#include <triton/dllexport.hpp>
15

16

17

18
//! The Triton namespace
19
namespace triton {
20
/*!
21
 *  \addtogroup triton
22
 *  @{
23
 */
24

25
  //! The AST namespace
26
  namespace ast {
27
  /*!
28
   *  \ingroup triton
29
   *  \addtogroup ast
30
   *  @{
31
   */
32

33
    //! The Representations namespace
34
    namespace representations {
35
    /*!
36
     *  \ingroup ast
37
     *  \addtogroup representations
38
     *  @{
39
     */
40

41
      /*!
42
       *  \interface AstRepresentationInterface
43
       *  \brief The AST representation interface.
44
       */
45 1
      class AstRepresentationInterface {
46
        public:
47
          //! Constructor.
48 1
          TRITON_EXPORT virtual ~AstRepresentationInterface(){};
49
          //! Entry point of print.
50
          TRITON_EXPORT virtual std::ostream& print(std::ostream& stream, triton::ast::AbstractNode* node) = 0;
51
      };
52

53
    /*! @} End of representations namespace */
54
    };
55
  /*! @} End of ast namespace */
56
  };
57
/*! @} End of triton namespace */
58
};
59

60
#endif /* TRITON_ASTREPRESENTATIONINTERFACE_HPP */

Read our documentation on viewing source code .

Loading