def _process_list_value(name, parse_fn, var_type, m_dict, values, results_dictionary):
    """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.
    """
    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)
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.
utils/hparam.py