aboutsummaryrefslogtreecommitdiff
path: root/asm/preprocesser.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'asm/preprocesser.hpp')
-rw-r--r--asm/preprocesser.hpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/asm/preprocesser.hpp b/asm/preprocesser.hpp
index aac3041..4938d4e 100644
--- a/asm/preprocesser.hpp
+++ b/asm/preprocesser.hpp
@@ -42,6 +42,21 @@ struct pp_err_t
std::ostream &operator<<(std::ostream &, pp_err_t &);
+struct pp_unit_t
+{
+ const token_t *const token;
+ struct
+ {
+ std::string_view name;
+ std::vector<pp_unit_t> elements;
+ } container;
+
+ pp_unit_t(const token_t *const);
+ pp_unit_t(std::string_view, std::vector<pp_unit_t>);
+};
+
+std::vector<pp_unit_t> tokens_to_units(const std::vector<token_t *> &);
+pp_err_t preprocess_use(std::vector<pp_unit_t> &);
pp_err_t preprocesser(const std::vector<token_t *> &, std::vector<token_t *> &);
#endif