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.