def config_prop_name(cls, name, value):
  """Configure name on property.

  Attempts to configure the name of a property.  If attribute value has
  __config__ method will call it with attribute name.

  Args:
    cls: Class property will belong to.
    name: Name of attribute.
    value: Value of attribute.

  Returns:
    True if attribute was determined to be a property and was configured,
    else False.
  """
  if not isinstance(cls, type):
    raise TypeError('Class must be a type')
  if not isinstance(name, str):
    raise TypeError('Name must be a string')
  if not name:
    raise ValueError('Name must be non-empty')

  try:
    config = value.__config__
  except AttributeError:
    return False
  else:
    config(cls, name)
    return True