Detail: Index: Operator Binary

Overview: Index: Operator Binary

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix + 8
[    8  1032 -2040  4104]
```
Index.__and__(other)
```>>> ix = sf.Index((False, True), name='x')
>>> ix
<Index: x>
False
True
<bool>
>>> ix & True
[False  True]
>>> ix & (False, True)
[False  True]
```
Index.__eq__(other)

Return self==value.

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix == 8
[False False False False]
```
Index.__floordiv__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix // 8
[   0  128 -256  512]
```
Index.__ge__(other)

Return self>=value.

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix >= 8
[False  True False  True]
```
Index.__gt__(other)

Return self>value.

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix > 8
[False  True False  True]
```
Index.__le__(other)

Return self<=value.

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix <= 8
[ True False  True False]
```
Index.__lt__(other)

Return self<value.

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix < 8
[ True False  True False]
```
Index.__matmul__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix @ (3, 0, 4, 0)
-8192
```
Index.__mod__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix % 8
[0 0 0 0]
```
Index.__mul__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix * 8
[     0   8192 -16384  32768]
```
Index.__ne__(other)

Return self!=value.

```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix != 8
[ True  True  True  True]
```
Index.__or__(other)

Return self|value.

```>>> ix = sf.Index((False, True), name='x')
>>> ix
<Index: x>
False
True
<bool>
>>> ix | True
[ True  True]
>>> ix | (False, True)
[False  True]
```
Index.__pow__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix ** 8
[0 0 0 0]
```
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> 8 + ix
[    8  1032 -2040  4104]
```
Index.__rfloordiv__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> 8 // ix
[ 0  0 -1  0]
```
Index.__rmatmul__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix @ (3, 0, 4, 0)
-8192
```
Index.__rmul__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> 8 * ix
[     0   8192 -16384  32768]
```
Index.__rshift__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix >> 1
[    0   512 -1024  2048]
```
Index.__rsub__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> 8 - ix
[    8 -1016  2056 -4088]
```
Index.__rtruediv__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> 8 / ix
[        inf  0.0078125  -0.00390625  0.00195312]
```
Index.__sub__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix - 8
[   -8  1016 -2056  4088]
```
Index.__truediv__(other)
```>>> ix = sf.Index((0, 1024, -2048, 4096))
>>> ix
<Index>
0
1024
-2048
4096
<int64>
>>> ix / 8
[   0.  128. -256.  512.]
```
Index.__xor__(other)
```>>> ix = sf.Index((False, True), name='x')
>>> ix
<Index: x>
False
True
<bool>
>>> ix ^ True
[ True False]
>>> ix ^ (False, True)
[False False]
```