obj (Component, ComponentData, or iterable) – Object from which component data objects
are cast.
valid_ctype (type or tuple of type) – Valid Component type(s).
valid_cdatatype (type or tuple of type) – Valid ComponentData type(s).
ctype_validator (None or callable, optional) – Validator for component objects derived from obj.
cdatatype_validator (None or callable, optional) – Validator for component data objects derived from obj.
allow_repeats (bool, optional) – True to allow for nonunique component data objects
derived from obj, False otherwise.
from_iterable (str, optional) – Description of the object to include in error messages.
Meant to be used if the object is an iterable from which
to derive component data objects.