Join operator is a bit more complicated to port over, due to its use of int64 to represent a time value:
// Returns absolute value for int64
func abs(n int64) int64 {
y := n >> 63
return (n ^ y) - y
}
The join algorithm performs bit shifting on time values (window duration), which are sent through channel. So how do we shoehorn this into the new representation of Item[T]?
Introducing a new time value member on Item, causes rippling changes accross different types like Func. This problem needs to be fixed into its own issue.
Join operator is a bit more complicated to port over, due to its use of int64 to represent a time value:
The join algorithm performs bit shifting on time values (window duration), which are sent through channel. So how do we shoehorn this into the new representation of Item[T]?
Introducing a new time value member on Item, causes rippling changes accross different types like Func. This problem needs to be fixed into its own issue.