code: func (t *tree) parseAlias(token item) {
  	var name = t.expect(itemIdent, "alias").val
  	var lastSegment = name
  	for {
  		switch next := t.next(); next.typ {
  		case itemDotIdent:
  			name += next.val
  			lastSegment = next.val[1:]
  		case itemRightDelim:
  			t.aliases[lastSegment] = name
  			return
  		default:
  			t.unexpected(next, "alias. (expected '}')")
  		}
  	}
  }
docs: // parseAlias updates the tree with the given alias.
  // Aliases are applied at immediately (at parse time) to new nodes.
  // "alias" has just been read.