In reply to dave_59:
In reply to raysalemi:
The documentation is misleading. What it does is return the existing value of an entry if it exists, and creates a new entry in the pool if it does not already exist, and returns the default initial value for the pool type.
uvm_pool is a carry-over from Specman, which did not have associative arrays. And one difference between SystemVerilog’s implementation of assoc array and a pool is that SV only creates an entry when you write to it, where as a pool you create a new entry when you write(add) or try to read(get) an entry.
Right, but this is completely broken for any object and cannot be overridden because of all the static functions.
Ray