Rust skip format macro when it include {}

Hello everyone.
I am researching macro formatting.

let _1 = json!(
    [1, {"k": 2}, 3]
); //this will skip
let _2 = json!(
    [1, ["k", 2], 3]
); //this will format

//after rustfmt
let _1 = json!(
    [1, {"k": 2}, 3]
);
let _2 = json!([1, ["k", 2], 3]);

question: why rustfmt skip _1?
I checked rustast.
it change DelimSpacing {open: Alone} to JointHidden. but how and why?

PS.my json macro jsonparsar/jsonmacro at main · kouhe3/jsonparsar · GitHub

I do some stupid macro format tool

it just convert AST to String