{"ast_node_type":"other","tokens":[{"end":48,"kind":"keyword","start":0,"text":"&&"}]}
        && item.krate(ctx.db) != module.krate();
    let is_foreign_non_exhaustive = item.attrs(ctx.db).by_key(sym::non_exhaustive).exists()
    let fields_omitted = has_invisible_field || is_foreign_non_exhaustive;