Evaluates to true if the given type is one or more of the following,
or if it's a struct, union, or static array which contains one or more of
the following:
Note that function pointers are not considered to have indirections, because
they do not point to any data (whereas a delegate has a context pointer
and therefore has data that it points to).
Also, while static arrays do not have indirections unless their element
type has indirections, static arrays with an element type of void are
considered to have indirections by hasIndirections, because it's unknown
what type their elements actually are, so they might have
indirections, and thus, the conservative approach is to assume that they do
have indirections.
Static arrays with length 0 do not have indirections no matter what their
element type is, since they don't actually have any elements.
Evaluates to true if the given type is one or more of the following, or if it's a struct, union, or static array which contains one or more of the following:
Note that function pointers are not considered to have indirections, because they do not point to any data (whereas a delegate has a context pointer and therefore has data that it points to).
Also, while static arrays do not have indirections unless their element type has indirections, static arrays with an element type of void are considered to have indirections by hasIndirections, because it's unknown what type their elements actually are, so they might have indirections, and thus, the conservative approach is to assume that they do have indirections.
Static arrays with length 0 do not have indirections no matter what their element type is, since they don't actually have any elements.