gpuFilter (Function)

Signature: gpuFilter(buffer: GpuBuffer<int> | GpuBuffer<float> | GpuBuffer<bool>, predicate: (t0) -> bool) -> GpuBuffer<t0>

Description: Stream compaction: keeps the elements a pure predicate accepts, preserving order.

Parameters

  • buffer (GpuBuffer | GpuBuffer | GpuBuffer): The source buffer
  • predicate ((t0) -> bool): The pure element predicate

Returns: GpuBuffer

Example

toGpu([1, 2, 3, 4]) |> gpuFilter(fn(x) => (x % 2 ?: 0) == 0)
toGpu [1, 2, 3, 4] |> gpuFilter (\x => (x % 2 ?: 0) == 0)