code: func parseStringsWhitespaceDelimited(rest string, d *Directive) (*Node, map[string]bool, error) {
  	if rest == "" {
  		return nil, nil, nil
  	}
  
  	node := &Node{}
  	rootnode := node
  	prevnode := node
  	for _, str := range tokenWhitespace.Split(rest, -1) { // use regexp
  		prevnode = node
  		node.Value = str
  		node.Next = &Node{}
  		node = node.Next
  	}
  
  	// XXX to get around regexp.Split *always* providing an empty string at the
  	// end due to how our loop is constructed, nil out the last node in the
  	// chain.
  	prevnode.Next = nil
  
  	return rootnode, nil, nil
  }
docs: // parses a whitespace-delimited set of arguments. The result is effectively a
  // linked list of string arguments.