source: src/AST/Fwd.hpp @ f6e6a55

ADTast-experimentalpthread-emulationqualifiedEnum
Last change on this file since f6e6a55 was f6e6a55, checked in by Andrew Beach <ajbeach@…>, 2 years ago

Added ast::WaitForClause? and changed ast::WaitForStmt? to use it. This simplified a lot of the internal code.

  • Property mode set to 100644
File size: 2.7 KB
RevLine 
[ee7a29f]1//
2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// Fwd.hpp -- Forward declarations of AST Types.
8//
9// Author           : Andrew Beach
10// Created On       : Wed May  8 16:05:00 2019
[2d019af]11// Last Modified By : Peter A. Buhr
[3b0bc16]12// Last Modified On : Tue Feb  1 09:08:33 2022
13// Update Count     : 5
[ee7a29f]14//
15
16#pragma once
17
[e0115286]18#include "AST/Node.hpp"
19
[ee7a29f]20namespace ast {
21
22class ParseNode;
23
24class Decl;
25class DeclWithType;
26class ObjectDecl;
27class FunctionDecl;
28class AggregateDecl;
29class StructDecl;
30class UnionDecl;
31class EnumDecl;
32class TraitDecl;
33class NamedTypeDecl;
34class TypeDecl;
35class TypedefDecl;
36class AsmDecl;
[2d019af]37class DirectiveDecl;
[ee7a29f]38class StaticAssertDecl;
39
40class Stmt;
41class CompoundStmt;
42class ExprStmt;
43class AsmStmt;
44class DirectiveStmt;
45class IfStmt;
[3b0bc16]46class WhileDoStmt;
[ee7a29f]47class ForStmt;
48class SwitchStmt;
[400b8be]49class CaseClause;
[ee7a29f]50class BranchStmt;
51class ReturnStmt;
52class ThrowStmt;
53class TryStmt;
[400b8be]54class CatchClause;
55class FinallyClause;
[37cdd97]56class SuspendStmt;
[ee7a29f]57class WaitForStmt;
[f6e6a55]58class WaitForClause;
[ee7a29f]59class WithStmt;
60class DeclStmt;
61class NullStmt;
62class ImplicitCtorDtorStmt;
[6cebfef]63class MutexStmt;
[ee7a29f]64
65class Expr;
66class ApplicationExpr;
67class UntypedExpr;
68class NameExpr;
69class AddressExpr;
70class LabelAddressExpr;
71class CastExpr;
72class KeywordCastExpr;
73class VirtualCastExpr;
74class MemberExpr;
75class UntypedMemberExpr;
76class VariableExpr;
77class ConstantExpr;
78class SizeofExpr;
79class AlignofExpr;
80class UntypedOffsetofExpr;
81class OffsetofExpr;
82class OffsetPackExpr;
83class LogicalExpr;
84class ConditionalExpr;
85class CommaExpr;
86class TypeExpr;
[4ec9513]87class DimensionExpr;
[ee7a29f]88class AsmExpr;
89class ImplicitCopyCtorExpr;
90class ConstructorExpr;
91class CompoundLiteralExpr;
92class RangeExpr;
93class UntypedTupleExpr;
94class TupleExpr;
95class TupleIndexExpr;
96class TupleAssignExpr;
97class StmtExpr;
98class UniqueExpr;
99class UntypedInitExpr;
100class InitExpr;
101class DeletedExpr;
102class DefaultArgExpr;
103class GenericExpr;
104
105class Type;
106class VoidType;
107class BasicType;
108class PointerType;
109class ArrayType;
110class ReferenceType;
111class QualifiedType;
112class FunctionType;
[98e8b3b]113class BaseInstType;
[923d25a]114template<typename decl_t> class SueInstType;
115using StructInstType = SueInstType<StructDecl>;
116using UnionInstType = SueInstType<UnionDecl>;
117using EnumInstType = SueInstType<EnumDecl>;
[ee7a29f]118class TraitInstType;
119class TypeInstType;
120class TupleType;
121class TypeofType;
[3945abe]122class VTableType;
[ee7a29f]123class VarArgsType;
124class ZeroType;
125class OneType;
126class GlobalScopeType;
127
128class Designation;
129class Init;
130class SingleInit;
131class ListInit;
132class ConstructorInit;
133
134class Label;
135
136class Attribute;
137
[fb2bde4]138class SymbolTable;
139class TypeEnvironment;
[ee7a29f]140class TypeSubstitution;
141
142typedef unsigned int UniqueId;
143
[1f7dc61]144class TranslationUnit;
[39d8950]145class TranslationGlobal;
[490fb92e]146
[ee7a29f]147}
Note: See TracBrowser for help on using the repository browser.