190f37afab
9600: fix: Single-line and nested blocks in the `unwrap_block` assist r=Veykril a=patrick-gu Fixes #8411 Rework the system for stripping whitespace and braces in the unwrap_block assist to allow correct unwrapping of blocks such as: ```rust { $0 0 } ``` into ```rust 0 ``` and nested blocks, such as: ```rust $0{ { 3 } } ``` into ```rust { 3 } ``` This is done by creating the `update_expr_string_with_pat` function (along with `update_expr_string` and `update_expr_string_without_newline`), which strips whitespace and braces in a way that ensures that only whitespace and a maximum of one brace are removed from the start and end of the expression string. I have also created several tests to ensure that this functionality works correctly. Co-authored-by: patrick-gu <55641350+patrick-gu@users.noreply.github.com>