def __init__(self, tokens=None, item_class=None, name=None): from abjad.tools import pitchtools if isinstance(tokens, str): tokens = tokens.split() elif isinstance(tokens, ( collections.Iterator, types.GeneratorType, )): tokens = [token for token in tokens] if item_class is None: item_class = self._named_item_class if tokens is not None: if isinstance(tokens, datastructuretools.TypedCollection) and \ issubclass(tokens.item_class, self._parent_item_class): item_class = tokens.item_class elif len(tokens): if isinstance(tokens, collections.Set): tokens = tuple(tokens) if isinstance(tokens[0], str): item_class = self._named_item_class elif isinstance(tokens[0], (int, float)): item_class = self._numbered_item_class elif isinstance(tokens[0], self._parent_item_class): item_class = type(tokens[0]) assert issubclass(item_class, self._parent_item_class) TypedFrozenset.__init__( self, tokens=tokens, item_class=item_class, name=name, )
def __init__(self, items=None, item_class=None): if isinstance(items, str): items = items.split() elif isinstance(items, ( collections.Iterator, types.GeneratorType, )): items = [item for item in items] if item_class is None: item_class = self._named_item_class if items is not None: if isinstance(items, datastructuretools.TypedCollection) and \ issubclass(items.item_class, self._parent_item_class): item_class = items.item_class elif len(items): if isinstance(items, collections.Set): items = tuple(items) if isinstance(items[0], str): item_class = self._named_item_class elif isinstance(items[0], (int, float)): item_class = self._numbered_item_class elif isinstance(items[0], self._parent_item_class): item_class = type(items[0]) assert issubclass(item_class, self._parent_item_class) TypedFrozenset.__init__( self, items=items, item_class=item_class, )
def __init__(self, items=None, item_class=None): if isinstance(items, str): items = items.split() elif isinstance(items, ( collections.Iterator, types.GeneratorType, )): items = [item for item in items] if item_class is None: item_class = self._named_item_class if items is not None: if isinstance(items, datastructuretools.TypedCollection) and \ issubclass(items.item_class, self._parent_item_class): item_class = items.item_class elif len(items): if isinstance(items, collections.Set): items = tuple(items) if isinstance(items[0], str): item_class = self._named_item_class elif isinstance(items[0], (int, float)): item_class = self._numbered_item_class elif isinstance(items[0], self._parent_item_class): item_class = type(items[0]) assert issubclass(item_class, self._parent_item_class) TypedFrozenset.__init__( self, items=items, item_class=item_class, )