summaryrefslogtreecommitdiff
path: root/tiger-compiler/src/parse/fwd.hh
blob: 19ed898143cb70b8a9a449e1aeb6e6ac3859bbf5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/**
 ** \file parse/fwd.hh
 ** \brief Forward declarations for the parse module.
 */

#pragma once

#include <misc/variant.hh>

// From ast/.
namespace ast
{
  class Exp;
  class ChunkList;

} // namespace ast

namespace parse
{
  // From scantiger.hh.
  class Lexer;

  // From parsetiger.yy.
  class parser;

  // From location.hh.
  class location;

  // From tiger-driver.hh.
  class TigerDriver;

  // From tweast.hh
  class Tweast;

  /// Result of a parse: an Exp (*.tig) or a ChunkList (*.tih).
  using ast_type = misc::variant<ast::Exp*, ast::ChunkList*>;

} // namespace parse