code: func GemInstall(gem, version string) ([]*command.Model, error) {
  	cmds := []*command.Model{}
  
  	slice := []string{"gem", "install", gem, "--no-document"}
  	if version != "" {
  		slice = append(slice, "-v", version)
  	}
  
  	cmd, err := NewFromSlice(slice)
  	if err != nil {
  		return []*command.Model{}, err
  	}
  
  	cmds = append(cmds, cmd)
  
  	rubyInstallType := installType()
  	if rubyInstallType == RbenvRuby {
  		cmd, err := New("rbenv", "rehash")
  		if err != nil {
  			return []*command.Model{}, err
  		}
  
  		cmds = append(cmds, cmd)
  	}
  
  	return cmds, nil
  }
docs: // GemInstall ...