template <class T>
operator>>(sbn::kernel_buffer & in, std::vector< T > & rhs) -> sbn::kernel_buffer &
template <class X, class Y>
operator>>(sbn::kernel_buffer & in, std::pair< X, Y > & rhs) -> sbn::kernel_buffer &
template <class T>
operator>>(sbn::kernel_buffer & in, std::unordered_set< T > & rhs) -> sbn::kernel_buffer &
template <class X, class Y>
operator>>(sbn::kernel_buffer & in, std::unordered_map< X, Y > & rhs) -> sbn::kernel_buffer &
template <class T>
operator<<(sbn::kernel_buffer & out, const std::vector< T > & rhs) -> sbn::kernel_buffer &
template <class X, class Y>
operator<<(sbn::kernel_buffer & out, const std::pair< X, Y > & rhs) -> sbn::kernel_buffer &
template <class T>
operator<<(sbn::kernel_buffer & out, const std::unordered_set< T > & rhs) -> sbn::kernel_buffer &
template <class X, class Y>
operator<<(sbn::kernel_buffer & out, const std::unordered_map< X, Y > & rhs) -> sbn::kernel_buffer &