示例#1
0
def unpack_mix(discrete: Multipoint,
               linear: Linear,
               shaped: Maybe[Shaped],
               context: Context
               ) -> Union[Empty, Linear, Mix, Multipoint, Shaped]:
    empty = context.empty
    return ((shaped
             if linear is empty
             else (linear
                   if shaped is empty
                   else context.mix_cls(discrete, linear, shaped)))
            if discrete is empty
            else (discrete
                  if shaped is empty and linear is empty
                  else context.mix_cls(discrete, linear, shaped)))
示例#2
0
def unpack_linear_mix(discrete: Maybe[Multipoint],
                      linear: Maybe[Linear],
                      context: Context
                      ) -> Union[Empty, Mix, Multipoint, Linear]:
    return (linear
            if discrete is context.empty
            else (discrete
                  if linear is context.empty
                  else context.mix_cls(discrete, linear, context.empty)))