def not_follow_string(solver, cont, string): string = string.deref(solver.env) if left_(solver.parse_state).startswith(string.name): return solver.value = True
def follow_string(solver, cont, strArgument): strArgument = strArgument.deref(solver.env) assert isinstance(strArgument, String) if not left_(solver.parse_state).startswith(strArgument.name): raise UnifyFail solver.value = True