code: func (o *OAuthSession) Listing(username, listing string, sort PopularitySort, params ListingOptions) ([]*Submission, error) {
  	p, err := query.Values(params)
  	if err != nil {
  		return nil, err
  	}
  	if sort != "" {
  		p.Set("sort", string(sort))
  	}
  
  	type resp struct {
  		Data struct {
  			Children []struct {
  				Data *Submission
  			}
  		}
  	}
  	r := &resp{}
  	url := fmt.Sprintf("https://oauth.reddit.com/user/%s/%s?%s", username, listing, p.Encode())
  	err = o.getBody(url, r)
  	if err != nil {
  		return nil, err
  	}
  
  	submissions := make([]*Submission, len(r.Data.Children))
  	for i, child := range r.Data.Children {
  		submissions[i] = child.Data
  	}
  
  	return submissions, nil
  }
docs: // Listing returns a slice of Submission pointers.
  // See https://www.reddit.com/dev/api#listings for documentation.