Crear hash de hash dinámicamente en perl
Estoy tratando de crear un hash de hash de: la profundidad de anidamiento depende de la cantidad de argumentos pasados a@aGroupByFields
formación.
En la implementación a continuación, obtengo la estructura hash deseada. Pero he codificado los campos [ejemplo -$phBugRecord->{createdBy}
] en lugar de derivarlo de la matriz.
No estoy seguro de cómo crear esto dinámicamente.
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
);
}
Cualquier puntero será de gran ayuda. Gracias.