Criando hash de hash dinamicamente em perl

Estou tentando criar um hash de hash de - a profundidade de aninhamento depende do número de argumentos passados para@aGroupByFields array.

Na implementação abaixo, estou obtendo a estrutura de hash desejada. Mas codifiquei os campos [exemplo -$phBugRecord->{createdBy} ] em vez de derivá-lo da matriz.

Não sei como criar isso dinamicamente.

my (@aGroupByFields) = ['createdBy','status','devPriority']; 
# In real case,these are passed in as arguments

my (%hTemp); 
# This is the final hash which will be structured according to above fields

# %hBugDetails is the hash containing details of all bugs

foreach my $phBugRecord ( @{ $hBugDetails{records} } ) {

    # The below statement needs to be generated dynamically as 
    # opposed to the hard-coded values.
    push(
        @{
            $hTemp{ $phBugRecord->{createdBy} }{ $phBugRecord->{status} }
                { $phBugRecord->{devPriority} }
        },
        $phBugRecord
    );

}

Qualquer ponteiro será uma grande ajuda.

questionAnswers(2)

yourAnswerToTheQuestion