source: translator/ControlStruct/LabelGenerator.h@ 643a2e1

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 643a2e1 was d9a0e76, checked in by Peter A. Buhr <pabuhr@…>, 11 years ago

remove Parser.old, add -XCFA to driver, copy ptrdiff_t from stddef.h in preclude, remove casts from initialization constants, adjust formatting

  • Property mode set to 100644
File size: 499 bytes
Line 
1#ifndef LABEL_GENERATOR_H
2#define LABEL_GENERATOR_H
3
4#include "SynTree/SynTree.h"
5
6namespace ControlStruct {
7 class LabelGenerator {
8 public:
9 static LabelGenerator *getGenerator();
10 Label newLabel();
11 void reset() { current = 0; }
12 void rewind() { current--; }
13 protected:
14 LabelGenerator(): current(0) {}
15 private:
16 int current;
17 static LabelGenerator *labelGenerator;
18 };
19} // namespace ControlStruct
20
21#endif // LABEL_GENERATOR_H
22
23/*
24 Local Variables:
25 mode: c++
26 End:
27*/
Note: See TracBrowser for help on using the repository browser.