source: src/SynTree/SynTree.h @ 9b4f329

ADTarm-ehast-experimentalcleanup-dtorsenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
Last change on this file since 9b4f329 was 9b4f329, checked in by Aaron Moss <a3moss@…>, 5 years ago

Finished porting AST::Expr subclasses

  • Property mode set to 100644
File size: 2.7 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 : Andrew Beach
12// Last Modified On : Mon Jul 24 16:54:00 2017
13// Update Count     : 11
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 TraitDecl;
34class NamedTypeDecl;
35class TypeDecl;
36class FtypeDecl;
37class DtypeDecl;
38class TypedefDecl;
39class AsmDecl;
40class StaticAssertDecl;
41
42class Statement;
43class CompoundStmt;
44class ExprStmt;
45class AsmStmt;
46class DirectiveStmt;
47class IfStmt;
48class WhileStmt;
49class ForStmt;
50class SwitchStmt;
51class CaseStmt;
52class BranchStmt;
53class ReturnStmt;
54class ThrowStmt;
55class TryStmt;
56class CatchStmt;
57class FinallyStmt;
58class WaitForStmt;
59class WithStmt;
60class NullStmt;
61class DeclStmt;
62class NullStmt;
63class ImplicitCtorDtorStmt;
64
65class Expression;
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 AttrExpr;
84class LogicalExpr;
85class ConditionalExpr;
86class CommaExpr;
87class TypeExpr;
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;
113class ReferenceToType;
114class StructInstType;
115class UnionInstType;
116class EnumInstType;
117class TraitInstType;
118class TypeInstType;
119class TupleType;
120class TypeofType;
121class AttrType;
122class VarArgsType;
123class ZeroType;
124class OneType;
125class GlobalScopeType;
126
127class Designation;
128class Initializer;
129class SingleInit;
130class ListInit;
131class ConstructorInit;
132
133//template <class T>    // emulate a union with templates?
134class Constant;
135
136// typedef std::string Label;
137class Label;
138typedef unsigned int UniqueId;
139
140class TypeSubstitution;
141
142// gcc attribute
143class Attribute;
144
145// Local Variables: //
146// tab-width: 4 //
147// mode: c++ //
148// compile-command: "make install" //
149// End: //
Note: See TracBrowser for help on using the repository browser.