@@ -1035,9 +1035,7 @@ defmodule Code do
1035
1035
to_quoted_opts =
1036
1036
[
1037
1037
unescape: false ,
1038
- literal_encoder: & { :ok , { :__block__ , & 2 , [ & 1 ] } } ,
1039
1038
include_comments: true ,
1040
- token_metadata: true ,
1041
1039
emit_warnings: false
1042
1040
] ++ opts
1043
1041
@@ -1291,22 +1289,21 @@ defmodule Code do
1291
1289
1292
1290
Process . put ( :code_formatter_comments , [ ] )
1293
1291
1294
- opts =
1292
+ opts =
1295
1293
if include_comments do
1296
- [ preserve_comments: & preserve_comments / 5 ,
1294
+ [
1295
+ preserve_comments: & preserve_comments / 5 ,
1297
1296
literal_encoder: & { :ok , { :__block__ , & 2 , [ & 1 ] } } ,
1298
- token_metadata: true ,
1299
- unescape: false ,
1300
- columns: true ,
1301
- ] ++ opts
1297
+ token_metadata: true ,
1298
+ unescape: false
1299
+ ] ++ opts
1302
1300
else
1303
1301
opts
1304
1302
end
1305
1303
1306
1304
quoted = :elixir . string_to_quoted! ( to_charlist ( string ) , line , column , file , opts )
1307
1305
1308
1306
if include_comments do
1309
- # quoted = Code.Normalizer.normalize(quoted)
1310
1307
Code.Comments . merge_comments ( quoted , Process . get ( :code_formatter_comments ) )
1311
1308
else
1312
1309
quoted
@@ -1425,7 +1422,7 @@ defmodule Code do
1425
1422
defp next_eol_count ( [ ?\r , ?\n | rest ] , count ) , do: next_eol_count ( rest , count + 1 )
1426
1423
defp next_eol_count ( _ , count ) , do: count
1427
1424
1428
- defp previous_eol_count ( [ { token , { _ , _ , count } } | _ ] )
1425
+ defp previous_eol_count ( [ { token , { _ , _ , count } } | _ ] )
1429
1426
when token in [ :eol , :"," , :";" ] and count > 0 do
1430
1427
count
1431
1428
end
@@ -1492,8 +1489,17 @@ defmodule Code do
1492
1489
@ doc since: "1.13.0"
1493
1490
@ spec quoted_to_algebra ( Macro . t ( ) , keyword ) :: Inspect.Algebra . t ( )
1494
1491
def quoted_to_algebra ( quoted , opts \\ [ ] ) do
1492
+ comments = opts [ :comments ]
1493
+
1495
1494
quoted
1496
1495
|> Code.Normalizer . normalize ( opts )
1496
+ |> then ( fn quoted ->
1497
+ if comments do
1498
+ Code.Comments . merge_comments ( quoted , comments )
1499
+ else
1500
+ quoted
1501
+ end
1502
+ end )
1497
1503
|> Code.Formatter . to_algebra ( opts )
1498
1504
end
1499
1505
0 commit comments