237 }
238
239 public abstract Mask<$Boxtype$, S> greaterThanEq($type$ o);
240
241 @Override
242 public $abstractvectortype$<S> blend(Vector<$Boxtype$,S> o, Mask<$Boxtype$, S> m) {
243 return bOp(o, (i, a, b) -> m.getElement(i) ? b : a);
244 }
245
246 public abstract $abstractvectortype$<S> blend($type$ o, Mask<$Boxtype$, S> m);
247
248 @Override
249 public abstract $abstractvectortype$<S> shuffle(Vector<$Boxtype$,S> o, Shuffle<$Boxtype$, S> m);
250
251 @Override
252 public abstract $abstractvectortype$<S> swizzle(Shuffle<$Boxtype$, S> m);
253
254 @Override
255 @ForceInline
256 public <T extends Shape> $abstractvectortype$<T> resize(Species<$Boxtype$, T> species) {
257 return ($abstractvectortype$<T>) species.reshape(this);
258 }
259
260 @Override
261 public abstract $abstractvectortype$<S> rotateEL(int i);
262
263 @Override
264 public abstract $abstractvectortype$<S> rotateER(int i);
265
266 @Override
267 public abstract $abstractvectortype$<S> shiftEL(int i);
268
269 @Override
270 public abstract $abstractvectortype$<S> shiftER(int i);
271
272 #if[FP]
273 public $abstractvectortype$<S> div(Vector<$Boxtype$,S> o) {
274 return bOp(o, (i, a, b) -> ($type$) (a / b));
275 }
276
277 public abstract $abstractvectortype$<S> div($type$ o);
772 return ($type$) 0;
773 }
774 });
775 }
776
777 @Override
778 public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix) {
779 bb = bb.duplicate().position(ix);
780 $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
781 return op(i -> fb.get(i));
782 }
783
784 @Override
785 public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix, Mask<$Boxtype$, S> m) {
786 bb = bb.duplicate().position(ix);
787 $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
788 return op(m, i -> fb.get(i));
789 }
790
791 @Override
792 public <F, T extends Shape> $abstractvectortype$<S> reshape(Vector<F, T> o) {
793 int blen = Math.max(o.species().bitSize(), bitSize()) / Byte.SIZE;
794 ByteBuffer bb = ByteBuffer.allocate(blen).order(ByteOrder.nativeOrder());
795 o.intoByteBuffer(bb, 0);
796 return fromByteBuffer(bb, 0);
797 }
798
799 @Override
800 @ForceInline
801 public <F> $abstractvectortype$<S> rebracket(Vector<F, S> o) {
802 return reshape(o);
803 }
804
805 @Override
806 @ForceInline
807 public <T extends Shape> $abstractvectortype$<S> resize(Vector<$Boxtype$, T> o) {
808 return reshape(o);
809 }
810
811 @Override
|
237 }
238
239 public abstract Mask<$Boxtype$, S> greaterThanEq($type$ o);
240
241 @Override
242 public $abstractvectortype$<S> blend(Vector<$Boxtype$,S> o, Mask<$Boxtype$, S> m) {
243 return bOp(o, (i, a, b) -> m.getElement(i) ? b : a);
244 }
245
246 public abstract $abstractvectortype$<S> blend($type$ o, Mask<$Boxtype$, S> m);
247
248 @Override
249 public abstract $abstractvectortype$<S> shuffle(Vector<$Boxtype$,S> o, Shuffle<$Boxtype$, S> m);
250
251 @Override
252 public abstract $abstractvectortype$<S> swizzle(Shuffle<$Boxtype$, S> m);
253
254 @Override
255 @ForceInline
256 public <T extends Shape> $abstractvectortype$<T> resize(Species<$Boxtype$, T> species) {
257 return ($abstractvectortype$<T>) species.resize(this);
258 }
259
260 @Override
261 public abstract $abstractvectortype$<S> rotateEL(int i);
262
263 @Override
264 public abstract $abstractvectortype$<S> rotateER(int i);
265
266 @Override
267 public abstract $abstractvectortype$<S> shiftEL(int i);
268
269 @Override
270 public abstract $abstractvectortype$<S> shiftER(int i);
271
272 #if[FP]
273 public $abstractvectortype$<S> div(Vector<$Boxtype$,S> o) {
274 return bOp(o, (i, a, b) -> ($type$) (a / b));
275 }
276
277 public abstract $abstractvectortype$<S> div($type$ o);
772 return ($type$) 0;
773 }
774 });
775 }
776
777 @Override
778 public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix) {
779 bb = bb.duplicate().position(ix);
780 $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
781 return op(i -> fb.get(i));
782 }
783
784 @Override
785 public $abstractvectortype$<S> fromByteBuffer(ByteBuffer bb, int ix, Mask<$Boxtype$, S> m) {
786 bb = bb.duplicate().position(ix);
787 $Type$Buffer fb = bb{#if[byte]?;:.as$Type$Buffer();}
788 return op(m, i -> fb.get(i));
789 }
790
791 @Override
792 @ForceInline
793 public <F, T extends Shape> $abstractvectortype$<S> reshape(Vector<F, T> o) {
794 int blen = Math.max(o.species().bitSize(), bitSize()) / Byte.SIZE;
795 ByteBuffer bb = ByteBuffer.allocate(blen).order(ByteOrder.nativeOrder());
796 o.intoByteBuffer(bb, 0);
797 return fromByteBuffer(bb, 0);
798 }
799
800 @Override
801 @ForceInline
802 public <F> $abstractvectortype$<S> rebracket(Vector<F, S> o) {
803 return reshape(o);
804 }
805
806 @Override
807 @ForceInline
808 public <T extends Shape> $abstractvectortype$<S> resize(Vector<$Boxtype$, T> o) {
809 return reshape(o);
810 }
811
812 @Override
|