parameters: (self, sort=True)
return_statement: return ','.join('{0}{1}'.format(flag_map[v], k)
                          for k, v in iterator)
docstring: Args
          ----
          sort: bool
              Optional.  If True, the features are sorted by name; otherwise,
              the ordering is unstable between python session due to hash
              randomization.  Defaults to True.
  
          Returns a string suitable for use as the ``features`` argument to
          ``Target.create_target_machine()``.
docstring_summary: Args
          ----
          sort: bool
              Optional.  If True, the features are sorted by name; otherwise,
              the ordering is unstable between python session due to hash
              randomization.  Defaults to True.
docstring_tokens: Args ---- sort : bool Optional . If True the features are sorted by name ; otherwise the ordering is unstable between python session due to hash randomization . Defaults to True .
function: def flatten(self, sort=True):
          """
          Args
          ----
          sort: bool
              Optional.  If True, the features are sorted by name; otherwise,
              the ordering is unstable between python session due to hash
              randomization.  Defaults to True.
  
          Returns a string suitable for use as the ``features`` argument to
          ``Target.create_target_machine()``.
  
          """
          iterator = sorted(self.items()) if sort else iter(self.items())
          flag_map = {True: '+', False: '-'}
          return ','.join('{0}{1}'.format(flag_map[v], k)
                          for k, v in iterator)
function_tokens: def flatten ( self , sort = True ) : iterator = sorted ( self . items ( ) ) if sort else iter ( self . items ( ) ) flag_map = { True : '+' , False : '-' } return ',' . join ( '{0}{1}' . format ( flag_map [ v ] , k ) for k , v in iterator )