mz_lowertest_derive

Function extract_reflected_type

Source
pub(crate) fn extract_reflected_type(t: &Type) -> Vec<&Type>
Expand description

If t is a supported type, extracts from t types defined in a Materialize package.

Returns an empty vector if t is of an unsupported type.

Supported types are: A plain path type A -> extracts A Box<A>, Vec<A>, Option<A>, [A] -> extracts A Tuple (A, (B, C)) -> extracts A, B, C. Remove A, B, C from expected results if they are primitive types or listed in EXTERNAL_TYPES.