code: def CaptureVariablesList(self, items, depth, empty_message, limits):
      
      v = []
      for name, value in items:
        if (self._total_size >= self.max_size) or (
            len(v) >= limits.max_list_items):
          v.append({
              'status': {
                  'refersTo': 'VARIABLE_VALUE',
                  'description': {
                      'format':
                          ('Only first $0 items were captured. Use in an '
                           'expression to see all items.'),
                      'parameters': [str(len(v))]}}})
          break
        v.append(self.CaptureNamedVariable(name, value, depth, limits))
  
      if not v:
        return [{'status': {
            'refersTo': 'VARIABLE_NAME',
            'description': {'format': empty_message}}}]
  
      return v
docs: Captures list of named items.
  
      Args:
        items: iterable of (name, value) tuples.
        depth: nested depth of dictionaries and vectors for items.
        empty_message: info status message to set if items is empty.
        limits: Per-object limits for capturing variable data.
  
      Returns:
        List of formatted variable objects.