Filename | /opt/local/lib/perl5/5.14.2/vars.pm |
Statements | Executed 3040 statements in 10.1ms |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
222 | 222 | 192 | 7.49ms | 9.40ms | import | vars::
1608 | 3 | 1 | 1.91ms | 1.91ms | CORE:match (opcode) | vars::
1 | 1 | 1 | 213µs | 297µs | BEGIN@7 | vars::
1 | 1 | 1 | 33µs | 33µs | BEGIN@3 | vars::
1 | 1 | 1 | 6µs | 17µs | BEGIN@8 | vars::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package vars; | ||||
2 | |||||
3 | 2 | 94µs | 1 | 33µs | # spent 33µs within vars::BEGIN@3 which was called:
# once (33µs+0s) by parent::BEGIN@3 at line 3 # spent 33µs making 1 call to vars::BEGIN@3 |
4 | |||||
5 | 1 | 600ns | our $VERSION = '1.02'; | ||
6 | |||||
7 | 2 | 218µs | 2 | 381µs | # spent 297µs (213+84) within vars::BEGIN@7 which was called:
# once (213µs+84µs) by parent::BEGIN@3 at line 7 # spent 297µs making 1 call to vars::BEGIN@7
# spent 84µs making 1 call to warnings::register::import |
8 | 2 | 272µs | 2 | 28µs | # spent 17µs (6+11) within vars::BEGIN@8 which was called:
# once (6µs+11µs) by parent::BEGIN@3 at line 8 # spent 17µs making 1 call to vars::BEGIN@8
# spent 11µs making 1 call to strict::import |
9 | |||||
10 | # spent 9.40ms (7.49+1.91) within vars::import which was called 222 times, avg 42µs/call:
# once (185µs+43µs) by XML::LibXML::BEGIN@14 at line 18 of XML/LibXML.pm
# once (158µs+38µs) by Template::Config::BEGIN@24 at line 27 of Template/Config.pm
# once (130µs+31µs) by File::stat::BEGIN@28 at line 28 of File/stat.pm
# once (87µs+28µs) by Heap071::Fibonacci::BEGIN@4 at line 4 of Heap071/Fibonacci.pm
# once (91µs+24µs) by IPC::Run::BEGIN@1015 at line 1015 of IPC/Run.pm
# once (88µs+20µs) by Data::Dump::BEGIN@16 at line 16 of Data/Dump.pm
# once (66µs+35µs) by PPI::Statement::Break::BEGIN@43 at line 43 of PPI/Statement/Break.pm
# once (79µs+19µs) by Heap071::Elem::BEGIN@4 at line 4 of Heap071/Elem.pm
# once (61µs+34µs) by Graph::SPTHeapElem::BEGIN@4 at line 4 of Graph/SPTHeapElem.pm
# once (67µs+26µs) by Cwd::BEGIN@172 at line 172 of Cwd.pm
# once (70µs+17µs) by Data::Compare::BEGIN@12 at line 12 of Data/Compare.pm
# once (62µs+18µs) by HTTP::Date::BEGIN@13 at line 13 of HTTP/Date.pm
# once (64µs+14µs) by Template::Constants::BEGIN@28 at line 28 of Template/Constants.pm
# once (61µs+16µs) by File::Spec::Functions::BEGIN@6 at line 6 of File/Spec/Functions.pm
# once (61µs+15µs) by PPI::Lexer::BEGIN@63 at line 63 of PPI/Lexer.pm
# once (57µs+18µs) by Time::Seconds::BEGIN@3 at line 3 of Time/Seconds.pm
# once (58µs+17µs) by Data::Dump::BEGIN@4 at line 4 of Data/Dump.pm
# once (60µs+14µs) by XML::LibXML::InputCallback::BEGIN@2149 at line 2149 of XML/LibXML.pm
# once (56µs+17µs) by Carp::Clan::BEGIN@17 at line 17 of Carp/Clan.pm
# once (53µs+16µs) by Graph::MSTHeapElem::BEGIN@4 at line 4 of Graph/MSTHeapElem.pm
# once (56µs+13µs) by HTTP::Status::BEGIN@6 at line 6 of HTTP/Status.pm
# once (55µs+12µs) by IPC::Run::Debug::BEGIN@71 at line 71 of IPC/Run/Debug.pm
# once (54µs+12µs) by POSIX::SigRt::BEGIN@60 at line 60 of POSIX.pm
# once (51µs+15µs) by Graph::Reader::Dot::BEGIN@347 at line 347 of Graph_Reader_Dot.yp
# once (52µs+13µs) by File::Temp::BEGIN@166 at line 166 of File/Temp.pm
# once (50µs+14µs) by XML::LibXML::XPathContext::BEGIN@13 at line 13 of XML/LibXML/XPathContext.pm
# once (50µs+12µs) by File::chdir::BEGIN@4 at line 4 of File/chdir.pm
# once (51µs+12µs) by File::Path::BEGIN@19 at line 19 of File/Path.pm
# once (49µs+13µs) by Clone::BEGIN@6 at line 6 of Clone.pm
# once (49µs+13µs) by Set::Object::BEGIN@499 at line 499 of Set/Object.pm
# once (49µs+12µs) by DBD::SQLite::BEGIN@9 at line 9 of DBD/SQLite.pm
# once (49µs+12µs) by File::Which::BEGIN@8 at line 8 of File/Which.pm
# once (49µs+12µs) by HTTP::Request::Common::BEGIN@4 at line 4 of HTTP/Request/Common.pm
# once (49µs+12µs) by Data::UUID::BEGIN@6 at line 6 of Data/UUID.pm
# once (47µs+13µs) by Try::Tiny::BEGIN@6 at line 6 of Try/Tiny.pm
# once (47µs+12µs) by XML::LibXML::BEGIN@36 at line 36 of XML/LibXML.pm
# once (47µs+11µs) by URI::BEGIN@13 at line 13 of URI.pm
# once (44µs+14µs) by PPI::BEGIN@9 at line 9 of PPI.pm
# once (46µs+11µs) by Params::Util::BEGIN@65 at line 65 of Params/Util.pm
# once (46µs+11µs) by List::MoreUtils::BEGIN@8 at line 8 of List/MoreUtils.pm
# once (43µs+13µs) by IPC::Run::BEGIN@3615 at line 3618 of IPC/Run.pm
# once (44µs+12µs) by PPI::Element::BEGIN@32 at line 32 of PPI/Element.pm
# once (45µs+10µs) by PPI::Token::_QuoteEngine::Full::BEGIN@10 at line 10 of PPI/Token/_QuoteEngine/Full.pm
# once (46µs+10µs) by PPI::Exception::ParserTimeout::BEGIN@6 at line 6 of PPI/Exception/ParserTimeout.pm
# once (46µs+10µs) by PPI::Token::BEGIN@28 at line 28 of PPI/Token.pm
# once (43µs+12µs) by PPI::Token::Operator::BEGIN@45 at line 45 of PPI/Token/Operator.pm
# once (44µs+11µs) by HTML::Entities::BEGIN@139 at line 139 of HTML/Entities.pm
# once (44µs+10µs) by PPI::Token::Word::BEGIN@41 at line 41 of PPI/Token/Word.pm
# once (45µs+10µs) by IO::String::BEGIN@10 at line 10 of IO/String.pm
# once (44µs+10µs) by IPC::Run::Timer::BEGIN@164 at line 164 of IPC/Run/Timer.pm
# once (43µs+11µs) by Time::Local::BEGIN@8 at line 8 of Time/Local.pm
# once (43µs+11µs) by CGI::Simple::Util::BEGIN@3 at line 3 of CGI/Simple/Util.pm
# once (39µs+14µs) by PPI::Token::Unknown::BEGIN@34 at line 34 of PPI/Token/Unknown.pm
# once (40µs+12µs) by PPI::Statement::BEGIN@155 at line 155 of PPI/Statement.pm
# once (42µs+9µs) by Devel::Declare::BEGIN@14 at line 14 of Devel/Declare.pm
# once (40µs+10µs) by PPI::Statement::Compound::BEGIN@56 at line 56 of PPI/Statement/Compound.pm
# once (36µs+14µs) by IPC::Run::BEGIN@1445 at line 1445 of IPC/Run.pm
# once (39µs+9µs) by Parse::Yapp::Driver::BEGIN@22 at line 22 of Parse/Yapp/Driver.pm
# once (39µs+9µs) by Storable::BEGIN@22 at line 22 of Storable.pm
# once (38µs+9µs) by PPI::Structure::List::BEGIN@42 at line 42 of PPI/Structure/List.pm
# once (39µs+9µs) by PPI::Token::Whitespace::BEGIN@113 at line 113 of PPI/Token/Whitespace.pm
# once (37µs+10µs) by PPI::Token::Separator::BEGIN@38 at line 38 of PPI/Token/Separator.pm
# once (37µs+9µs) by Digest::MD5::BEGIN@4 at line 4 of Digest/MD5.pm
# once (34µs+12µs) by Text::TEI::Markup::BEGIN@4 at line 4 of Text/TEI/Markup.pm
# once (37µs+9µs) by XML::LibXML::Error::BEGIN@19 at line 19 of XML/LibXML/Error.pm
# once (36µs+9µs) by Text::Balanced::BEGIN@11 at line 11 of Text/Balanced.pm
# once (36µs+8µs) by PPI::Token::Regexp::Substitute::BEGIN@39 at line 39 of PPI/Token/Regexp/Substitute.pm
# once (34µs+10µs) by XML::LibXML::Document::BEGIN@1367 at line 1367 of XML/LibXML.pm
# once (35µs+9µs) by PPI::Token::Quote::Literal::BEGIN@35 at line 35 of PPI/Token/Quote/Literal.pm
# once (35µs+9µs) by PPI::Token::Magic::BEGIN@48 at line 48 of PPI/Token/Magic.pm
# once (33µs+11µs) by Template::Constants::BEGIN@27 at line 27 of Template/Constants.pm
# once (35µs+8µs) by Graph::AdjacencyMap::BEGIN@6 at line 6 of Graph/AdjacencyMap.pm
# once (35µs+9µs) by XML::LibXML::Text::BEGIN@1743 at line 1743 of XML/LibXML.pm
# once (35µs+9µs) by PPI::Document::BEGIN@79 at line 79 of PPI/Document.pm
# once (35µs+7µs) by Bio::Phylo::Util::Exceptions::BadFormat::BEGIN@2 at line 2 of (eval 734)[Bio/Phylo/Util/Exceptions.pm:135]
# once (33µs+10µs) by Graph::BEGIN@1733 at line 1733 of Graph.pm
# once (34µs+8µs) by PPI::Structure::BEGIN@97 at line 97 of PPI/Structure.pm
# once (34µs+8µs) by PPI::Token::Comment::BEGIN@64 at line 64 of PPI/Token/Comment.pm
# once (34µs+8µs) by PPI::Node::BEGIN@58 at line 58 of PPI/Node.pm
# once (32µs+10µs) by PPI::Token::ArrayIndex::BEGIN@32 at line 32 of PPI/Token/ArrayIndex.pm
# once (34µs+8µs) by PPI::Util::BEGIN@10 at line 10 of PPI/Util.pm
# once (31µs+10µs) by Devel::InnerPackage::BEGIN@5 at line 5 of Devel/InnerPackage.pm
# once (33µs+7µs) by Config::General::BEGIN@37 at line 37 of Config/General.pm
# once (33µs+7µs) by Text::Tradition::Parser::GraphML::BEGIN@6 at line 6 of lib/Text/Tradition/Parser/GraphML.pm
# once (32µs+8µs) by DBD::SQLite::BEGIN@8 at line 8 of DBD/SQLite.pm
# once (33µs+7µs) by PPI::Token::Structure::BEGIN@42 at line 42 of PPI/Token/Structure.pm
# once (31µs+9µs) by PPI::Statement::Data::BEGIN@46 at line 46 of PPI/Statement/Data.pm
# once (32µs+7µs) by URI::BEGIN@7 at line 7 of URI.pm
# once (33µs+6µs) by XML::SAX::Exception::BEGIN@11 at line 11 of XML/SAX/Exception.pm
# once (32µs+7µs) by LWP::UserAgent::BEGIN@4 at line 4 of LWP/UserAgent.pm
# once (30µs+8µs) by PPI::Token::Whitespace::BEGIN@48 at line 48 of PPI/Token/Whitespace.pm
# once (32µs+7µs) by PPI::Token::End::BEGIN@46 at line 46 of PPI/Token/End.pm
# once (33µs+5µs) by PPI::Token::Regexp::Match::BEGIN@49 at line 49 of PPI/Token/Regexp/Match.pm
# once (24µs+13µs) by XML::LibXML::Literal::BEGIN@15 at line 15 of XML/LibXML/Literal.pm
# once (30µs+8µs) by Tie::ToObject::BEGIN@8 at line 8 of Tie/ToObject.pm
# once (31µs+6µs) by PPI::Token::Number::Octal::BEGIN@32 at line 32 of PPI/Token/Number/Octal.pm
# once (29µs+8µs) by HTTP::Message::BEGIN@4 at line 4 of HTTP/Message.pm
# once (29µs+7µs) by File::Spec::BEGIN@4 at line 4 of File/Spec.pm
# once (28µs+8µs) by Set::Object::Weak::BEGIN@31 at line 31 of Set/Object/Weak.pm
# once (28µs+8µs) by HTTP::Headers::BEGIN@6 at line 6 of HTTP/Headers.pm
# once (29µs+7µs) by IPC::Run::BEGIN@1080 at line 1080 of IPC/Run.pm
# once (28µs+7µs) by PPI::Token::BOM::BEGIN@45 at line 45 of PPI/Token/BOM.pm
# once (29µs+6µs) by PPI::Lexer::BEGIN@1051 at line 1051 of PPI/Lexer.pm
# once (29µs+6µs) by PPI::Token::Regexp::BEGIN@48 at line 48 of PPI/Token/Regexp.pm
# once (28µs+7µs) by PPI::Document::File::BEGIN@25 at line 25 of PPI/Document/File.pm
# once (29µs+6µs) by PPI::Token::Number::Version::BEGIN@36 at line 36 of PPI/Token/Number/Version.pm
# once (28µs+6µs) by PPI::Token::_QuoteEngine::Simple::BEGIN@8 at line 8 of PPI/Token/_QuoteEngine/Simple.pm
# once (27µs+7µs) by HTML::Parser::BEGIN@10 at line 10 of HTML/Parser.pm
# once (28µs+7µs) by MIME::Types::BEGIN@138 at line 138 of MIME/Types.pm
# once (29µs+6µs) by PPI::Statement::Null::BEGIN@46 at line 46 of PPI/Statement/Null.pm
# once (28µs+7µs) by IPC::Run::IO::BEGIN@489 at line 492 of IPC/Run/IO.pm
# once (27µs+7µs) by PPI::Token::Prototype::BEGIN@52 at line 52 of PPI/Token/Prototype.pm
# once (26µs+8µs) by PPI::Token::QuoteLike::Regexp::BEGIN@36 at line 36 of PPI/Token/QuoteLike/Regexp.pm
# once (28µs+6µs) by PPI::Statement::Package::BEGIN@70 at line 70 of PPI/Statement/Package.pm
# once (27µs+7µs) by PPI::Token::Quote::BEGIN@51 at line 51 of PPI/Token/Quote.pm
# once (27µs+7µs) by PPI::Normal::BEGIN@43 at line 43 of PPI/Normal.pm
# once (28µs+6µs) by PPI::Structure::Block::BEGIN@48 at line 48 of PPI/Structure/Block.pm
# once (27µs+7µs) by PPI::Token::Data::BEGIN@34 at line 34 of PPI/Token/Data.pm
# once (27µs+7µs) by PPI::Token::DashedWord::BEGIN@32 at line 32 of PPI/Token/DashedWord.pm
# once (25µs+9µs) by Text::Tradition::Analysis::BEGIN@14 at line 14 of lib/Text/Tradition/Analysis.pm
# once (25µs+8µs) by constant::BEGIN@6 at line 6 of constant.pm
# once (28µs+6µs) by PPI::Statement::Unknown::BEGIN@38 at line 38 of PPI/Statement/Unknown.pm
# once (27µs+7µs) by PPI::Statement::End::BEGIN@50 at line 50 of PPI/Statement/End.pm
# once (26µs+7µs) by IPC::Run::Debug::BEGIN@25 at line 25 of (eval 480)[IPC/Run/Debug.pm:104]
# once (27µs+6µs) by PPI::Statement::Include::Perl6::BEGIN@44 at line 44 of PPI/Statement/Include/Perl6.pm
# once (26µs+6µs) by PPI::Statement::Expression::BEGIN@41 at line 41 of PPI/Statement/Expression.pm
# once (27µs+6µs) by PPI::Token::Number::Binary::BEGIN@32 at line 32 of PPI/Token/Number/Binary.pm
# once (26µs+6µs) by PPI::Document::Fragment::BEGIN@24 at line 24 of PPI/Document/Fragment.pm
# once (26µs+6µs) by PPI::Token::Quote::Interpolate::BEGIN@35 at line 35 of PPI/Token/Quote/Interpolate.pm
# once (26µs+6µs) by PPI::Exception::ParserRejection::BEGIN@6 at line 6 of PPI/Exception/ParserRejection.pm
# once (27µs+5µs) by Bio::Phylo::Util::Exceptions::API::BEGIN@2 at line 2 of (eval 750)[Bio/Phylo/Util/Exceptions.pm:135]
# once (26µs+6µs) by PPI::Token::Number::Float::BEGIN@34 at line 34 of PPI/Token/Number/Float.pm
# once (26µs+6µs) by PPI::Token::Quote::Single::BEGIN@41 at line 41 of PPI/Token/Quote/Single.pm
# once (26µs+6µs) by PPI::Token::QuoteLike::BEGIN@51 at line 51 of PPI/Token/QuoteLike.pm
# once (26µs+6µs) by PPI::Token::Quote::Double::BEGIN@39 at line 39 of PPI/Token/Quote/Double.pm
# once (26µs+6µs) by PPI::Token::Label::BEGIN@34 at line 34 of PPI/Token/Label.pm
# once (26µs+6µs) by PPI::Token::Number::BEGIN@35 at line 35 of PPI/Token/Number.pm
# once (26µs+6µs) by PPI::Token::QuoteLike::Words::BEGIN@32 at line 32 of PPI/Token/QuoteLike/Words.pm
# once (25µs+6µs) by PPI::Token::Number::Hex::BEGIN@32 at line 32 of PPI/Token/Number/Hex.pm
# once (26µs+6µs) by PPI::Token::Regexp::Transliterate::BEGIN@43 at line 43 of PPI/Token/Regexp/Transliterate.pm
# once (26µs+6µs) by PPI::Token::Symbol::BEGIN@34 at line 34 of PPI/Token/Symbol.pm
# once (25µs+6µs) by PPI::Token::Number::Exp::BEGIN@34 at line 34 of PPI/Token/Number/Exp.pm
# once (25µs+6µs) by PPI::Token::Pod::BEGIN@33 at line 33 of PPI/Token/Pod.pm
# once (25µs+6µs) by PPI::Statement::Scheduled::BEGIN@59 at line 59 of PPI/Statement/Scheduled.pm
# once (25µs+6µs) by PPI::Token::QuoteLike::Readline::BEGIN@44 at line 44 of PPI/Token/QuoteLike/Readline.pm
# once (25µs+6µs) by PPI::Token::QuoteLike::Command::BEGIN@35 at line 35 of PPI/Token/QuoteLike/Command.pm
# once (25µs+6µs) by PPI::Token::Attribute::BEGIN@38 at line 38 of PPI/Token/Attribute.pm
# once (25µs+6µs) by PPI::Token::Cast::BEGIN@37 at line 37 of PPI/Token/Cast.pm
# once (25µs+6µs) by Text::CSV::BEGIN@6 at line 6 of Text/CSV.pm
# once (25µs+6µs) by PPI::Token::QuoteLike::Backtick::BEGIN@35 at line 35 of PPI/Token/QuoteLike/Backtick.pm
# once (25µs+6µs) by PPI::Structure::Subscript::BEGIN@44 at line 44 of PPI/Structure/Subscript.pm
# once (25µs+6µs) by PPI::Statement::Include::BEGIN@51 at line 51 of PPI/Statement/Include.pm
# once (27µs+3µs) by XML::LibXML::Dtd::BEGIN@1826 at line 1826 of XML/LibXML.pm
# once (25µs+6µs) by PPI::Structure::Condition::BEGIN@43 at line 43 of PPI/Structure/Condition.pm
# once (25µs+6µs) by PPI::Statement::Given::BEGIN@39 at line 39 of PPI/Statement/Given.pm
# once (25µs+6µs) by PPI::Statement::Variable::BEGIN@45 at line 45 of PPI/Statement/Variable.pm
# once (25µs+6µs) by PPI::Token::Structure::BEGIN@34 at line 34 of PPI/Token/Structure.pm
# once (25µs+6µs) by PPI::Structure::Constructor::BEGIN@38 at line 38 of PPI/Structure/Constructor.pm
# once (25µs+5µs) by PPI::Statement::UnmatchedBrace::BEGIN@50 at line 50 of PPI/Statement/UnmatchedBrace.pm
# once (25µs+6µs) by PPI::Statement::When::BEGIN@47 at line 47 of PPI/Statement/When.pm
# once (25µs+6µs) by PPI::Structure::Given::BEGIN@39 at line 39 of PPI/Structure/Given.pm
# once (25µs+6µs) by PPI::Statement::Sub::BEGIN@38 at line 38 of PPI/Statement/Sub.pm
# once (25µs+6µs) by PPI::Structure::Unknown::BEGIN@45 at line 45 of PPI/Structure/Unknown.pm
# once (25µs+6µs) by PPI::Token::HereDoc::BEGIN@90 at line 90 of PPI/Token/HereDoc.pm
# once (24µs+5µs) by Config::BEGIN@11 at line 11 of Config.pm
# once (24µs+5µs) by PPI::Structure::For::BEGIN@39 at line 39 of PPI/Structure/For.pm
# once (24µs+5µs) by Text::Tradition::Witness::BEGIN@3 at line 3 of lib/Text/Tradition/Witness.pm
# once (24µs+6µs) by PPI::Structure::When::BEGIN@39 at line 39 of PPI/Structure/When.pm
# once (24µs+5µs) by HTML::Entities::BEGIN@140 at line 140 of HTML/Entities.pm
# once (22µs+7µs) by namespace::clean::BEGIN@6 at line 6 of namespace/clean.pm
# once (23µs+5µs) by Bio::Phylo::Util::Exceptions::System::BEGIN@2 at line 2 of (eval 749)[Bio/Phylo/Util/Exceptions.pm:135]
# once (21µs+7µs) by B::Deparse::BEGIN@31 at line 31 of B/Deparse.pm
# once (23µs+6µs) by MIME::Types::BEGIN@7 at line 7 of MIME/Types.pm
# once (22µs+6µs) by SelfLoader::BEGIN@9 at line 9 of SelfLoader.pm
# once (21µs+7µs) by IPC::Run::IO::BEGIN@73 at line 73 of IPC/Run/IO.pm
# once (22µs+5µs) by Text::Tradition::BEGIN@10 at line 10 of lib/Text/Tradition.pm
# once (21µs+5µs) by CGI::Simple::Cookie::BEGIN@14 at line 14 of CGI/Simple/Cookie.pm
# once (22µs+5µs) by Class::Data::Inheritable::BEGIN@4 at line 4 of Class/Data/Inheritable.pm
# once (22µs+5µs) by Catalyst::Exception::BEGIN@61 at line 61 of Catalyst/Exception.pm
# once (22µs+4µs) by PPI::Lexer::BEGIN@360 at line 360 of PPI/Lexer.pm
# once (22µs+5µs) by parent::BEGIN@3 at line 3 of parent.pm
# once (23µs+3µs) by Bio::Phylo::Util::Exceptions::NotImplemented::BEGIN@2 at line 2 of (eval 743)[Bio/Phylo/Util/Exceptions.pm:135]
# once (19µs+5µs) by XML::LibXML::Boolean::BEGIN@16 at line 16 of XML/LibXML/Boolean.pm
# once (20µs+3µs) by XML::LibXML::CDATASection::BEGIN@1795 at line 1795 of XML/LibXML.pm
# once (18µs+5µs) by IPC::Run::BEGIN@1114 at line 1114 of IPC/Run.pm
# once (19µs+4µs) by XML::LibXML::DocumentFragment::BEGIN@1463 at line 1463 of XML/LibXML.pm
# once (18µs+5µs) by XML::LibXML::Number::BEGIN@15 at line 15 of XML/LibXML/Number.pm
# once (16µs+6µs) by Bio::Phylo::Util::Exceptions::BadNumber::BEGIN@2 at line 2 of (eval 736)[Bio/Phylo/Util/Exceptions.pm:135]
# once (18µs+4µs) by Module::Pluggable::Object::BEGIN@9 at line 9 of Module/Pluggable/Object.pm
# once (18µs+4µs) by XML::LibXML::Comment::BEGIN@1788 at line 1788 of XML/LibXML.pm
# once (17µs+4µs) by XML::LibXML::AttributeHash::BEGIN@9 at line 9 of XML/LibXML/AttributeHash.pm
# once (17µs+4µs) by XML::LibXML::NodeList::BEGIN@19 at line 19 of XML/LibXML/NodeList.pm
# once (16µs+4µs) by Text::Tradition::StemmaUtil::BEGIN@6 at line 6 of lib/Text/Tradition/StemmaUtil.pm
# once (17µs+4µs) by URI::BEGIN@4 at line 4 of URI.pm
# once (16µs+4µs) by Text::CSV_PP::BEGIN@11 at line 11 of Text/CSV_PP.pm
# once (16µs+4µs) by Digest::base::BEGIN@4 at line 4 of Digest/base.pm
# once (17µs+3µs) by Bio::Phylo::Util::Exceptions::UnknownMethod::BEGIN@2 at line 2 of (eval 738)[Bio/Phylo/Util/Exceptions.pm:135]
# once (16µs+4µs) by PPI::Exception::BEGIN@6 at line 6 of PPI/Exception.pm
# once (16µs+3µs) by XML::LibXML::Element::BEGIN@1486 at line 1486 of XML/LibXML.pm
# once (16µs+4µs) by Bio::Phylo::Util::Exceptions::BadString::BEGIN@2 at line 2 of (eval 735)[Bio/Phylo/Util/Exceptions.pm:135]
# once (16µs+4µs) by PPI::Token::_QuoteEngine::BEGIN@36 at line 36 of PPI/Token/_QuoteEngine.pm
# once (16µs+4µs) by PPI::Normal::Standard::BEGIN@21 at line 21 of PPI/Normal/Standard.pm
# once (16µs+3µs) by Bio::Phylo::Util::Exceptions::OutOfBounds::BEGIN@2 at line 2 of (eval 748)[Bio/Phylo/Util/Exceptions.pm:135]
# once (16µs+4µs) by File::Spec::Unix::BEGIN@4 at line 4 of File/Spec/Unix.pm
# once (16µs+4µs) by MIME::Type::BEGIN@6 at line 6 of MIME/Type.pm
# once (16µs+3µs) by Bio::Phylo::Util::Exceptions::ObjectMismatch::BEGIN@2 at line 2 of (eval 737)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+4µs) by base::BEGIN@4 at line 4 of base.pm
# once (16µs+3µs) by XML::LibXML::PI::BEGIN@1837 at line 1837 of XML/LibXML.pm
# once (16µs+3µs) by XML::LibXML::Attr::BEGIN@1804 at line 1804 of XML/LibXML.pm
# once (16µs+3µs) by Graph::BEGIN@15 at line 15 of Graph.pm
# once (16µs+3µs) by Bio::Phylo::Util::Exceptions::NetworkError::BEGIN@2 at line 2 of (eval 739)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by PPI::Lexer::BEGIN@96 at line 96 of PPI/Lexer.pm
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::ExtensionError::BEGIN@2 at line 2 of (eval 742)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::Deprecated::BEGIN@2 at line 2 of (eval 747)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by PPI::Document::Normalized::BEGIN@48 at line 48 of PPI/Document/Normalized.pm
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::BadArgs::BEGIN@2 at line 2 of (eval 744)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by PPI::Tokenizer::BEGIN@90 at line 90 of PPI/Tokenizer.pm
# once (15µs+3µs) by DBD::SQLite::BEGIN@10 at line 10 of DBD/SQLite.pm
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::InvalidData::BEGIN@2 at line 2 of (eval 741)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::FileError::BEGIN@2 at line 2 of (eval 740)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::OddHash::BEGIN@2 at line 2 of (eval 745)[Bio/Phylo/Util/Exceptions.pm:135]
# once (15µs+3µs) by Bio::Phylo::Util::Exceptions::Generic::BEGIN@2 at line 2 of (eval 746)[Bio/Phylo/Util/Exceptions.pm:135] | ||||
11 | 888 | 1.59ms | my $callpack = caller; | ||
12 | my (undef, @imports) = @_; | ||||
13 | my ($sym, $ch); | ||||
14 | foreach (@imports) { | ||||
15 | 2144 | 7.89ms | 536 | 1.41ms | if (($ch, $sym) = /^([\$\@\%\*\&])(.+)/) { # spent 1.41ms making 536 calls to vars::CORE:match, avg 3µs/call |
16 | 536 | 267µs | if ($sym =~ /\W/) { # spent 267µs making 536 calls to vars::CORE:match, avg 498ns/call | ||
17 | # time for a more-detailed check-up | ||||
18 | if ($sym =~ /^\w+[[{].*[]}]$/) { | ||||
19 | require Carp; | ||||
20 | Carp::croak("Can't declare individual elements of hash or array"); | ||||
21 | } elsif (warnings::enabled() and length($sym) == 1 and $sym !~ tr/a-zA-Z//) { | ||||
22 | warnings::warn("No need to declare built-in vars"); | ||||
23 | } elsif (($^H &= strict::bits('vars'))) { | ||||
24 | require Carp; | ||||
25 | Carp::croak("'$_' is not a valid variable name under strict vars"); | ||||
26 | } | ||||
27 | } | ||||
28 | 536 | 234µs | $sym = "${callpack}::$sym" unless $sym =~ /::/; # spent 234µs making 536 calls to vars::CORE:match, avg 436ns/call | ||
29 | *$sym = | ||||
30 | ( $ch eq "\$" ? \$$sym | ||||
31 | : $ch eq "\@" ? \@$sym | ||||
32 | : $ch eq "\%" ? \%$sym | ||||
33 | : $ch eq "\*" ? \*$sym | ||||
34 | : $ch eq "\&" ? \&$sym | ||||
35 | : do { | ||||
36 | require Carp; | ||||
37 | Carp::croak("'$_' is not a valid variable name"); | ||||
38 | }); | ||||
39 | } else { | ||||
40 | require Carp; | ||||
41 | Carp::croak("'$_' is not a valid variable name"); | ||||
42 | } | ||||
43 | } | ||||
44 | }; | ||||
45 | |||||
46 | 1 | 3µs | 1; | ||
47 | __END__ | ||||
sub vars::CORE:match; # opcode |