case classInductiveChainConcat[P <: Chain[_, _], SH <: Chain[_, _], ST, R <: Chain[_, _]](pstConcat: ChainConcat[P, SH, R]) extends ChainConcat[P, Chain[SH, ST], Chain[R, ST]] with Product with Serializable
ChainConcat implementation that handles concatenation of a longer chain
by finding another ChainConcat that can handle all but the last element
in that chain, then simply appending the last element to that result.
ChainConcat implementation that handles concatenation of a longer chain by finding another ChainConcat that can handle all but the last element in that chain, then simply appending the last element to that result.
P ++ (Chain ~ ST) = (P ++ Chain) ~ ST