psyclone.psyir.nodes.array_of_structures_mixin

This module contains the implementation of the abstract ArrayOfStructuresMixin.

Classes

class psyclone.psyir.nodes.array_of_structures_mixin.ArrayOfStructuresMixin

Abstract class used to extend the ArrayMixin class with functionality common to Nodes that represent accesses to arrays of structures. The primary difference is that the first child of such Nodes must be an instance of Member. Subsequent children then represent the array-index expressions.

Inheritance

Inheritance diagram of ArrayOfStructuresMixin
get_signature_and_indices()
Returns:

the Signature of this array of structure reference, and a list of lists of the indices used for each component.

Return type:

tuple(psyclone.core.Signature, list of lists of indices)

property indices

Supports semantic-navigation by returning the list of nodes representing the index expressions for this array reference.

Returns:

the PSyIR nodes representing the array-index expressions.

Return type:

list of psyclone.psyir.nodes.Node

Raises:

InternalError – if this node does not have at least two children.