The IDL_Object::_overloadBracketsRightSide function method defines the behavior of the array subscript ([]) operator (used on the right side of the equals sign) for instances of objects that inherit from the IDL_Object class.
This method is designed to replicate the default behavior of objects that do not use operator overloading. As a result, object classes that do inherit from the IDL_Object class but that do not override this particular method will behave in the same manner as object classes that do not inherit from the IDL_Object class.
Tip: If you write an object class that inherits from IDL_Object and overloads this method, you can call the superclass method directly to achieve the default behavior for specific cases.
In most cases, this method is called indirectly when the [] operator is appended to an object reference argument on the right side of the equals sign. When called explicitly, the syntax is:
Result = Obj->[IDL_Object::]_overloadBracketsRightSide( isRange, Subscript1 [, Subscript2, Subscript3, Subscript4, Subscript5, Subscript6, Subscript7, Subscript8] )
This method is called when the [] operator is appended to an instance of a class that inherits from the IDL_Object class, but that does not implement its own _overloadBracketsRightSide method. The return value replicates the behavior of the [] operator with an object that does not inherit from the IDL_Object class.
A vector that has one element for each Subscript argument supplied by the user; each element contains a zero if the corresponding input argument was a scalar index value or array of indices, or a one if the corresponding input argument was a subscript range.
Index subscripts. Each Subscript argument can be either a scalar subscript index value, an index array, or a subscript range. There must be at least one Subscript argument.
None
To overload the [] operator when used on the right side of the equals sign for an object class, implement a method with the following signature:
FUNCTION class::_overloadBracketsRightSide, isRange, $
Subscript1, Subscript2, Subscript3, Subscript4, $
Subscript5, Subscript6, Subscript7, Subscript8
The return value of this function should be the result of the overloaded [] operation.