- #pragma once
- #include "molasses/parser_primitives.h"
-
- namespace molasses {
- template<architecture_t Arch = architecture>
- std::vector<std::string> initialize_stack();
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_return();
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_label(const std::string& target);
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_push_int32(int32_t target);
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_push_int64(int64_t target);
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_call(const std::string& target);
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_enter();
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_push_string_ptr(const symbol&);
-
- template<architecture_t Arch = architecture>
- std::vector<std::string> generate_string(const symbol&, const std::string&);
- }
|