Since Product-Quats can be a representation of abstract product types (e.g.
Since Product-Quats can be a representation of abstract product types (e.g. abstract classes, traits, etc...)
in some cases we need to keep track of this information in order to know that the present product type does not have all of the needed fields.
Currently, this is only really possible in quill-spark where resolution of T (of Query[T]) can be a different class during compile-time
and run-type while still having a static-query (since dataframes are lifted via the liftQuery construct that has this unique property, I do not
believe that this is currently possible with the standard query[T] method).
As outlined in the TypeMemberJoinSpec, there are certain situations where the contents of an Ident(a)
are not entirely known and the ident
needs to be expanded as either struct(a.*)
or just a.*
depending on the situation.
Add staged renames to the Quat.
Add staged renames to the Quat. Note that renames should
explicit NOT be counted as part of the Type indicated by the Quat
since it is typical to beta reduce a Quat without renames to a Quat with them
(see PropagateRenames
for more detail)