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

arm-ehjacob/cs343-translationnew-ast-unique-expr
Last change on this file since 2d019af was 2d019af, checked in by Peter A. Buhr <pabuhr@…>, 9 months ago

parser global pragmas, fixes #241

  • 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 : Peter A. Buhr
12// Last Modified On : Fri Mar 12 18:56:44 2021
13// Update Count     : 13
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 TypedefDecl;
37class AsmDecl;
38class DirectiveDecl;
39class StaticAssertDecl;
40
41class Statement;
42class CompoundStmt;
43class ExprStmt;
44class AsmStmt;
45class DirectiveStmt;
46class IfStmt;
47class WhileStmt;
48class ForStmt;
49class SwitchStmt;
50class CaseStmt;
51class BranchStmt;
52class ReturnStmt;
53class ThrowStmt;
54class TryStmt;
55class CatchStmt;
56class FinallyStmt;
57class SuspendStmt;
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 LogicalExpr;
84class ConditionalExpr;
85class CommaExpr;
86class TypeExpr;
87class AsmExpr;
88class ImplicitCopyCtorExpr;
89class ConstructorExpr;
90class CompoundLiteralExpr;
91class RangeExpr;
92class UntypedTupleExpr;
93class TupleExpr;
94class TupleIndexExpr;
95class TupleAssignExpr;
96class StmtExpr;
97class UniqueExpr;
98class UntypedInitExpr;
99class InitExpr;
100class DeletedExpr;
101class DefaultArgExpr;
102class GenericExpr;
103
104class Type;
105class VoidType;
106class BasicType;
107class PointerType;
108class ArrayType;
109class ReferenceType;
110class QualifiedType;
111class FunctionType;
112class ReferenceToType;
113class StructInstType;
114class UnionInstType;
115class EnumInstType;
116class TraitInstType;
117class TypeInstType;
118class TupleType;
119class TypeofType;
120class AttrType;
121class VarArgsType;
122class ZeroType;
123class OneType;
124class GlobalScopeType;
125
126class Designation;
127class Initializer;
128class SingleInit;
129class ListInit;
130class ConstructorInit;
131
132//template <class T>    // emulate a union with templates?
133class Constant;
134
135// typedef std::string Label;
136class Label;
137typedef unsigned int UniqueId;
138
139class TypeSubstitution;
140
141// gcc attribute
142class Attribute;
143
144// Local Variables: //
145// tab-width: 4 //
146// mode: c++ //
147// compile-command: "make install" //
148// End: //
Note: See TracBrowser for help on using the repository browser.