Commit f179d82
committed
format: treat backtick escapes like other quotes; expand quote tests
Address review on PR #164:
- Backtick strings process the SAME escapes as single/double quotes
(\\, \", \'); a backtick string is not literal. Its only special
property is that the delimiter itself cannot be escaped, so a literal
backtick can never appear inside one. Unified _decode_literal (drops
its delim arg) and _encode_literal (now escapes backslashes for
backticks too) accordingly.
- Removed the unrequested backslash-newline line-continuation handling
from _decode_literal.
- Turned the literal-shape guard in _normalize_quotes into an assert,
since callers always pass a real quoted_string literal.
- Expanded the 012_quotes golden fixture with backslash cases (l/m/n/p)
and an all-three-quotes case (o) to cover the unified escape behavior
and the backtick encode branch.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U4hEZuqiuEFH2zy8wWGwyD1 parent e2d6aa2 commit f179d82
3 files changed
Lines changed: 37 additions & 30 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
95 | 95 | | |
96 | 96 | | |
97 | 97 | | |
98 | | - | |
| 98 | + | |
99 | 99 | | |
100 | 100 | | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
106 | 105 | | |
107 | | - | |
108 | | - | |
109 | 106 | | |
110 | 107 | | |
111 | 108 | | |
112 | 109 | | |
113 | | - | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
122 | 114 | | |
123 | 115 | | |
124 | 116 | | |
125 | 117 | | |
126 | 118 | | |
127 | 119 | | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
132 | 129 | | |
133 | 130 | | |
134 | 131 | | |
| |||
140 | 137 | | |
141 | 138 | | |
142 | 139 | | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
149 | 145 | | |
150 | | - | |
| 146 | + | |
151 | 147 | | |
152 | 148 | | |
153 | 149 | | |
| |||
157 | 153 | | |
158 | 154 | | |
159 | 155 | | |
160 | | - | |
161 | | - | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
162 | 159 | | |
163 | 160 | | |
164 | 161 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
18 | 23 | | |
19 | 24 | | |
20 | 25 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
18 | 23 | | |
19 | 24 | | |
20 | 25 | | |
| |||
0 commit comments