diff options
Diffstat (limited to 'tiger-compiler/src/ast/escapable.hh')
| -rw-r--r-- | tiger-compiler/src/ast/escapable.hh | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tiger-compiler/src/ast/escapable.hh b/tiger-compiler/src/ast/escapable.hh new file mode 100644 index 0000000..b062114 --- /dev/null +++ b/tiger-compiler/src/ast/escapable.hh @@ -0,0 +1,30 @@ +/**
+ ** \file ast/escapable.hh
+ ** \brief Declaration of ast::Escapable.
+ */
+
+#pragma once
+
+#include <ast/fwd.hh>
+
+namespace ast
+{
+ /// Escapable.
+ class Escapable
+ {
+ // FIXME DONE: Some code was deleted here.
+ public:
+ // Returns whether the object is escaped
+ bool escape_get() const;
+ // Sets the escaped status of the object
+ void escape_set(bool escaped);
+ // Return definition site.
+ FunctionDec* def_get() const;
+ // Set definition site.
+ void def_set(FunctionDec*);
+ private:
+ bool escaping_ = true;
+ FunctionDec* def_ = nullptr;
+ };
+} // namespace ast
+#include <ast/escapable.hxx>
|
