code: func (c *templateContext) collectInner(n *parse.CommandNode) {
  	if c.typ != templateShortcode {
  		return
  	}
  	if c.Info.IsInner || len(n.Args) == 0 {
  		return
  	}
  
  	for _, arg := range n.Args {
  		var idents []string
  		switch nt := arg.(type) {
  		case *parse.FieldNode:
  			idents = nt.Ident
  		case *parse.VariableNode:
  			idents = nt.Ident
  		}
  
  		if c.hasIdent(idents, "Inner") {
  			c.Info.IsInner = true
  			break
  		}
  	}
  
  }
docs: // collectInner determines if the given CommandNode represents a
  // shortcode call to its .Inner.