Move function for a memory model based class

In reply to dave_59:

Hi Dave,

Thanks for your reply.

The memory model class is something like below and need to implement the move function so that it will give output as described below.

Source code:

class memory_model # (int DEPTH = 1024);
  localparam ADDR_W = $clog2(DEPTH);
  bit [7:0] mem[DEPTH];
  
  extern virtual function void move ( bit [ADDR_W-1:0] source_address, 
                                      bit [ADDR_W-1:0] dest_address,
                                      bit [ADDR_W-1:0] size
                                    ); 

endclass: memory_model

Expected output:
move(0, 10, 5)
0 - > 10
1 - > 11
2 - > 12
3 - > 13
4 - > 14

implement the move function to get the expected output?

Thanks and Regards,
Madineni