/*
Реализация среды исполнения языка программирования
Объектно-ориентированный продвинутый векторный транслятор
Copyright © 2021, 2024 Малик Разработчик
Это свободная программа: вы можете перераспространять ее и/или изменять
ее на условиях Меньшей Стандартной общественной лицензии GNU в том виде,
в каком она была опубликована Фондом свободного программного обеспечения;
либо версии 3 лицензии, либо (по вашему выбору) любой более поздней версии.
Эта программа распространяется в надежде, что она будет полезной,
но БЕЗО ВСЯКИХ ГАРАНТИЙ; даже без неявной гарантии ТОВАРНОГО ВИДА
или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Подробнее см. в Меньшей Стандартной
общественной лицензии GNU.
Вы должны были получить копию Меньшей Стандартной общественной лицензии GNU
вместе с этой программой. Если это не так, см.
<https://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 BooleanArray(Object, Cloneable, Measureable)
{
public boolean operator [](int index);
}
public interface CharArray(Object, Cloneable, Measureable)
{
public char operator [](int index);
}
public interface RealArray(Object, Cloneable, Measureable)
{
public real operator [](int index);
}
public interface DoubleArray(Object, Cloneable, Measureable)
{
public double operator [](int index);
}
public interface Double2Array(Object, Cloneable, Measureable)
{
public double2 operator [](int index);
}
public interface Double4Array(Object, Cloneable, Measureable)
{
public double4 operator [](int index);
}
public interface Double8Array(Object, Cloneable, Measureable)
{
public double8 operator [](int index);
}
public interface FloatArray(Object, Cloneable, Measureable)
{
public float operator [](int index);
}
public interface Float2Array(Object, Cloneable, Measureable)
{
public float2 operator [](int index);
}
public interface Float4Array(Object, Cloneable, Measureable)
{
public float4 operator [](int index);
}
public interface Float8Array(Object, Cloneable, Measureable)
{
public float8 operator [](int index);
}
public interface ByteArray(Object, Cloneable, Measureable)
{
public byte operator [](int index);
}
public interface Byte2Array(Object, Cloneable, Measureable)
{
public byte2 operator [](int index);
}
public interface Byte4Array(Object, Cloneable, Measureable)
{
public byte4 operator [](int index);
}
public interface Byte8Array(Object, Cloneable, Measureable)
{
public byte8 operator [](int index);
}
public interface ShortArray(Object, Cloneable, Measureable)
{
public short operator [](int index);
}
public interface Short2Array(Object, Cloneable, Measureable)
{
public short2 operator [](int index);
}
public interface Short4Array(Object, Cloneable, Measureable)
{
public short4 operator [](int index);
}
public interface Short8Array(Object, Cloneable, Measureable)
{
public short8 operator [](int index);
}
public interface IntArray(Object, Cloneable, Measureable)
{
public int operator [](int index);
}
public interface Int2Array(Object, Cloneable, Measureable)
{
public int2 operator [](int index);
}
public interface Int4Array(Object, Cloneable, Measureable)
{
public int4 operator [](int index);
}
public interface Int8Array(Object, Cloneable, Measureable)
{
public int8 operator [](int index);
}
public interface LongArray(Object, Cloneable, Measureable)
{
public long operator [](int index);
}
public interface Long2Array(Object, Cloneable, Measureable)
{
public long2 operator [](int index);
}
public interface Long4Array(Object, Cloneable, Measureable)
{
public long4 operator [](int index);
}
public interface Long8Array(Object, Cloneable, Measureable)
{
public long8 operator [](int index);
}
public interface MutableMeasureable(Object, Measureable)
{
public int length { read, write }
public int capacity { read }
}
public interface MutableObjectArray(Object, Cloneable, Measureable, ObjectArray)
{
public void operator []=(int index, Object component);
}
public interface MutableBooleanArray(Object, Cloneable, Measureable, BooleanArray)
{
public void operator []=(int index, boolean component);
}
public interface MutableCharArray(Object, Cloneable, Measureable, CharArray)
{
public void operator []=(int index, char component);
}
public interface MutableRealArray(Object, Cloneable, Measureable, RealArray)
{
public void operator []=(int index, real component);
}
public interface MutableDoubleArray(Object, Cloneable, Measureable, DoubleArray)
{
public void operator []=(int index, double component);
}
public interface MutableDouble2Array(Object, Cloneable, Measureable, Double2Array)
{
public void operator []=(int index, double2 component);
}
public interface MutableDouble4Array(Object, Cloneable, Measureable, Double4Array)
{
public void operator []=(int index, double4 component);
}
public interface MutableDouble8Array(Object, Cloneable, Measureable, Double8Array)
{
public void operator []=(int index, double8 component);
}
public interface MutableFloatArray(Object, Cloneable, Measureable, FloatArray)
{
public void operator []=(int index, float component);
}
public interface MutableFloat2Array(Object, Cloneable, Measureable, Float2Array)
{
public void operator []=(int index, float2 component);
}
public interface MutableFloat4Array(Object, Cloneable, Measureable, Float4Array)
{
public void operator []=(int index, float4 component);
}
public interface MutableFloat8Array(Object, Cloneable, Measureable, Float8Array)
{
public void operator []=(int index, float8 component);
}
public interface MutableByteArray(Object, Cloneable, Measureable, ByteArray)
{
public void operator []=(int index, byte component);
}
public interface MutableByte2Array(Object, Cloneable, Measureable, Byte2Array)
{
public void operator []=(int index, byte2 component);
}
public interface MutableByte4Array(Object, Cloneable, Measureable, Byte4Array)
{
public void operator []=(int index, byte4 component);
}
public interface MutableByte8Array(Object, Cloneable, Measureable, Byte8Array)
{
public void operator []=(int index, byte8 component);
}
public interface MutableShortArray(Object, Cloneable, Measureable, ShortArray)
{
public void operator []=(int index, short component);
}
public interface MutableShort2Array(Object, Cloneable, Measureable, Short2Array)
{
public void operator []=(int index, short2 component);
}
public interface MutableShort4Array(Object, Cloneable, Measureable, Short4Array)
{
public void operator []=(int index, short4 component);
}
public interface MutableShort8Array(Object, Cloneable, Measureable, Short8Array)
{
public void operator []=(int index, short8 component);
}
public interface MutableIntArray(Object, Cloneable, Measureable, IntArray)
{
public void operator []=(int index, int component);
}
public interface MutableInt2Array(Object, Cloneable, Measureable, Int2Array)
{
public void operator []=(int index, int2 component);
}
public interface MutableInt4Array(Object, Cloneable, Measureable, Int4Array)
{
public void operator []=(int index, int4 component);
}
public interface MutableInt8Array(Object, Cloneable, Measureable, Int8Array)
{
public void operator []=(int index, int8 component);
}
public interface MutableLongArray(Object, Cloneable, Measureable, LongArray)
{
public void operator []=(int index, long component);
}
public interface MutableLong2Array(Object, Cloneable, Measureable, Long2Array)
{
public void operator []=(int index, long2 component);
}
public interface MutableLong4Array(Object, Cloneable, Measureable, Long4Array)
{
public void operator []=(int index, long4 component);
}
public interface MutableLong8Array(Object, Cloneable, Measureable, Long8Array)
{
public void operator []=(int index, long8 component);
}
public interface ResizeableObjectArray(Object, Cloneable, Measureable, MutableMeasureable, MutableObjectArray, ObjectArray)
{
public int length { read, write }
}
public interface ResizeableBooleanArray(Object, Cloneable, Measureable, MutableMeasureable, MutableBooleanArray, BooleanArray)
{
public int length { read, write }
}
public interface ResizeableCharArray(Object, Cloneable, Measureable, MutableMeasureable, MutableCharArray, CharArray)
{
public int length { read, write }
}
public interface ResizeableRealArray(Object, Cloneable, Measureable, MutableMeasureable, MutableRealArray, RealArray)
{
public int length { read, write }
}
public interface ResizeableDoubleArray(Object, Cloneable, Measureable, MutableMeasureable, MutableDoubleArray, DoubleArray)
{
public int length { read, write }
}
public interface ResizeableDouble2Array(Object, Cloneable, Measureable, MutableMeasureable, MutableDouble2Array, Double2Array)
{
public int length { read, write }
}
public interface ResizeableDouble4Array(Object, Cloneable, Measureable, MutableMeasureable, MutableDouble4Array, Double4Array)
{
public int length { read, write }
}
public interface ResizeableDouble8Array(Object, Cloneable, Measureable, MutableMeasureable, MutableDouble8Array, Double8Array)
{
public int length { read, write }
}
public interface ResizeableFloatArray(Object, Cloneable, Measureable, MutableMeasureable, MutableFloatArray, FloatArray)
{
public int length { read, write }
}
public interface ResizeableFloat2Array(Object, Cloneable, Measureable, MutableMeasureable, MutableFloat2Array, Float2Array)
{
public int length { read, write }
}
public interface ResizeableFloat4Array(Object, Cloneable, Measureable, MutableMeasureable, MutableFloat4Array, Float4Array)
{
public int length { read, write }
}
public interface ResizeableFloat8Array(Object, Cloneable, Measureable, MutableMeasureable, MutableFloat8Array, Float8Array)
{
public int length { read, write }
}
public interface ResizeableByteArray(Object, Cloneable, Measureable, MutableMeasureable, MutableByteArray, ByteArray)
{
public int length { read, write }
}
public interface ResizeableByte2Array(Object, Cloneable, Measureable, MutableMeasureable, MutableByte2Array, Byte2Array)
{
public int length { read, write }
}
public interface ResizeableByte4Array(Object, Cloneable, Measureable, MutableMeasureable, MutableByte4Array, Byte4Array)
{
public int length { read, write }
}
public interface ResizeableByte8Array(Object, Cloneable, Measureable, MutableMeasureable, MutableByte8Array, Byte8Array)
{
public int length { read, write }
}
public interface ResizeableShortArray(Object, Cloneable, Measureable, MutableMeasureable, MutableShortArray, ShortArray)
{
public int length { read, write }
}
public interface ResizeableShort2Array(Object, Cloneable, Measureable, MutableMeasureable, MutableShort2Array, Short2Array)
{
public int length { read, write }
}
public interface ResizeableShort4Array(Object, Cloneable, Measureable, MutableMeasureable, MutableShort4Array, Short4Array)
{
public int length { read, write }
}
public interface ResizeableShort8Array(Object, Cloneable, Measureable, MutableMeasureable, MutableShort8Array, Short8Array)
{
public int length { read, write }
}
public interface ResizeableIntArray(Object, Cloneable, Measureable, MutableMeasureable, MutableIntArray, IntArray)
{
public int length { read, write }
}
public interface ResizeableInt2Array(Object, Cloneable, Measureable, MutableMeasureable, MutableInt2Array, Int2Array)
{
public int length { read, write }
}
public interface ResizeableInt4Array(Object, Cloneable, Measureable, MutableMeasureable, MutableInt4Array, Int4Array)
{
public int length { read, write }
}
public interface ResizeableInt8Array(Object, Cloneable, Measureable, MutableMeasureable, MutableInt8Array, Int8Array)
{
public int length { read, write }
}
public interface ResizeableLongArray(Object, Cloneable, Measureable, MutableMeasureable, MutableLongArray, LongArray)
{
public int length { read, write }
}
public interface ResizeableLong2Array(Object, Cloneable, Measureable, MutableMeasureable, MutableLong2Array, Long2Array)
{
public int length { read, write }
}
public interface ResizeableLong4Array(Object, Cloneable, Measureable, MutableMeasureable, MutableLong4Array, Long4Array)
{
public int length { read, write }
}
public interface ResizeableLong8Array(Object, Cloneable, Measureable, MutableMeasureable, MutableLong8Array, Long8Array)
{
public int length { read, write }
}
public interface ImmutableMeasureable(Object, ImmutableObject, Measureable, MutableMeasureable)
{
public int length { read, write }
}
public interface ImmutableObjectArray(Object, ImmutableObject, Cloneable, Measureable, MutableMeasureable, ImmutableMeasureable, ResizeableObjectArray, MutableObjectArray, ObjectArray)
{
public int length { read, write }
}