    # File lib/yard/parser/ruby/ast_node.rb, line 287
            def pretty_print(q)
              objs = self.dup + [:__last__]
              objs.unshift(type) if type && type != :list

              options = []
              if @docstring
                options << ['docstring', docstring]
              end
              if @source_range || @line_range
                options << ['line', line_range]
                options << ['source', source_range]
              end
              objs.pop if options.size == 0

              q.group(3, 's(', ')') do
                q.seplist(objs, nil, :each) do |v|
                  if v == :__last__
                    q.seplist(options, nil, :each) do |arr|
                      k, v2 = *arr
                      q.group(3) do
                        q.text k
                        q.group(3) do
                          q.text ': '
                          q.pp v2
                        end
                      end
                    end
                  else
                    q.pp v
                  end
                end
              end
            end