restore previous focus upon character match failure in compare_pstr_to_string (#441)
This commit is contained in:
@@ -45,7 +45,7 @@ impl<'a> HeapPStrIter<'a> {
|
||||
|
||||
#[inline]
|
||||
pub(crate)
|
||||
fn focus(&'a self) -> Addr {
|
||||
fn focus(&self) -> Addr {
|
||||
self.machine_st.store(self.machine_st.deref(self.focus))
|
||||
}
|
||||
|
||||
@@ -303,6 +303,10 @@ fn compare_pstr_to_string<'a>(
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if s[s_offset ..].is_empty() {
|
||||
return Some(s_offset);
|
||||
}
|
||||
}
|
||||
|
||||
Some(s_offset)
|
||||
|
||||
@@ -323,21 +323,6 @@ gather_goals([Var = Value | Pairs], VarList, QueryVarList, Goals) :-
|
||||
; gather_goals(Pairs, VarList, QueryVarList, Goals)
|
||||
).
|
||||
|
||||
/*
|
||||
gather_goals([], VarList, QueryVarList, Goals) :-
|
||||
gather_query_vars(VarList, Vars),
|
||||
copy_term(Vars, Vars, Goals).
|
||||
% filter_goals(Goals0, Goals, Vars).
|
||||
gather_goals([Var = Value | Pairs], VarList, QueryVarList, Goals) :-
|
||||
( ( nonvar(Value)
|
||||
; is_a_different_variable(Pairs, Value)
|
||||
) ->
|
||||
Goals = [Var = Value | Goals0],
|
||||
gather_goals(Pairs, VarList, QueryVarList, Goals0)
|
||||
; gather_goals(Pairs, VarList, QueryVarList, Goals)
|
||||
).
|
||||
*/
|
||||
|
||||
print_exception(E) :-
|
||||
( E == error('$interrupt_thrown', repl) -> nl % print the
|
||||
% exception on a
|
||||
|
||||
Reference in New Issue
Block a user