class_docstr: Abstract restricted list interface, representing a set of assets that an
  algorithm is restricted from trading.
class_docstr_tok: ["Abstract","restricted","list","interface",",","representing","a","set","of","assets","that","an","algorithm","is","restricted","from","trading","."]
docstr: Base implementation for combining two restrictions.
          
docstr_tok: ["Base","implementation","for","combining","two","restrictions","."]
code: def __or__(self, other_restriction):
      """Base implementation for combining two restrictions."""
      # If the right side is a _UnionRestrictions, defers to the
      # _UnionRestrictions implementation of `|`, which intelligently
      # flattens restricted lists
      if isinstance(other_restriction, _UnionRestrictions):
          return other_restriction | self
      return _UnionRestrictions([self, other_restriction])
  
imports: import abc
  from numpy import vectorize
  from functools import partial, reduce
  import operator
  import pandas
  from six import with_metaclass, iteritems
  from collections import namedtuple
  from toolz import groupby
  from zipline.utils.enum import enum
  from zipline.utils.numpy_utils import vectorized_is_element
  from zipline.assets import Asset
label_desc: Use image node_id 2 for calling the Restrictions obj's underlying member method code with example usage: obj.__or__(other_restriction) and returns: _UnionRestrictions, unknown