mirror of
https://codeberg.org/ProgramSnail/lang_2023.git
synced 2025-12-05 22:48:42 +00:00
returned / brounght value handling in execute_visitor (fixes)
This commit is contained in:
parent
f6b50b16ae
commit
bad48a1da0
5 changed files with 113 additions and 58 deletions
|
|
@ -174,8 +174,6 @@ private:
|
|||
|
||||
utils::IdType current_value_;
|
||||
std::optional<LoopControlExpression> active_loop_control_expression_;
|
||||
std::optional<utils::IdType> returned_value_;
|
||||
std::optional<utils::IdType> brought_value_;
|
||||
std::optional<utils::IsConstModifier> is_const_definition_;
|
||||
bool case_matched_;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -16,6 +16,9 @@ using IdType = size_t;
|
|||
const std::string ClassInternalVarName = "self";
|
||||
const size_t MaxOperatorPrecedence = 4;
|
||||
|
||||
struct ValueReturnedMarker {};
|
||||
struct ValueBroughtMarker {};
|
||||
|
||||
enum class ReferenceModifier { Reference = 0, UniqueReference = 1, Dereference = 2 };
|
||||
enum class IsConstModifier { Const = 0, Var = 1 };
|
||||
enum class ClassInternalsModifier { Static = 0, Const = 1, Var = 2};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue