http://www.perlmonks.org?node_id=1006411

anshumangoyal has asked for the wisdom of the Perl Monks concerning the following question:

I have 10 subroutines which return Hash References. I call all these subroutines from my main program. Each Subroutine returns different depth level of Hash Reference.

e.g Sub-Routine-1 will return Hash reference of type  $hashRef->{$var1}->{$var2}->{$var3} and Sub-Routine-2 may return Hash reference of type  $hashRef->{$var1}->{$var2} and some of them  $hashRef->{$var1}.

In my main program (Calling program), i dont know what depth of Hash Reference will be returned back. In my main Program I want to accumulate all these hash reference and put them combined in a single hash (Say %MasterHash).

Problem I am facing is iterating the Hash Reference of different depth's which I don't know. Is there any way to do it. I am not pasting my exact code as its a big code. But if some one requires, I will post the same as well.