source: src/SynTree/SynTree.h @ fa16264

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since fa16264 was 6b224a52, checked in by Thierry Delisle <tdelisle@…>, 7 years ago

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

  • Property mode set to 100644
File size: 2.6 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
[a5f0529]11// Last Modified By : Andrew Beach
12// Last Modified On : Mon Jul 24 16:54:00 2017
13// Update Count     : 11
[0dd3a2f]14//
[51b7345]15
[6b0b624]16#pragma once
[51b7345]17
18#include <string>
19#include <list>
20#include <map>
21#include <iostream>
22
[262f085f]23class BaseSyntaxNode;
24
[51b7345]25class Declaration;
26class DeclarationWithType;
27class ObjectDecl;
28class FunctionDecl;
29class AggregateDecl;
30class StructDecl;
31class UnionDecl;
32class EnumDecl;
[4040425]33class TraitDecl;
[51b7345]34class NamedTypeDecl;
35class TypeDecl;
36class FtypeDecl;
37class DtypeDecl;
38class TypedefDecl;
[e994912]39class AsmDecl;
[51b7345]40
41class Statement;
42class CompoundStmt;
43class ExprStmt;
[7f5566b]44class AsmStmt;
[51b7345]45class IfStmt;
46class WhileStmt;
47class ForStmt;
48class SwitchStmt;
49class CaseStmt;
50class BranchStmt;
51class ReturnStmt;
[daf1af8]52class ThrowStmt;
[51b7345]53class TryStmt;
54class CatchStmt;
55class FinallyStmt;
[135b431]56class WaitForStmt;
[51b7345]57class NullStmt;
58class DeclStmt;
59class NullStmt;
[f1b1e4c]60class ImplicitCtorDtorStmt;
[51b7345]61
62class Expression;
63class ApplicationExpr;
64class UntypedExpr;
65class NameExpr;
66class AddressExpr;
67class LabelAddressExpr;
68class CastExpr;
[a5f0529]69class VirtualCastExpr;
[51b7345]70class MemberExpr;
71class UntypedMemberExpr;
72class VariableExpr;
73class ConstantExpr;
74class SizeofExpr;
[47534159]75class AlignofExpr;
[2a4b088]76class UntypedOffsetofExpr;
[25a054f]77class OffsetofExpr;
[afc1045]78class OffsetPackExpr;
[51b7345]79class AttrExpr;
80class LogicalExpr;
81class ConditionalExpr;
82class CommaExpr;
83class TypeExpr;
[7f5566b]84class AsmExpr;
[db4ecc5]85class ImplicitCopyCtorExpr;
[b6fe7e6]86class ConstructorExpr;
[630a82a]87class CompoundLiteralExpr;
[b6fe7e6]88class UntypedValofExpr;
[8688ce1]89class RangeExpr;
[907eccb]90class UntypedTupleExpr;
[6eb8948]91class TupleExpr;
[3b58d91]92class TupleIndexExpr;
[6eb8948]93class TupleAssignExpr;
94class StmtExpr;
[3c13c03]95class UniqueExpr;
[e4d829b]96class UntypedInitExpr;
97class InitExpr;
[51b7345]98
99class Type;
100class VoidType;
101class BasicType;
102class PointerType;
103class ArrayType;
[ce8c12f]104class ReferenceType;
[51b7345]105class FunctionType;
106class ReferenceToType;
107class StructInstType;
108class UnionInstType;
109class EnumInstType;
[4040425]110class TraitInstType;
[51b7345]111class TypeInstType;
112class TupleType;
113class TypeofType;
114class AttrType;
[44b7088]115class VarArgsType;
[89e6ffc]116class ZeroType;
117class OneType;
[51b7345]118
[e4d829b]119class Designation;
[51b7345]120class Initializer;
121class SingleInit;
122class ListInit;
[71f4e4f]123class ConstructorInit;
[51b7345]124
125class Subrange;
126
127//template <class T>    // emulate a union with templates?
128class Constant;
129
[0f8e4ac]130// typedef std::string Label;
131class Label;
[51b7345]132typedef unsigned int UniqueId;
133
134class TypeSubstitution;
135
[7baed7d]136// gcc attribute
137class Attribute;
138
[0dd3a2f]139// Local Variables: //
140// tab-width: 4 //
141// mode: c++ //
142// compile-command: "make install" //
143// End: //
Note: See TracBrowser for help on using the repository browser.