original_docstring: Create a copy of a collection.
  
          By default this is going to return a deep copy of the
          collection, hence no data would be shared between the original
          dataset and its copy.
  
          Parameters
          ----------
          deep : boolean, optional
            If False, a shallow copy of the collection is return instead. The copy
            contains only views of the values.
          a : list or None
            List of attributes to include in the copy of the dataset. If
            `None` all attributes are considered. If an empty list is
            given, all attributes are stripped from the copy.
          memo : dict
            Developers only: This argument is only useful if copy() is called
            inside the __deepcopy__() method and refers to the dict-argument
            `memo` in the Python documentation.
          
docstring: Create a copy of a collection.
  By default this is going to return a deep copy of the
  collection, hence no data would be shared between the original
  dataset and its copy.
  
  Parameters
  
  deep : boolean, optional
  If False, a shallow copy of the collection is return instead. The copy
  contains only views of the values.
  a : list or None
  List of attributes to include in the copy of the dataset. If
  `None` all attributes are considered. If an empty list is
  given, all attributes are stripped from the copy.
  memo : dict
  Developers only: This argument is only useful if copy() is called
  inside the __deepcopy__() method and refers to the dict-argument
  `memo` in the Python documentation.
docstring_tokens: Create a copy of a collection . By default this is going to return a deep copy of the collection hence no data would be shared between the original dataset and its copy . Parameters deep : boolean optional If False a shallow copy of the collection is return instead . The copy contains only views of the values . a : list or None List of attributes to include in the copy of the dataset . If ` None ` all attributes are considered . If an empty list is given all attributes are stripped from the copy . memo : dict Developers only : This argument is only useful if copy () is called inside the __deepcopy__ () method and refers to the dict - argument ` memo ` in the Python documentation .
code: def copy(self, deep=True, a=None, memo=None):
          """Create a copy of a collection.
  
          By default this is going to return a deep copy of the
          collection, hence no data would be shared between the original
          dataset and its copy.
  
          Parameters
          ----------
          deep : boolean, optional
            If False, a shallow copy of the collection is return instead. The copy
            contains only views of the values.
          a : list or None
            List of attributes to include in the copy of the dataset. If
            `None` all attributes are considered. If an empty list is
            given, all attributes are stripped from the copy.
          memo : dict
            Developers only: This argument is only useful if copy() is called
            inside the __deepcopy__() method and refers to the dict-argument
            `memo` in the Python documentation.
          """
  
          # create the new collections of the right type derived classes
          # might like to assure correct setting of additional
          # attributes such as self._attr_length
          anew = self.__class__()
  
          # filter the attributes if necessary
          if a is None:
              aorig = self
          else:
              aorig = dict([(k, v) for k, v in self.iteritems() if k in a])
  
          # XXX copyvalues defaults to None which provides capability to
          #     just bind values (not even 'copy').  Might it need be
          #     desirable here?
          anew.update(aorig, copyvalues=deep and 'deep' or 'shallow',
                      memo=memo)
  
          if __debug__ and __mvpadebug__ and 'COL' in debug.active:
              debug("COL", "Copied %s into %s using args deep=%r a=%r",
                    (self, anew, deep, a))
              #if 'state2' in str(self):
              #    import pydb; pydb.debugger()
          return anew
code_tokens: def copy ( self , deep = True , a = None , memo = None ) : anew = self . __class__ ( ) if a is None : aorig = self else : aorig = dict ( [ ( k , v ) for k , v in self . iteritems ( ) if k in a ] ) anew . update ( aorig , copyvalues = deep and 'deep' or 'shallow' , memo = memo ) if __debug__ and __mvpadebug__ and 'COL' in debug . active : debug ( "COL" , "Copied %s into %s using args deep=%r a=%r" , ( self , anew , deep , a ) ) return anew
short_docstring: Create a copy of a collection.
short_docstring_tokens: Create a copy of a collection .
comment: """Create a copy of a collection.
  
          By default this is going to return a deep copy of the
          collection, hence no data would be shared between the original
          dataset and its copy.
  
          Parameters
          ----------
          deep : boolean, optional
            If False, a shallow copy of the collection is return instead. The copy
            contains only views of the values.
          a : list or None
            List of attributes to include in the copy of the dataset. If
            `None` all attributes are considered. If an empty list is
            given, all attributes are stripped from the copy.
          memo : dict
            Developers only: This argument is only useful if copy() is called
            inside the __deepcopy__() method and refers to the dict-argument
            `memo` in the Python documentation.
          """$SEP$# create the new collections of the right type derived classes$SEP$# might like to assure correct setting of additional$SEP$# attributes such as self._attr_length$SEP$# filter the attributes if necessary$SEP$# XXX copyvalues defaults to None which provides capability to$SEP$#     just bind values (not even 'copy').  Might it need be$SEP$#     desirable here?$SEP$#if 'state2' in str(self):$SEP$#    import pydb; pydb.debugger()