adjust implicit accessing rules with nested auto hooks (slice-of-slices case); prefer to not show address value with string prefix content in single-line eval stringification

This commit is contained in:
Ryan Fleury
2025-06-30 09:33:23 -07:00
parent 15a7efab43
commit dc79c06031
3 changed files with 19 additions and 7 deletions
@@ -1776,6 +1776,7 @@ ev_string_iter_next(Arena *arena, EV_StringIter *it, String8 *out_string)
B32 ptee_has_content;
B32 ptee_has_string;
B32 did_prefix_content;
B32 did_prefix_string;
B32 did_redirect;
};
EV_StringPtrData *ptr_data = it->top_task->user_data;
@@ -1862,6 +1863,7 @@ ev_string_iter_next(Arena *arena, EV_StringIter *it, String8 *out_string)
// rjf: report
*out_string = push_str8_copy(arena, string__escaped_and_quoted);
ptr_data->did_prefix_content = 1;
ptr_data->did_prefix_string = 1;
scratch_end(scratch);
}
@@ -2043,7 +2045,7 @@ ev_string_iter_next(Arena *arena, EV_StringIter *it, String8 *out_string)
//
// rjf: [read only] if we did prefix content, do a parenthesized pointer value
if(!(params->flags & EV_StringFlag_DisableAddresses) && params->flags & EV_StringFlag_ReadOnlyDisplayRules && ptr_data->did_prefix_content)
if(!(params->flags & EV_StringFlag_DisableAddresses) && params->flags & EV_StringFlag_ReadOnlyDisplayRules && ptr_data->did_prefix_content && !ptr_data->did_prefix_string)
{
*out_string = push_str8f(arena, " (%S)", ptr_value_string);
}