code: def _get_union_type_name(type_names_to_union):
      
      if not type_names_to_union:
          raise AssertionError(u'Expected a non-empty list of type names to union, received: '
                               u'{}'.format(type_names_to_union))
      return u'Union__' + u'__'.join(sorted(type_names_to_union))
docs: Construct a unique union type name based on the type names being unioned.