source: src/SynTree/SynTree.h@ 2e60a1a

ADT aaron-thesis arm-eh ast-experimental cleanup-dtors ctor deferred_resn demangler enum forall-pointer-decay gc_noraii jacob/cs343-translation jenkins-sandbox memory new-ast new-ast-unique-expr new-env no_list persistent-indexer pthread-emulation qualifiedEnum resolv-new string with_gc
Last change on this file since 2e60a1a was 4040425, checked in by Peter A. Buhr <pabuhr@…>, 10 years ago

change keyword type to otype and context to trait

  • Property mode set to 100644
File size: 2.2 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//
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
[4040425]12// Last Modified On : Wed Mar 2 17:29:00 2016
13// Update Count : 4
[0dd3a2f]14//
[51b73452]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;
[51b73452]33class NamedTypeDecl;
34class TypeDecl;
35class FtypeDecl;
36class DtypeDecl;
37class TypedefDecl;
38
39class Statement;
40class CompoundStmt;
41class ExprStmt;
[7f5566b]42class AsmStmt;
[51b73452]43class IfStmt;
44class WhileStmt;
45class ForStmt;
46class SwitchStmt;
47class ChooseStmt;
48class FallthruStmt;
49class CaseStmt;
50class BranchStmt;
51class ReturnStmt;
52class TryStmt;
53class CatchStmt;
54class FinallyStmt;
55class NullStmt;
56class DeclStmt;
57class NullStmt;
58
59class Expression;
60class ApplicationExpr;
61class UntypedExpr;
62class NameExpr;
63class AddressExpr;
64class LabelAddressExpr;
65class CastExpr;
66class MemberExpr;
67class UntypedMemberExpr;
68class VariableExpr;
69class ConstantExpr;
70class SizeofExpr;
[47534159]71class AlignofExpr;
[2a4b088]72class UntypedOffsetofExpr;
[25a054f]73class OffsetofExpr;
[51b73452]74class AttrExpr;
75class LogicalExpr;
76class ConditionalExpr;
77class CommaExpr;
78class TupleExpr;
79class SolvedTupleExpr;
80class TypeExpr;
[7f5566b]81class AsmExpr;
[51b73452]82class UntypedValofExpr;
83
84class Type;
85class VoidType;
86class BasicType;
87class PointerType;
88class ArrayType;
89class FunctionType;
90class ReferenceToType;
91class StructInstType;
92class UnionInstType;
93class EnumInstType;
[4040425]94class TraitInstType;
[51b73452]95class TypeInstType;
96class TupleType;
97class TypeofType;
98class AttrType;
[44b7088]99class VarArgsType;
[51b73452]100
101class Initializer;
102class SingleInit;
103class ListInit;
104
105class Subrange;
106
107//template <class T> // emulate a union with templates?
108class Constant;
109
110typedef std::string Label;
111typedef unsigned int UniqueId;
112
113class TypeSubstitution;
114
[0dd3a2f]115#endif // SYNTREE_H
[51b73452]116
[0dd3a2f]117// Local Variables: //
118// tab-width: 4 //
119// mode: c++ //
120// compile-command: "make install" //
121// End: //
Note: See TracBrowser for help on using the repository browser.