source: src/SynTree/SynTree.h @ 3906301

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since 3906301 was 8688ce1, checked in by Peter A. Buhr <pabuhr@…>, 8 years ago

move case-list management into parser

  • Property mode set to 100644
File size: 2.3 KB
RevLine 
[0dd3a2f]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//
[71f4e4f]7// SynTree.h --
[0dd3a2f]8//
9// Author           : Richard C. Bilson
10// Created On       : Mon May 18 07:44:20 2015
[4e06c1e]11// Last Modified By : Peter A. Buhr
[8688ce1]12// Last Modified On : Wed Aug  3 17:02:34 2016
13// Update Count     : 7
[0dd3a2f]14//
[51b7345]15
16#ifndef SYNTREE_H
17#define SYNTREE_H
18
19#include <string>
20#include <list>
21#include <map>
22#include <iostream>
23
24class Declaration;
25class DeclarationWithType;
26class ObjectDecl;
27class FunctionDecl;
28class AggregateDecl;
29class StructDecl;
30class UnionDecl;
31class EnumDecl;
[4040425]32class TraitDecl;
[51b7345]33class NamedTypeDecl;
34class TypeDecl;
35class FtypeDecl;
36class DtypeDecl;
37class TypedefDecl;
38
39class Statement;
40class CompoundStmt;
41class ExprStmt;
[7f5566b]42class AsmStmt;
[51b7345]43class IfStmt;
44class WhileStmt;
45class ForStmt;
46class SwitchStmt;
47class CaseStmt;
48class BranchStmt;
49class ReturnStmt;
50class TryStmt;
51class CatchStmt;
52class FinallyStmt;
53class NullStmt;
54class DeclStmt;
55class NullStmt;
[f1b1e4c]56class ImplicitCtorDtorStmt;
[51b7345]57
58class Expression;
59class ApplicationExpr;
60class UntypedExpr;
61class NameExpr;
62class AddressExpr;
63class LabelAddressExpr;
64class CastExpr;
65class MemberExpr;
66class UntypedMemberExpr;
67class VariableExpr;
68class ConstantExpr;
69class SizeofExpr;
[47534159]70class AlignofExpr;
[2a4b088]71class UntypedOffsetofExpr;
[25a054f]72class OffsetofExpr;
[afc1045]73class OffsetPackExpr;
[51b7345]74class AttrExpr;
75class LogicalExpr;
76class ConditionalExpr;
77class CommaExpr;
78class TupleExpr;
79class SolvedTupleExpr;
80class TypeExpr;
[7f5566b]81class AsmExpr;
[db4ecc5]82class ImplicitCopyCtorExpr;
[51b7345]83class UntypedValofExpr;
[630a82a]84class CompoundLiteralExpr;
[8688ce1]85class RangeExpr;
[51b7345]86
87class Type;
88class VoidType;
89class BasicType;
90class PointerType;
91class ArrayType;
92class FunctionType;
93class ReferenceToType;
94class StructInstType;
95class UnionInstType;
96class EnumInstType;
[4040425]97class TraitInstType;
[51b7345]98class TypeInstType;
99class TupleType;
100class TypeofType;
101class AttrType;
[44b7088]102class VarArgsType;
[51b7345]103
104class Initializer;
105class SingleInit;
106class ListInit;
[71f4e4f]107class ConstructorInit;
[51b7345]108
109class Subrange;
110
111//template <class T>    // emulate a union with templates?
112class Constant;
113
[0f8e4ac]114// typedef std::string Label;
115class Label;
[51b7345]116typedef unsigned int UniqueId;
117
118class TypeSubstitution;
119
[7baed7d]120// gcc attribute
121class Attribute;
122
[0dd3a2f]123#endif // SYNTREE_H
[51b7345]124
[0dd3a2f]125// Local Variables: //
126// tab-width: 4 //
127// mode: c++ //
128// compile-command: "make install" //
129// End: //
Note: See TracBrowser for help on using the repository browser.