{"ast_node_type":"function","tokens":[{"end":57,"kind":"keyword","start":0,"text":"pub(crate)"}]}
    pub(crate) fn wildcard(cx: &Cx, ty: Cx::Ty) -> Self {
    /// Create a wildcard pattern for this type. If the type is empty, we create a `!` pattern.
        let is_empty = cx.ctors_for_ty(&ty).is_ok_and(|ctors| ctors.all_empty());