source: src/SynTree/SynTree.h @ 262f085

aaron-thesisarm-ehcleanup-dtorsdeferred_resndemanglerjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerresolv-newwith_gc
Last change on this file since 262f085 was 262f085, checked in by Rob Schluntz <rschlunt@…>, 4 years ago

add version of CodeGen::generate for a single node for use in gdb

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