B::Xref

Perl compiler backend that generates a cross-reference listing of variables, subroutines, and formats in a Perl program. Results are grouped by file, then subroutine, then package, then objects within the package with line numbers. The line numbers are given as a comma-separated list. A line number may be preceded by one of the following code letters:

Code Meaning
% Subroutine or method call
f Format definition
i Introduction, e.g., a lexical defined with my
s Subroutine definition

Invoke B::Xref like this:

perl -MO=Xref[,options] program

program is the Perl program whose cross-reference you want. Options are separated by commas and follow normal backend option conventions. The possible options are:

  • -D
  • Specifies internal debug options. Most useful if specified with -r option. Debug options are:
    • O
    • Prints each operator as it's being processed, in the execution order of the program
    • t
    • Prints the object on the top of the stack as it is being tracked
  • -ofilename
  • Sends output to filename instead of to STDOUT.
  • -r
  • Produces raw output in machine-readable form for each definition or use of a variable, subroutine, or format.