/*
Исходный код среды исполнения ПВТ-ОО.
Этот исходный код является частью проекта ПВТ-ОО.
Copyright © 2021 Малик Разработчик
Это свободная программа: вы можете перераспространять её и/или
изменять её на условиях Меньшей Стандартной общественной лицензии GNU в том виде,
в каком она была опубликована Фондом свободного программного обеспечения;
либо версии 3 лицензии, либо (по вашему выбору) любой более поздней версии.
Эта программа распространяется в надежде, что она может быть полезна,
но БЕЗО ВСЯКИХ ГАРАНТИЙ; даже без неявной гарантии ТОВАРНОГО ВИДА
или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЁННЫХ ЦЕЛЕЙ. Подробнее см. в Меньшей Стандартной
общественной лицензии GNU.
Вы должны были получить копию Меньшей Стандартной общественной лицензии GNU
вместе с этой программой. Если это не так, см.
<http://www.gnu.org/licenses/>.
*/
package avt.lang.array;
public interface Measureable(Object)
{
public int length { read }
}
public interface ObjectArray(Object, Cloneable, Measureable)
{
public Object operator [](int index);
}
public interface MutableObjectArray(Object, Cloneable, Measureable, ObjectArray)
{
public void operator []=(int index, Object element);
}
public interface BooleanArray(Object, Cloneable, Measureable)
{
public boolean operator [](int index);
}
public interface MutableBooleanArray(Object, Cloneable, Measureable, BooleanArray)
{
public void operator []=(int index, boolean element);
}
public interface CharArray(Object, Cloneable, Measureable)
{
public char operator [](int index);
}
public interface MutableCharArray(Object, Cloneable, Measureable, CharArray)
{
public void operator []=(int index, char element);
}
public interface RealArray(Object, Cloneable, Measureable)
{
public real operator [](int index);
}
public interface MutableRealArray(Object, Cloneable, Measureable, RealArray)
{
public void operator []=(int index, real element);
}
public interface ByteArray(Object, Cloneable, Measureable)
{
public byte operator [](int index);
}
public interface MutableByteArray(Object, Cloneable, Measureable, ByteArray)
{
public void operator []=(int index, byte element);
}
public interface Byte2Array(Object, Cloneable, Measureable)
{
public byte2 operator [](int index);
}
public interface MutableByte2Array(Object, Cloneable, Measureable, Byte2Array)
{
public void operator []=(int index, byte2 element);
}
public interface Byte4Array(Object, Cloneable, Measureable)
{
public byte4 operator [](int index);
}
public interface MutableByte4Array(Object, Cloneable, Measureable, Byte4Array)
{
public void operator []=(int index, byte4 element);
}
public interface Byte8Array(Object, Cloneable, Measureable)
{
public byte8 operator [](int index);
}
public interface MutableByte8Array(Object, Cloneable, Measureable, Byte8Array)
{
public void operator []=(int index, byte8 element);
}
public interface ShortArray(Object, Cloneable, Measureable)
{
public short operator [](int index);
}
public interface MutableShortArray(Object, Cloneable, Measureable, ShortArray)
{
public void operator []=(int index, short element);
}
public interface Short2Array(Object, Cloneable, Measureable)
{
public short2 operator [](int index);
}
public interface MutableShort2Array(Object, Cloneable, Measureable, Short2Array)
{
public void operator []=(int index, short2 element);
}
public interface Short4Array(Object, Cloneable, Measureable)
{
public short4 operator [](int index);
}
public interface MutableShort4Array(Object, Cloneable, Measureable, Short4Array)
{
public void operator []=(int index, short4 element);
}
public interface Short8Array(Object, Cloneable, Measureable)
{
public short8 operator [](int index);
}
public interface MutableShort8Array(Object, Cloneable, Measureable, Short8Array)
{
public void operator []=(int index, short8 element);
}
public interface IntArray(Object, Cloneable, Measureable)
{
public int operator [](int index);
}
public interface MutableIntArray(Object, Cloneable, Measureable, IntArray)
{
public void operator []=(int index, int element);
}
public interface Int2Array(Object, Cloneable, Measureable)
{
public int2 operator [](int index);
}
public interface MutableInt2Array(Object, Cloneable, Measureable, Int2Array)
{
public void operator []=(int index, int2 element);
}
public interface Int4Array(Object, Cloneable, Measureable)
{
public int4 operator [](int index);
}
public interface MutableInt4Array(Object, Cloneable, Measureable, Int4Array)
{
public void operator []=(int index, int4 element);
}
public interface Int8Array(Object, Cloneable, Measureable)
{
public int8 operator [](int index);
}
public interface MutableInt8Array(Object, Cloneable, Measureable, Int8Array)
{
public void operator []=(int index, int8 element);
}
public interface LongArray(Object, Cloneable, Measureable)
{
public long operator [](int index);
}
public interface MutableLongArray(Object, Cloneable, Measureable, LongArray)
{
public void operator []=(int index, long element);
}
public interface Long2Array(Object, Cloneable, Measureable)
{
public long2 operator [](int index);
}
public interface MutableLong2Array(Object, Cloneable, Measureable, Long2Array)
{
public void operator []=(int index, long2 element);
}
public interface Long4Array(Object, Cloneable, Measureable)
{
public long4 operator [](int index);
}
public interface MutableLong4Array(Object, Cloneable, Measureable, Long4Array)
{
public void operator []=(int index, long4 element);
}
public interface Long8Array(Object, Cloneable, Measureable)
{
public long8 operator [](int index);
}
public interface MutableLong8Array(Object, Cloneable, Measureable, Long8Array)
{
public void operator []=(int index, long8 element);
}
public interface FloatArray(Object, Cloneable, Measureable)
{
public float operator [](int index);
}
public interface MutableFloatArray(Object, Cloneable, Measureable, FloatArray)
{
public void operator []=(int index, float element);
}
public interface Float2Array(Object, Cloneable, Measureable)
{
public float2 operator [](int index);
}
public interface MutableFloat2Array(Object, Cloneable, Measureable, Float2Array)
{
public void operator []=(int index, float2 element);
}
public interface Float4Array(Object, Cloneable, Measureable)
{
public float4 operator [](int index);
}
public interface MutableFloat4Array(Object, Cloneable, Measureable, Float4Array)
{
public void operator []=(int index, float4 element);
}
public interface Float8Array(Object, Cloneable, Measureable)
{
public float8 operator [](int index);
}
public interface MutableFloat8Array(Object, Cloneable, Measureable, Float8Array)
{
public void operator []=(int index, float8 element);
}
public interface DoubleArray(Object, Cloneable, Measureable)
{
public double operator [](int index);
}
public interface MutableDoubleArray(Object, Cloneable, Measureable, DoubleArray)
{
public void operator []=(int index, double element);
}
public interface Double2Array(Object, Cloneable, Measureable)
{
public double2 operator [](int index);
}
public interface MutableDouble2Array(Object, Cloneable, Measureable, Double2Array)
{
public void operator []=(int index, double2 element);
}
public interface Double4Array(Object, Cloneable, Measureable)
{
public double4 operator [](int index);
}
public interface MutableDouble4Array(Object, Cloneable, Measureable, Double4Array)
{
public void operator []=(int index, double4 element);
}
public interface Double8Array(Object, Cloneable, Measureable)
{
public double8 operator [](int index);
}
public interface MutableDouble8Array(Object, Cloneable, Measureable, Double8Array)
{
public void operator []=(int index, double8 element);
}