{"ast_node_type":"variable","tokens":[{"end":72,"kind":"keyword","start":0,"text":"while"}]}
            while let Some((AdtId::StructId(id), subst)) = ty.as_adt() {
            // artificial examples of structs that have themselves as the tail field and complain r-a crashes.
                let struct_data = id.fields(self.db);