Модуль perl для отладочного вывода сложных типов данных

Изображение пользователя ramok.
Tags: •  • 

Если вы пишите на perl что нибуть сложнее однострочников, часто спасательным кругом становится модуль Data::Dumper.
Этот модуль очень полезен как для отладки и так и при разборе чужих программ и позволяет выводить содержимое любых сложных стукрур данных со всем их содержимым.

Например разбираемся в программе и видим что из модуля возвращается массив @data в котором находятся нужные нам данные.
Выводим его с помощью

use Data::Dumper;
print STDERR Dumper @data;

и видим что то типа
$VAR1 = {
          'TS' => '13550361229',
          'INDEX' => 1,
          'FL' => 1,
          'TD' => '73728',
          'DT' => 'addr'
        };
$VAR2 = {
          'TS' => '13550484957',
          'INDEX' => 2,
          'TD' => '82944',
          'FR' => 1,
          'DT' => 'mps'
        };
...
$VAR346 = { 
            'TS' => '13619541826',
            'INDEX' => 346,
            'TD' => '89088',
            'FR' => 1,
            'DT' => 'mps_ack'
          };

Ага. Сразу видно что это массив из хешей, и сразу видно и размер массива, и ключи в хешах и что по ним находится.

некоторые

некоторые однострочники многим скриптам 100 очков вперёд дадут

однострочники

однострочники это обычно или для элеметраных вещей или это уже высший пилотаж, который пишется людьми думающими на perl, и которым не нужен Dumper что бы понять что за структуру он там намутил Ж:-)
--
Signature invent in progress 24% ##........