Game-Collisions
view release on metacpan or search on metacpan
nytprof/Exporter-Heavy-pm-11-line.html view on Meta::CPAN
<tr><td class="h"><a name="175"></a>175</td><td></td><td></td><td></td><td></td><td class="s"> Carp::croak("Can't continue after import errors");</td></tr>
<tr><td class="h"><a name="176"></a>176</td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h"><a name="177"></a>177</td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h"><a name="178"></a>178</td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h"><a name="179"></a>179</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="180"></a>180</td><td class="c3">1</td><td class="c3"><span title="Avg 200ns">200ns</span></td><td></td><td></td><td class="s"> warn "Importing into $callpkg from $pkg: ",</td></tr>
<tr><td class="h"><a name="181"></a>181</td><td></td><td></td><td></td><td></td><td class="s"> join(", ",sort @imports) if $Exporter::Verbose;</td></tr>
<tr><td class="h"><a name="182"></a>182</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="183"></a>183</td><td class="c3">1</td><td class="c0"><span title="Avg 13µs">13µs</span></td><td></td><td></td><td class="s"> foreach $sym (@imports) {</td></tr>
<tr><td class="h"><a name="184"></a>184</td><td></td><td></td><td></td><td></td><td class="s"> # shortcut for the common case of no type character</td></tr>
<tr><td class="h"><a name="185"></a>185</td><td class="c1">2</td><td class="c0"><span title="Avg 8µs">16µs</span></td><td class="c3">2</td><td class="c3">1µs</td><td class="s"> (*{"${callpkg}::$sym"} = \&{"${pkg}::$sym&qu...
<tr><td class="h"><a name="186"></a>186</td><td></td><td></td><td></td><td></td><td class="s"> unless $sym =~ s/^(\W)//;</td></tr>
<tr><td class="h"><a name="187"></a>187</td><td></td><td></td><td></td><td></td><td class="s"> $type = $1;</td></tr>
<tr><td class="h"><a name="188"></a>188</td><td class="c1">2</td><td class="c0"><span title="Avg 301µs">602µs</span></td><td class="c3">2</td><td class="c1">51µs</td><td class="s"><div class="calls"><div class="calls_in"># spent 34µs (17+17) with...
# once (17µs+17µs) by Exporter::as_heavy at <a href="Exporter-Heavy-pm-11-line.html#188">line 188</a></div></div> no warnings 'once';<div class="calls"><div class="calls_out"> # spent 34µs making 1 call to <a href="Exporter-Hea...
# spent 17µs making 1 call to <a href="warnings-pm-2-line.html#310">warnings::unimport</a></div></div></td></tr>
<tr><td class="h"><a name="189"></a>189</td><td></td><td></td><td></td><td></td><td class="s"> *{"${callpkg}::$sym"} =</td></tr>
<tr><td class="h"><a name="190"></a>190</td><td></td><td></td><td></td><td></td><td class="s"> $type eq '&' ? \&{"${pkg}::$sym"} :</td></tr>
<tr><td class="h"><a name="191"></a>191</td><td></td><td></td><td></td><td></td><td class="s"> $type eq '$' ? \${"${pkg}::$sym"} :</td></tr>
<tr><td class="h"><a name="192"></a>192</td><td></td><td></td><td></td><td></td><td class="s"> $type eq '@' ? \@{"${pkg}::$sym"} :</td></tr>
<tr><td class="h"><a name="193"></a>193</td><td></td><td></td><td></td><td></td><td class="s"> $type eq '%' ? \%{"${pkg}::$sym"} :</td></tr>
<tr><td class="h"><a name="194"></a>194</td><td></td><td></td><td></td><td></td><td class="s"> $type eq '*' ? *{"${pkg}::$sym"} :</td></tr>
<tr><td class="h"><a name="195"></a>195</td><td></td><td></td><td></td><td></td><td class="s"> do { require Carp; Carp::croak("Can't export symbol: $type$sym") };</td></tr>
<tr><td class="h"><a name="196"></a>196</td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h"><a name="197"></a>197</td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h"><a name="198"></a>198</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="199"></a>199</td><td></td><td></td><td></td><td></td><td class="s">sub heavy_export_to_level</td></tr>
<tr><td class="h"><a name="200"></a>200</td><td></td><td></td><td></td><td></td><td class="s"><div class="calls"><div class="calls_in"># spent 179µs (13+166) within Exporter::Heavy::heavy_export_to_level which was called:
# once (13µs+166µs) by Time::HiRes::import at <a href="Exporter-pm-5-line.html#81">line 81 of Exporter.pm</a></div></div>{</td></tr>
<tr><td class="h"><a name="201"></a>201</td><td class="c3">1</td><td class="c3"><span title="Avg 600ns">600ns</span></td><td></td><td></td><td class="s"> my $pkg = shift;</td></tr>
<tr><td class="h"><a name="202"></a>202</td><td class="c3">1</td><td class="c3"><span title="Avg 300ns">300ns</span></td><td></td><td></td><td class="s"> my $level = shift;</td></tr>
<tr><td class="h"><a name="203"></a>203</td><td class="c3">1</td><td class="c3"><span title="Avg 600ns">600ns</span></td><td></td><td></td><td class="s"> (undef) = shift; # XXX redundant arg</td></tr>
<tr><td class="h"><a name="204"></a>204</td><td class="c3">1</td><td class="c3"><span title="Avg 700ns">700ns</span></td><td></td><td></td><td class="s"> my $callpkg = caller($level);</td></tr>
<tr><td class="h"><a name="205"></a>205</td><td class="c3">1</td><td class="c0"><span title="Avg 7µs">7µs</span></td><td class="c3">1</td><td class="c3">12µs</td><td class="s"> $pkg->export($callpkg, @_);<div class="calls"><div class="call...
<tr><td class="h"><a name="206"></a>206</td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h"><a name="207"></a>207</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="208"></a>208</td><td></td><td></td><td></td><td></td><td class="s"># Utility functions</td></tr>
<tr><td class="h"><a name="209"></a>209</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="210"></a>210</td><td></td><td></td><td></td><td></td><td class="s">sub _push_tags {</td></tr>
<tr><td class="h"><a name="211"></a>211</td><td></td><td></td><td></td><td></td><td class="s"> my($pkg, $var, $syms) = @_;</td></tr>
<tr><td class="h"><a name="212"></a>212</td><td></td><td></td><td></td><td></td><td class="s"> my @nontag = ();</td></tr>
<tr><td class="h"><a name="213"></a>213</td><td></td><td></td><td></td><td></td><td class="s"> my $export_tags = \%{"${pkg}::EXPORT_TAGS"};</td></tr>
<tr><td class="h"><a name="214"></a>214</td><td></td><td></td><td></td><td></td><td class="s"> push(@{"${pkg}::$var"},</td></tr>
<tr><td class="h"><a name="215"></a>215</td><td></td><td></td><td></td><td></td><td class="s"> map { $export_tags->{$_} ? @{$export_tags->{$_}} </td></tr>
<tr><td class="h"><a name="216"></a>216</td><td></td><td></td><td></td><td></td><td class="s"> : scalar(push(@nontag,$_),$_) }</td></tr>
<tr><td class="h"><a name="217"></a>217</td><td></td><td></td><td></td><td></td><td class="s"> (@$syms) ? @$syms : keys %$export_tags);</td></tr>
<tr><td class="h"><a name="218"></a>218</td><td></td><td></td><td></td><td></td><td class="s"> if (@nontag and $^W) {</td></tr>
<tr><td class="h"><a name="219"></a>219</td><td></td><td></td><td></td><td></td><td class="s"> # This may change to a die one day</td></tr>
<tr><td class="h"><a name="220"></a>220</td><td></td><td></td><td></td><td></td><td class="s"> require Carp;</td></tr>
<tr><td class="h"><a name="221"></a>221</td><td></td><td></td><td></td><td></td><td class="s"> Carp::carp(join(", ", @nontag)." are not tags of $pkg");</td></tr>
<tr><td class="h"><a name="222"></a>222</td><td></td><td></td><td></td><td></td><td class="s"> }</td></tr>
<tr><td class="h"><a name="223"></a>223</td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h"><a name="224"></a>224</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="225"></a>225</td><td></td><td></td><td></td><td></td><td class="s">sub heavy_require_version {</td></tr>
<tr><td class="h"><a name="226"></a>226</td><td></td><td></td><td></td><td></td><td class="s"> my($self, $wanted) = @_;</td></tr>
<tr><td class="h"><a name="227"></a>227</td><td></td><td></td><td></td><td></td><td class="s"> my $pkg = ref $self || $self;</td></tr>
<tr><td class="h"><a name="228"></a>228</td><td></td><td></td><td></td><td></td><td class="s"> return ${pkg}->VERSION($wanted);</td></tr>
<tr><td class="h"><a name="229"></a>229</td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h"><a name="230"></a>230</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="231"></a>231</td><td></td><td></td><td></td><td></td><td class="s">sub heavy_export_tags {</td></tr>
<tr><td class="h"><a name="232"></a>232</td><td></td><td></td><td></td><td></td><td class="s"> _push_tags((caller)[0], "EXPORT", \@_);</td></tr>
<tr><td class="h"><a name="233"></a>233</td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h"><a name="234"></a>234</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="235"></a>235</td><td></td><td></td><td></td><td></td><td class="s">sub heavy_export_ok_tags {</td></tr>
<tr><td class="h"><a name="236"></a>236</td><td></td><td></td><td></td><td></td><td class="s"> _push_tags((caller)[0], "EXPORT_OK", \@_);</td></tr>
<tr><td class="h"><a name="237"></a>237</td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h"><a name="238"></a>238</td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="239"></a>239</td><td class="c3">1</td><td class="c0"><span title="Avg 5µs">5µs</span></td><td></td><td></td><td class="s">1;</td></tr>
<tr><td class="s"><a name=""></a> </td><td></td><td></td><td></td><td></td><td class="s"></td></tr>
<tr><td class="h"><a name="Exporter__Heavy__CORE_match"></a></td><td></td><td></td><td></td><td></td><td class="s"><div class="calls"><div class="calls_in"># spent 1µs within Exporter::Heavy::CORE:match which was called 2 times, avg 650ns/call:
# 2 times (1µs+0s) by Exporter::Heavy::heavy_export at <a href="Exporter-Heavy-pm-11-line.html#62">line 62</a>, avg 650ns/call</div></div>sub Exporter::Heavy::CORE:match; # opcode<br /> </td></tr>
<tr><td class="h"><a name="Exporter__Heavy__CORE_subst"></a></td><td></td><td></td><td></td><td></td><td class="s"><div class="calls"><div class="calls_in"># spent 7µs within Exporter::Heavy::CORE:subst which was called 51 times, avg 135ns/call:
# 49 times (6µs+0s) by Exporter::Heavy::_rebuild_cache at <a href="Exporter-Heavy-pm-11-line.html#20">line 20</a>, avg 118ns/call
# 2 times (1µs+0s) by Exporter::Heavy::heavy_export at <a href="Exporter-Heavy-pm-11-line.html#185">line 185</a>, avg 550ns/call</div></div>sub Exporter::Heavy::CORE:subst; # opcode<br /> </td></tr>
</tbody></table></div>
<script type="text/javascript">
$(document).ready(function() {
$("#subs_table").tablesorter({
sortList: [[3,1]],
headers: {
3: { sorter: 'fmt_time' },
4: { sorter: 'fmt_time' }
}
});
$(".floatHeaders").each( function(){ $(this).floatThead(); } );
show_fragment_target();
$(window).on('hashchange', function(e){
show_fragment_target();
});
} );
</script>
<div class="footer">Report produced by the
<a href="http://metacpan.org/release/Devel-NYTProf/">NYTProf 6.06</a>
Perl profiler, developed by
<a href="http://www.linkedin.com/in/timbunce">Tim Bunce</a> based on
work by Adam Kaplan and Salvador Fandiño GarcÃa.
</div>
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
</body></html>
( run in 0.512 second using v1.01-cache-2.11-cpan-800906f7e73 )