source: src/SynTree/SynTree.h @ fa2c005

ADT
Last change on this file since fa2c005 was fa2c005, checked in by JiadaL <j82liang@…>, 12 months ago

Finish Adt POC

  • Property mode set to 100644
File size: 2.9 KB
Line 
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// SynTree.h --
8//
9// Author           : Richard C. Bilson
10// Created On       : Mon May 18 07:44:20 2015
11// Last Modified By : Peter A. Buhr
12// Last Modified On : Tue Feb  1 09:22:33 2022
13// Update Count     : 14
14//
15
16#pragma once
17
18#include <string>
19#include <list>
20#include <map>
21#include <iostream>
22
23class BaseSyntaxNode;
24
25class Declaration;
26class DeclarationWithType;
27class ObjectDecl;
28class FunctionDecl;
29class AggregateDecl;
30class StructDecl;
31class UnionDecl;
32class EnumDecl;
33class AdtDecl;
34class TraitDecl;
35class NamedTypeDecl;
36class TypeDecl;
37class TypedefDecl;
38class AsmDecl;
39class DirectiveDecl;
40class StaticAssertDecl;
41class InlineMemberDecl;
42
43class Statement;
44class CompoundStmt;
45class ExprStmt;
46class AsmStmt;
47class DirectiveStmt;
48class IfStmt;
49class WhileDoStmt;
50class ForStmt;
51class SwitchStmt;
52class CaseStmt;
53class BranchStmt;
54class ReturnStmt;
55class ThrowStmt;
56class TryStmt;
57class CatchStmt;
58class FinallyStmt;
59class SuspendStmt;
60class WaitForStmt;
61class WithStmt;
62class NullStmt;
63class DeclStmt;
64class NullStmt;
65class ImplicitCtorDtorStmt;
66class MutexStmt;
67
68class Expression;
69class ApplicationExpr;
70class UntypedExpr;
71class NameExpr;
72class AddressExpr;
73class LabelAddressExpr;
74class CastExpr;
75class KeywordCastExpr;
76class VirtualCastExpr;
77class MemberExpr;
78class UntypedMemberExpr;
79class VariableExpr;
80class ConstantExpr;
81class SizeofExpr;
82class AlignofExpr;
83class UntypedOffsetofExpr;
84class OffsetofExpr;
85class OffsetPackExpr;
86class LogicalExpr;
87class ConditionalExpr;
88class CommaExpr;
89class TypeExpr;
90class DimensionExpr;
91class AsmExpr;
92class ImplicitCopyCtorExpr;
93class ConstructorExpr;
94class CompoundLiteralExpr;
95class RangeExpr;
96class UntypedTupleExpr;
97class TupleExpr;
98class TupleIndexExpr;
99class TupleAssignExpr;
100class StmtExpr;
101class UniqueExpr;
102class UntypedInitExpr;
103class InitExpr;
104class DeletedExpr;
105class DefaultArgExpr;
106class GenericExpr;
107class QualifiedNameExpr;
108
109class Type;
110class VoidType;
111class BasicType;
112class PointerType;
113class ArrayType;
114class ReferenceType;
115class QualifiedType;
116class FunctionType;
117class ReferenceToType;
118class StructInstType;
119class UnionInstType;
120class EnumInstType;
121class AdtInstType;
122class TraitInstType;
123class TypeInstType;
124class TupleType;
125class TypeofType;
126class VTableType;
127class AttrType;
128class VarArgsType;
129class ZeroType;
130class OneType;
131class GlobalScopeType;
132
133class Designation;
134class Initializer;
135class SingleInit;
136class ListInit;
137class ConstructorInit;
138
139//template <class T>    // emulate a union with templates?
140class Constant;
141
142// typedef std::string Label;
143class Label;
144typedef unsigned int UniqueId;
145
146class TypeSubstitution;
147
148// gcc attribute
149class Attribute;
150
151// Local Variables: //
152// tab-width: 4 //
153// mode: c++ //
154// compile-command: "make install" //
155// End: //
Note: See TracBrowser for help on using the repository browser.