Randomize dynamic array with unique values

In reply to bachan21:

class A;
  typedef bit [2:0] number_t;
  rand number_t number;
  number_t recent_numbers[$];
  bit add;
  
  function void post_randomize();
    add = 1;
    foreach (recent_numbers[i]) begin
      if (recent_numbers[i] == number) begin
        add = 0;
        break;
      end else begin
        add = 1;
      end
    end
    if (add == 1) begin
      recent_numbers.push_front(number);
    end
    if (recent_numbers.size() > 5)
       void'(recent_numbers.pop_back());
  endfunction
endclass : A


module top();
  A a = new();
  initial begin
    repeat(10) begin
    if(!a.randomize()) $display("Please look into randomization issue");
    if (a.recent_numbers.size() == 5) begin
      $display("recent_numbers = %p",a.recent_numbers);
    end
    end
  end

endmodule : top