rename alias_stack to alias_local
parent
99ec1a8583
commit
e8856f8f9d
|
@ -621,15 +621,15 @@ private:
|
|||
stack_state p_stack;
|
||||
};
|
||||
|
||||
struct LIBCUBESCRIPT_EXPORT alias_stack {
|
||||
alias_stack(state &cs, ident *a);
|
||||
~alias_stack();
|
||||
struct LIBCUBESCRIPT_EXPORT alias_local {
|
||||
alias_local(state &cs, ident *a);
|
||||
~alias_local();
|
||||
|
||||
alias_stack(alias_stack const &) = delete;
|
||||
alias_stack(alias_stack &&) = delete;
|
||||
alias_local(alias_local const &) = delete;
|
||||
alias_local(alias_local &&) = delete;
|
||||
|
||||
alias_stack &operator=(alias_stack const &) = delete;
|
||||
alias_stack &operator=(alias_stack &&v) = delete;
|
||||
alias_local &operator=(alias_local const &) = delete;
|
||||
alias_local &operator=(alias_local &&v) = delete;
|
||||
|
||||
alias *get_alias() noexcept { return p_alias; }
|
||||
alias const *get_alias() const noexcept { return p_alias; }
|
||||
|
|
|
@ -385,7 +385,7 @@ LIBCUBESCRIPT_EXPORT int command::get_num_args() const {
|
|||
|
||||
/* external API for alias stack management */
|
||||
|
||||
LIBCUBESCRIPT_EXPORT alias_stack::alias_stack(state &cs, ident *a) {
|
||||
LIBCUBESCRIPT_EXPORT alias_local::alias_local(state &cs, ident *a) {
|
||||
if (!a || !a->is_alias() || (a->get_flags() & IDENT_FLAG_ARG)) {
|
||||
p_alias = nullptr;
|
||||
return;
|
||||
|
@ -398,11 +398,11 @@ LIBCUBESCRIPT_EXPORT alias_stack::alias_stack(state &cs, ident *a) {
|
|||
aimp->p_flags &= ~IDENT_FLAG_UNKNOWN;
|
||||
}
|
||||
|
||||
LIBCUBESCRIPT_EXPORT alias_stack::~alias_stack() {
|
||||
LIBCUBESCRIPT_EXPORT alias_local::~alias_local() {
|
||||
static_cast<alias_impl *>(p_alias)->pop_arg();
|
||||
}
|
||||
|
||||
LIBCUBESCRIPT_EXPORT bool alias_stack::set(any_value val) {
|
||||
LIBCUBESCRIPT_EXPORT bool alias_local::set(any_value val) {
|
||||
if (!p_alias) {
|
||||
return false;
|
||||
}
|
||||
|
@ -410,7 +410,7 @@ LIBCUBESCRIPT_EXPORT bool alias_stack::set(any_value val) {
|
|||
return true;
|
||||
}
|
||||
|
||||
LIBCUBESCRIPT_EXPORT alias_stack::operator bool() const noexcept {
|
||||
LIBCUBESCRIPT_EXPORT alias_local::operator bool() const noexcept {
|
||||
return !!p_alias;
|
||||
}
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ static inline void do_loop(
|
|||
if (n <= 0) {
|
||||
return;
|
||||
}
|
||||
if (alias_stack st{cs, &id}; st) {
|
||||
if (alias_local st{cs, &id}; st) {
|
||||
any_value idv{cs};
|
||||
for (integer_type i = 0; i < n; ++i) {
|
||||
idv.set_int(offset + i * step);
|
||||
|
@ -39,7 +39,7 @@ static inline void do_loop_conc(
|
|||
if (n <= 0) {
|
||||
return;
|
||||
}
|
||||
if (alias_stack st{cs, &id}; st) {
|
||||
if (alias_local st{cs, &id}; st) {
|
||||
charbuf s{cs};
|
||||
any_value idv{cs};
|
||||
for (integer_type i = 0; i < n; ++i) {
|
||||
|
@ -160,7 +160,7 @@ void init_lib_base(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("pushif", "rte", [](auto &cs, auto args, auto &res) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
if (st.get_alias()->get_flags() & IDENT_FLAG_ARG) {
|
||||
return;
|
||||
}
|
||||
|
@ -305,7 +305,7 @@ end:
|
|||
});
|
||||
|
||||
gcs.new_command("push", "rte", [](auto &cs, auto args, auto &res) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
if (st.get_alias()->get_flags() & IDENT_FLAG_ARG) {
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ static void loop_list_conc(
|
|||
state &cs, any_value &res, ident *id, std::string_view list,
|
||||
bcode_ref &&body, bool space
|
||||
) {
|
||||
if (alias_stack st{cs, id}; st) {
|
||||
if (alias_local st{cs, id}; st) {
|
||||
any_value idv{cs};
|
||||
charbuf r{cs};
|
||||
int n = 0;
|
||||
|
@ -204,7 +204,7 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("listfind", "rse", [](auto &cs, auto args, auto &res) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
any_value idv{cs};
|
||||
auto body = args[2].get_code();
|
||||
int n = -1;
|
||||
|
@ -222,7 +222,7 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("listassoc", "rse", [](auto &cs, auto args, auto &res) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
any_value idv{cs};
|
||||
auto body = args[2].get_code();
|
||||
int n = -1;
|
||||
|
@ -288,7 +288,7 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("looplist", "rse", [](auto &cs, auto args, auto &) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
any_value idv{cs};
|
||||
auto body = args[2].get_code();
|
||||
int n = 0;
|
||||
|
@ -306,8 +306,8 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("looplist2", "rrse", [](auto &cs, auto args, auto &) {
|
||||
alias_stack st1{cs, args[0].get_ident()};
|
||||
alias_stack st2{cs, args[1].get_ident()};
|
||||
alias_local st1{cs, args[0].get_ident()};
|
||||
alias_local st2{cs, args[1].get_ident()};
|
||||
if (!st1 || !st2) {
|
||||
return;
|
||||
}
|
||||
|
@ -333,9 +333,9 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("looplist3", "rrrse", [](auto &cs, auto args, auto &) {
|
||||
alias_stack st1{cs, args[0].get_ident()};
|
||||
alias_stack st2{cs, args[1].get_ident()};
|
||||
alias_stack st3{cs, args[2].get_ident()};
|
||||
alias_local st1{cs, args[0].get_ident()};
|
||||
alias_local st2{cs, args[1].get_ident()};
|
||||
alias_local st3{cs, args[2].get_ident()};
|
||||
if (!st1 || !st2 || !st3) {
|
||||
return;
|
||||
}
|
||||
|
@ -383,7 +383,7 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("listfilter", "rse", [](auto &cs, auto args, auto &res) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
any_value idv{cs};
|
||||
auto body = args[2].get_code();
|
||||
charbuf r{cs};
|
||||
|
@ -403,7 +403,7 @@ void init_lib_list(state &gcs) {
|
|||
});
|
||||
|
||||
gcs.new_command("listcount", "rse", [](auto &cs, auto args, auto &res) {
|
||||
if (alias_stack st{cs, args[0].get_ident()}; st) {
|
||||
if (alias_local st{cs, args[0].get_ident()}; st) {
|
||||
any_value idv{cs};
|
||||
auto body = args[2].get_code();
|
||||
int n = 0, r = 0;
|
||||
|
@ -518,7 +518,7 @@ struct ListSortItem {
|
|||
|
||||
struct ListSortFun {
|
||||
state &cs;
|
||||
alias_stack &xst, &yst;
|
||||
alias_local &xst, &yst;
|
||||
bcode_ref const *body;
|
||||
|
||||
bool operator()(ListSortItem const &xval, ListSortItem const &yval) {
|
||||
|
@ -539,7 +539,7 @@ static void list_sort(
|
|||
return;
|
||||
}
|
||||
|
||||
alias_stack xst{cs, x}, yst{cs, y};
|
||||
alias_local xst{cs, x}, yst{cs, y};
|
||||
if (!xst || !yst) {
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue