NAME Devel::MAT::Tool::Object::Pad - extend Devel::MAT to analyse Object::Pad-based programs DESCRIPTION This third-party Devel::MAT tool adds commands and other support to help with analysis of programs that use Object::Pad. Once installed, it is loaded automatically by the pmat shell whenever a dumpfile that uses Object::Pad is loaded. COMMANDS classes Prints a list of the Object::Pad classes and roles. pmat> classes role ARole at C_STRUCT(Object::Pad/ClassMeta.role) at 0x55d7c17a1550 class HashClass at C_STRUCT(Object::Pad/ClassMeta.class) at 0x55d7c1776b70 ... fields Prints the values of all the fields of a given instance of an Object::Pad-based class. pmat> fields 0x55d7c173d4b8 The field AV ARRAY(3)=NativeClass at 0x55d7c173d4b8 Ix Field Value 0 $sfield SCALAR(UV) at 0x55d7c173d938 = 123 ... EXTENSIONS TO COMMANDS outrefs, identify, ... Outbound references from ARRAY SVs that are the backing fields of object instances will print elements using field names, instead of plain indexes. pmat> outrefs 0x55d7c173d4b8 s the $sfield field SCALAR(UV) at 0x55d7c173d938 ... pmat> identify 0x55d7c17606d8 REF() at 0x55d7c17606d8 is: └─the %hfield field of ARRAY(3)=NativeClass at 0x55d7c173d4b8, which is: ... SV METHODS This tool adds the following SV methods. objectpad_class (STASH) $class = $stash->objectpad_class If the stash is the package for an Object::Pad-based class, returns the C_STRUCT containing information about the class itself. Otherwise, returns undef. AUTHOR Paul Evans <leonerd@leonerd.org.uk>