Module dev.civl.mc

Class ArrayToolBox.ArrayShape

java.lang.Object
dev.civl.mc.semantics.IF.ArrayToolBox.ArrayShape
Enclosing interface:
ArrayToolBox

public abstract static class ArrayToolBox.ArrayShape extends Object
The data structure for describing array shapes, including dimensions, extent for each dimension and slice size for each sub-array with lower dimension. There are three fields can be read from an instance of this class:
  1. dimensions: number of dimensions in the corresponding array
  2. extents: extents of dimensions in the corresponding array, extents are saved in a "Java array" which have the same order as order of declaring the corresponding array.
  3. subArraySizes: sizes of sub-array slices for each lower dimension, sizes are saved in a "java array" which have the order from largest to the smallest.
  4. baseType: the base type of the corresponding array. Notice that the base type doesn't have to have a non-array type.
  • Field Details

    • dimensions

      public int dimensions
    • extents

      public dev.civl.sarl.IF.expr.NumericExpression[] extents
    • subArraySizes

      public dev.civl.sarl.IF.expr.NumericExpression[] subArraySizes
    • arraySize

      public dev.civl.sarl.IF.expr.NumericExpression arraySize
    • baseType

      public dev.civl.sarl.IF.type.SymbolicType baseType
  • Constructor Details

    • ArrayShape

      public ArrayShape()