Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / amd64 / man / man3 / B::Showlex.3
CommitLineData
920dae64
AT
1.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.32
2.\"
3.\" Standard preamble:
4.\" ========================================================================
5.de Sh \" Subsection heading
6.br
7.if t .Sp
8.ne 5
9.PP
10\fB\\$1\fR
11.PP
12..
13.de Sp \" Vertical space (when we can't use .PP)
14.if t .sp .5v
15.if n .sp
16..
17.de Vb \" Begin verbatim text
18.ft CW
19.nf
20.ne \\$1
21..
22.de Ve \" End verbatim text
23.ft R
24.fi
25..
26.\" Set up some character translations and predefined strings. \*(-- will
27.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28.\" double quote, and \*(R" will give a right double quote. | will give a
29.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
30.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
31.\" expand to `' in nroff, nothing in troff, for use with C<>.
32.tr \(*W-|\(bv\*(Tr
33.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34.ie n \{\
35. ds -- \(*W-
36. ds PI pi
37. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
39. ds L" ""
40. ds R" ""
41. ds C` ""
42. ds C' ""
43'br\}
44.el\{\
45. ds -- \|\(em\|
46. ds PI \(*p
47. ds L" ``
48. ds R" ''
49'br\}
50.\"
51.\" If the F register is turned on, we'll generate index entries on stderr for
52.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53.\" entries marked with X<> in POD. Of course, you'll have to process the
54.\" output yourself in some meaningful fashion.
55.if \nF \{\
56. de IX
57. tm Index:\\$1\t\\n%\t"\\$2"
58..
59. nr % 0
60. rr F
61.\}
62.\"
63.\" For nroff, turn off justification. Always turn off hyphenation; it makes
64.\" way too many mistakes in technical documents.
65.hy 0
66.if n .na
67.\"
68.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
69.\" Fear. Run. Save yourself. No user-serviceable parts.
70. \" fudge factors for nroff and troff
71.if n \{\
72. ds #H 0
73. ds #V .8m
74. ds #F .3m
75. ds #[ \f1
76. ds #] \fP
77.\}
78.if t \{\
79. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
80. ds #V .6m
81. ds #F 0
82. ds #[ \&
83. ds #] \&
84.\}
85. \" simple accents for nroff and troff
86.if n \{\
87. ds ' \&
88. ds ` \&
89. ds ^ \&
90. ds , \&
91. ds ~ ~
92. ds /
93.\}
94.if t \{\
95. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
101.\}
102. \" troff and (daisy-wheel) nroff accents
103.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110.ds ae a\h'-(\w'a'u*4/10)'e
111.ds Ae A\h'-(\w'A'u*4/10)'E
112. \" corrections for vroff
113.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115. \" for low resolution devices (crt and lpr)
116.if \n(.H>23 .if \n(.V>19 \
117\{\
118. ds : e
119. ds 8 ss
120. ds o a
121. ds d- d\h'-1'\(ga
122. ds D- D\h'-1'\(hy
123. ds th \o'bp'
124. ds Th \o'LP'
125. ds ae ae
126. ds Ae AE
127.\}
128.rm #[ #] #H #V #F C
129.\" ========================================================================
130.\"
131.IX Title "B::Showlex 3"
132.TH B::Showlex 3 "2001-09-21" "perl v5.8.8" "Perl Programmers Reference Guide"
133.SH "NAME"
134B::Showlex \- Show lexical variables used in functions or files
135.SH "SYNOPSIS"
136.IX Header "SYNOPSIS"
137.Vb 1
138\& perl -MO=Showlex[,-OPTIONS][,SUBROUTINE] foo.pl
139.Ve
140.SH "DESCRIPTION"
141.IX Header "DESCRIPTION"
142When a comma-separated list of subroutine names is given as options, Showlex
143prints the lexical variables used in those subroutines. Otherwise, it prints
144the file-scope lexicals in the file.
145.SH "EXAMPLES"
146.IX Header "EXAMPLES"
147Traditional form:
148.PP
149.Vb 13
150\& $ perl -MO=Showlex -e 'my ($i,$j,$k)=(1,"foo")'
151\& Pad of lexical names for comppadlist has 4 entries
152\& 0: SPECIAL #1 &PL_sv_undef
153\& 1: PVNV (0x9db0fb0) $i
154\& 2: PVNV (0x9db0f38) $j
155\& 3: PVNV (0x9db0f50) $k
156\& Pad of lexical values for comppadlist has 5 entries
157\& 0: SPECIAL #1 &PL_sv_undef
158\& 1: NULL (0x9da4234)
159\& 2: NULL (0x9db0f2c)
160\& 3: NULL (0x9db0f44)
161\& 4: NULL (0x9da4264)
162\& -e syntax OK
163.Ve
164.PP
165New-style form:
166.PP
167.Vb 7
168\& $ perl -MO=Showlex,-newlex -e 'my ($i,$j,$k)=(1,"foo")'
169\& main Pad has 4 entries
170\& 0: SPECIAL #1 &PL_sv_undef
171\& 1: PVNV (0xa0c4fb8) "$i" = NULL (0xa0b8234)
172\& 2: PVNV (0xa0c4f40) "$j" = NULL (0xa0c4f34)
173\& 3: PVNV (0xa0c4f58) "$k" = NULL (0xa0c4f4c)
174\& -e syntax OK
175.Ve
176.PP
177New form, no specials, outside O framework:
178.PP
179.Vb 6
180\& $ perl -MB::Showlex -e \e
181\& 'my ($i,$j,$k)=(1,"foo"); B::Showlex::compile(-newlex,-nosp)->()'
182\& main Pad has 4 entries
183\& 1: PVNV (0x998ffb0) "$i" = IV (0x9983234) 1
184\& 2: PVNV (0x998ff68) "$j" = PV (0x998ff5c) "foo"
185\& 3: PVNV (0x998ff80) "$k" = NULL (0x998ff74)
186.Ve
187.PP
188Note that this example shows the values of the lexicals, whereas the other
189examples did not (as they're compile-time only).
190.Sh "\s-1OPTIONS\s0"
191.IX Subsection "OPTIONS"
192The \f(CW\*(C`\-newlex\*(C'\fR option produces a more readable \f(CW\*(C`name => value\*(C'\fR format,
193and is shown in the second example above.
194.PP
195The \f(CW\*(C`\-nosp\*(C'\fR option eliminates reporting of SPECIALs, such as \f(CW\*(C`0: SPECIAL
196#1 &PL_sv_undef\*(C'\fR above. Reporting of SPECIALs can sometimes overwhelm
197your declared lexicals.
198.SH "SEE ALSO"
199.IX Header "SEE ALSO"
200\&\f(CW\*(C`B::Showlex\*(C'\fR can also be used outside of the O framework, as in the third
201example. See \f(CW\*(C`B::Concise\*(C'\fR for a fuller explanation of reasons.
202.SH "TODO"
203.IX Header "TODO"
204Some of the reported info, such as hex addresses, is not particularly
205valuable. Other information would be more useful for the typical
206programmer, such as line\-numbers, pad-slot reuses, etc.. Given this,
207\&\-newlex isnt a particularly good flag\-name.
208.SH "AUTHOR"
209.IX Header "AUTHOR"
210Malcolm Beattie, \f(CW\*(C`mbeattie@sable.ox.ac.uk\*(C'\fR