code: def _process_list_value(name, parse_fn, var_type, m_dict, values,
                          results_dictionary):
    
    if m_dict['index'] is not None:
      raise ValueError('Assignment of a list to a list index.')
    elements = filter(None, re.split('[ ,]', m_dict['vals']))
    # Make sure the name hasn't already been assigned a value
    if name in results_dictionary:
      raise _reuse_fail(name, values)
    try:
      results_dictionary[name] = [parse_fn(e) for e in elements]
    except ValueError:
      _parse_fail(name, var_type, m_dict['vals'], values)
docs: Update results_dictionary from a list of values.
  
    Used to update results_dictionary to be returned by parse_values when
    encountering a clause with a list RHS (e.g.  "arr=[1,2,3]".)
  
    Mutates results_dictionary.
  
    Args:
      name: Name of variable in assignment ("arr").
      parse_fn: Function for parsing individual values.
      var_type: Type of named variable.
      m_dict: Dictionary constructed from regex parsing.
        m_dict['val']: RHS value (scalar)
      values: Full expression being parsed
      results_dictionary: The dictionary being updated for return by the parsing
        function.
  
    Raises:
      ValueError: If the name has an index or the values cannot be parsed.