fn contrive_coercible_exprs(&self) -> Vec<CoercibleScalarExpr> {
        let i = match self {
            ParamList::Exact(p) => p.clone(),
            ParamList::Variadic(p) => {
                vec![p.clone()]
            }
        };

        i.iter()
            .map(|p| {
                CoercibleScalarExpr::Coerced(HirScalarExpr::literal_null(match p {
                    ParamType::Plain(t) => t.clone(),
                    o => unreachable!(
                        "{:?} represents a pseudo type and doesn't have a ScalarType",
                        o
                    ),
                }))
            })
            .collect()
    }
/// Returns a set of `CoercibleScalarExpr`s whose values are literal nulls,
/// typed such that they're compatible with `self`.
///
/// # Panics
///
/// Panics if called on a [`ParamList`] that contains any polymorphic
/// [`ParamType`]s.
Returns a set of `CoercibleScalarExpr`s whose values are literal nulls,
typed such that they're compatible with `self`.
Returns a set of ` CoercibleScalarExpr ` s whose values are literal nulls typed such that they ' re compatible with ` self ` .
fn contrive_coercible_exprs(&self) -> Vec<CoercibleScalarExpr> {
        let i = match self {
            ParamList::Exact(p) => p.clone(),
            ParamList::Variadic(p) => {
                vec![p.clone()]
            }
        };
        i.iter()
            .map(|p| {
                CoercibleScalarExpr::Coerced(HirScalarExpr::literal_null(match p {
                    ParamType::Plain(t) => t.clone(),
                    o => unreachable!(
                        "{:?} represents a pseudo type and doesn't have a ScalarType",
                        o
                    ),
                }))
            })
            .collect()
    }
fn contrive_coercible_exprs ( & self ) -> Vec < CoercibleScalarExpr > { let i = match self { ParamList :: Exact ( p ) => p . clone ( ) , ParamList :: Variadic ( p ) => { vec ! [ p clone ( ) ] } } ; i . iter ( ) . map ( | p | { CoercibleScalarExpr :: Coerced ( HirScalarExpr :: literal_null ( match p { ParamType :: Plain ( t ) => t . clone ( ) , o => unreachable ! ( " " o ) , } ) ) } ) . collect ( ) }
Returns a set of `CoercibleScalarExpr`s whose values are literal nulls,
typed such that they're compatible with `self`.
Returns a set of ` CoercibleScalarExpr ` s whose values are literal nulls typed such that they ' re compatible with ` self ` .
&self
&self
panics
Panics if called on a [`ParamList`] that contains any polymorphic
[`ParamType`]s.
Panics if called on a [ ` ParamList ` ] that contains any polymorphic [ ` ParamType ` ] s .