.heap
.truncate(machine_st.stack.index_or_frame(b).prelude.h);
- let attr_var_init_queue_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_queue_b;
- let attr_var_init_bindings_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_bindings_b;
-
- machine_st
- .attr_var_init
- .backtrack(attr_var_init_queue_b, attr_var_init_bindings_b);
+ machine_st.attr_var_init.reset();
machine_st.hb = machine_st.heap.h();
machine_st.p += 1;
.heap
.truncate(machine_st.stack.index_or_frame(b).prelude.h);
- let attr_var_init_queue_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_queue_b;
- let attr_var_init_bindings_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_bindings_b;
-
- machine_st
- .attr_var_init
- .backtrack(attr_var_init_queue_b, attr_var_init_bindings_b);
+ machine_st.attr_var_init.reset();
machine_st.hb = machine_st.heap.h();
machine_st.p = CodePtr::Local(dir_entry!(machine_st.p.local().abs_loc() + offset));
.heap
.truncate(machine_st.stack.index_or_frame(b).prelude.h);
- let attr_var_init_queue_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_queue_b;
- let attr_var_init_bindings_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_bindings_b;
-
- machine_st
- .attr_var_init
- .backtrack(attr_var_init_queue_b, attr_var_init_bindings_b);
+ machine_st.attr_var_init.reset();
machine_st.b = machine_st.stack.index_or_frame(b).prelude.b;
machine_st.stack.truncate(b);
.heap
.truncate(machine_st.stack.index_or_frame(b).prelude.h);
- let attr_var_init_queue_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_queue_b;
- let attr_var_init_bindings_b = machine_st
- .stack
- .index_or_frame(b)
- .prelude
- .attr_var_init_bindings_b;
-
- machine_st
- .attr_var_init
- .backtrack(attr_var_init_queue_b, attr_var_init_bindings_b);
+ machine_st.attr_var_init.reset();
machine_st.b = machine_st.stack.index_or_frame(b).prelude.b;
machine_st.stack.truncate(b);
or_frame.prelude.h = self.heap.h();
or_frame.prelude.b0 = self.b0;
- or_frame.prelude.attr_var_init_queue_b = self.attr_var_init.attr_var_queue.len();
- or_frame.prelude.attr_var_init_bindings_b = self.attr_var_init.bindings.len();
-
self.b = b;
for i in 1..n + 1 {
or_frame.prelude.tr = self.tr;
or_frame.prelude.h = self.heap.h();
or_frame.prelude.b0 = self.b0;
- or_frame.prelude.attr_var_init_queue_b = self.attr_var_init.attr_var_queue.len();
- or_frame.prelude.attr_var_init_bindings_b = self.attr_var_init.attr_var_queue.len();
self.b = b;