code: func (c *Comments) applyComments(node, previous Node, position CommentPosition) {
  	if previous != nil {
  		c.CommentMap.AddComments(previous, c.Comments, position)
  		c.Comments = nil
  	} else {
  		c.CommentMap.AddComments(node, c.Comments, position)
  		c.Comments = nil
  	}
  	// Only apply the future comments to the node if the previous is set.
  	// This is for detecting end of line comments and which node comments on the following lines belongs to
  	if previous != nil {
  		c.CommentMap.AddComments(node, c.future, position)
  		c.future = nil
  	}
  }
docs: // applyComments applies both the comments and the future comments to the given node and the previous one,
  // based on the context.