code: def map(self, function, options=None):
          
          if options is None:
              options = dict()
          if isinstance(function, list):
              language = 'erlang'
          else:
              language = 'javascript'
  
          mr = RiakMapReducePhase('map',
                                  function,
                                  options.get('language', language),
                                  options.get('keep', False),
                                  options.get('arg', None))
          self._phases.append(mr)
          return self
docs: Add a map phase to the map/reduce operation.
  
          :param function: Either a named Javascript function (ie:
            'Riak.mapValues'), or an anonymous javascript function (ie:
            'function(...) ... ' or an array ['erlang_module',
            'function'].
          :type function: string, list
          :param options: phase options, containing 'language', 'keep'
            flag, and/or 'arg'.
          :type options: dict
          :rtype: :class:`RiakMapReduce`