# File lib/rhc/commands/member.rb, line 81
    def list(_)
      target = find_membership_container

      members = target.members
      if options.all
        show_members = members.sort
      else
        show_members = members.select do |m| 
          if m.owner?
            true
          elsif m.explicit_role?
            true
          elsif m.from.any? {|f| f["type"] != "team" }
            true
          else
            false
          end
        end.sort
      end
      show_name = show_members.any?{ |m| m.name.presence && m.name != m.login }
      show_login = show_members.any?{ |m| m.login.presence }
      
      if show_members.present?
        say table(show_members.map do |member|
          [
            ((member.name || "") if show_name),
            ((member.login || "") if show_login),
            role_description(member, member.teams(members)),
            (member.id if options.ids),
            member.type
          ].compact
        end, :header => [
          ('Name' if show_name),
          ('Login' if show_login),
          'Role',
          ("ID" if options.ids),
          "Type"
        ].compact)
      else
        info "The #{target.class.model_name.downcase} #{target.name} does not have any members."
      end

      if show_members.count < members.count
        paragraph do
          info "Pass --all to display all members, including members of teams."
        end
      end

      0
    end