← Index
NYTProf Performance Profile   « line view »
For /home/ss5/perl5/perlbrew/perls/perl-5.22.0/bin/benchmarkanything-storage
  Run on Mon Jan 29 16:55:34 2018
Reported on Mon Jan 29 16:57:06 2018

Filename/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Class/MOP/Package.pm
StatementsExecuted 3208 statements in 13.0ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
540114.56ms5.80msClass::MOP::Package::::get_package_symbol Class::MOP::Package::get_package_symbol
296533.98ms10.5msClass::MOP::Class::Immutable::Class::MOP::Class::::get_meta_instance Class::MOP::Class::Immutable::Class::MOP::Class::get_meta_instance
405221.25ms4.49msClass::MOP::Package::::add_package_symbol Class::MOP::Package::add_package_symbol
886621.08ms1.09msClass::MOP::Mixin::HasMethods::::_method_map Class::MOP::Mixin::HasMethods::_method_map (xsub)
104951802µs1.12msClass::MOP::Package::::_package_stash Class::MOP::Package::_package_stash
4739206760µs760µsClass::MOP::Mixin::AttributeCore::::name Class::MOP::Mixin::AttributeCore::name (xsub)
24621616µs1.75msClass::MOP::Class::Immutable::Class::MOP::Class::::_method_map Class::MOP::Class::Immutable::Class::MOP::Class::_method_map
22152911604µs604µsClass::MOP::Package::::name Class::MOP::Package::name (xsub)
1694184429µs429µsClass::MOP::Attribute::::associated_class Class::MOP::Attribute::associated_class (xsub)
119156311µs1.95msClass::MOP::Object::::meta Class::MOP::Object::meta
7942309µs2.31msClass::MOP::Class::::superclasses Class::MOP::Class::superclasses (recurses: max depth 1, inclusive time 41µs)
1511291µs315µsMoose::Meta::TypeConstraint::Class::::_new Moose::Meta::TypeConstraint::Class::_new
8343282µs282µsMoose::Meta::TypeConstraint::::_compiled_type_constraint Moose::Meta::TypeConstraint::_compiled_type_constraint
7911272µs1.35msClass::MOP::Package::::get_or_add_package_symbol Class::MOP::Package::get_or_add_package_symbol
118162271µs271µsClass::MOP::Mixin::HasAttributes::::_attribute_map Class::MOP::Mixin::HasAttributes::_attribute_map (xsub)
57284267µs267µsClass::MOP::Mixin::AttributeCore::::has_initializer Class::MOP::Mixin::AttributeCore::has_initializer
84765263µs6.90msClass::MOP::Mixin::::meta Class::MOP::Mixin::meta
6721220µs686µsClass::MOP::Class::Immutable::Class::MOP::Class::::linearized_isa Class::MOP::Class::Immutable::Class::MOP::Class::linearized_isa
1211212µs231µsMoose::Meta::TypeConstraint::Role::::_new Moose::Meta::TypeConstraint::Role::_new
41941206µs206µsMoose::Meta::TypeConstraint::::constraint Moose::Meta::TypeConstraint::constraint
1711187µs203µsMoose::Meta::TypeConstraint::::_new Moose::Meta::TypeConstraint::_new
111182µs944µsClass::MOP::Package::::BEGIN@8 Class::MOP::Package::BEGIN@8
39031167µs167µsMoose::Meta::TypeConstraint::::has_parent Moose::Meta::TypeConstraint::has_parent
21322167µs167µsClass::MOP::Mixin::AttributeCore::::has_accessor Class::MOP::Mixin::AttributeCore::has_accessor
24642156µs156µsMoose::Meta::TypeConstraint::Registry::::type_constraints Moose::Meta::TypeConstraint::Registry::type_constraints
70773154µs154µsClass::MOP::Mixin::AttributeCore::::init_arg Class::MOP::Mixin::AttributeCore::init_arg (xsub)
54375153µs153µsClass::MOP::Method::::body Class::MOP::Method::body (xsub)
4132142µs1.07msClass::MOP::Class::Immutable::Class::MOP::Class::::get_all_attributes Class::MOP::Class::Immutable::Class::MOP::Class::get_all_attributes
21322140µs140µsClass::MOP::Mixin::AttributeCore::::has_reader Class::MOP::Mixin::AttributeCore::has_reader
21111138µs138µsClass::MOP::Mixin::AttributeCore::::has_writer Class::MOP::Mixin::AttributeCore::has_writer
19311125µs125µsClass::MOP::Method::Accessor::::accessor_type Class::MOP::Method::Accessor::accessor_type
29453110µs110µsClass::MOP::Mixin::AttributeCore::::has_default Class::MOP::Mixin::AttributeCore::has_default
47822107µs107µsClass::MOP::Method::::package_name Class::MOP::Method::package_name (xsub)
2311105µs265µsClass::MOP::Class::Immutable::Class::MOP::Class::::is_immutable Class::MOP::Class::Immutable::Class::MOP::Class::is_immutable
21111103µs103µsClass::MOP::Mixin::AttributeCore::::has_clearer Class::MOP::Mixin::AttributeCore::has_clearer
19811101µs101µsMoose::Meta::TypeConstraint::::_has_inlined_type_constraint Moose::Meta::TypeConstraint::_has_inlined_type_constraint
21111100µs100µsClass::MOP::Mixin::AttributeCore::::has_predicate Class::MOP::Mixin::AttributeCore::has_predicate
2631193µs93µsClass::MOP::Mixin::AttributeCore::::definition_context Class::MOP::Mixin::AttributeCore::definition_context (xsub)
1114391µs91µsMoose::Meta::TypeConstraint::::name Moose::Meta::TypeConstraint::name
20512390µs90µsClass::MOP::Method::Accessor::::associated_attribute Class::MOP::Method::Accessor::associated_attribute
41183µs86µsMoose::Meta::TypeConstraint::Parameterizable::::_new Moose::Meta::TypeConstraint::Parameterizable::_new
1351182µs82µsClass::MOP::Mixin::AttributeCore::::_set_insertion_order Class::MOP::Mixin::AttributeCore::_set_insertion_order
1852280µs80µsClass::MOP::Mixin::AttributeCore::::has_builder Class::MOP::Mixin::AttributeCore::has_builder
2232276µs76µsClass::MOP::Method::Generated::::is_inline Class::MOP::Method::Generated::is_inline (xsub)
583374µs74µsMoose::Meta::TypeConstraint::::_default_message Moose::Meta::TypeConstraint::_default_message
2189372µs72µsClass::MOP::Mixin::HasAttributes::::attribute_metaclass Class::MOP::Mixin::HasAttributes::attribute_metaclass (xsub)
921172µs72µsMoose::Meta::TypeConstraint::::_inline_environment Moose::Meta::TypeConstraint::_inline_environment
29110371µs71µsClass::MOP::Class::::instance_metaclass Class::MOP::Class::instance_metaclass (xsub)
961166µs66µsMoose::Meta::TypeConstraint::::inlined Moose::Meta::TypeConstraint::inlined
1838164µs64µsClass::MOP::Mixin::HasMethods::::wrapped_method_metaclass Class::MOP::Mixin::HasMethods::wrapped_method_metaclass (xsub)
21163µs67µsMoose::Meta::TypeConstraint::Parameterized::::_new Moose::Meta::TypeConstraint::Parameterized::_new
213262µs136µsClass::MOP::Package::::has_package_symbol Class::MOP::Package::has_package_symbol
41159µs65µsMoose::Meta::Attribute::::_new Moose::Meta::Attribute::_new
351157µs62µsClass::MOP::Instance::::_class_name Class::MOP::Instance::_class_name
1967557µs57µsClass::MOP::Method::::name Class::MOP::Method::name (xsub)
51155µs249µsMoose::Meta::Method::::_new Moose::Meta::Method::_new
2078255µs55µsClass::MOP::Mixin::HasMethods::::method_metaclass Class::MOP::Mixin::HasMethods::method_metaclass (xsub)
501153µs53µsMoose::Meta::TypeConstraint::::_has_compiled_type_constraint Moose::Meta::TypeConstraint::_has_compiled_type_constraint
583350µs50µsMoose::Meta::TypeConstraint::::has_message Moose::Meta::TypeConstraint::has_message
1642149µs49µsClass::MOP::Mixin::AttributeCore::::reader Class::MOP::Mixin::AttributeCore::reader (xsub)
903248µs48µsClass::MOP::Method::Constructor::::associated_metaclass Class::MOP::Method::Constructor::associated_metaclass
1874147µs47µsClass::MOP::Class::::constructor_class Class::MOP::Class::constructor_class (xsub)
1874146µs46µsClass::MOP::Class::::destructor_class Class::MOP::Class::destructor_class (xsub)
1082144µs44µsClass::MOP::Class::::immutable_trait Class::MOP::Class::immutable_trait (xsub)
1010142µs78µsMoose::Meta::TypeConstraint::::meta Moose::Meta::TypeConstraint::meta
351141µs41µsMoose::Meta::TypeConstraint::Class::::class Moose::Meta::TypeConstraint::Class::class
11141µs2.57msMoose::::import Moose::import
11139µs765µsMoose::Util::TypeConstraints::::import Moose::Util::TypeConstraints::import
1311138µs38µsClass::MOP::Method::Generated::::definition_context Class::MOP::Method::Generated::definition_context (xsub)
41128µs28µsMoose::Meta::Instance::::_new Moose::Meta::Instance::_new
21127µs42µsClass::MOP::Package::::initialize Class::MOP::Package::initialize
311126µs26µsClass::MOP::Method::Constructor::::options Class::MOP::Method::Constructor::options
241122µs22µsMoose::Meta::TypeConstraint::Role::::role Moose::Meta::TypeConstraint::Role::role
252122µs84µsMoose::Meta::Mixin::AttributeCore::::should_coerce Moose::Meta::Mixin::AttributeCore::should_coerce
388321µs21µsMoose::Meta::TypeConstraint::::parent Moose::Meta::TypeConstraint::parent
265221µs120µsMoose::Meta::Mixin::AttributeCore::::has_trigger Moose::Meta::Mixin::AttributeCore::has_trigger
66221µs46µsMoose::Meta::Role::Composite::::meta Moose::Meta::Role::Composite::meta
551121µs21µsClass::MOP::Class::::constructor_name Class::MOP::Class::constructor_name (xsub)
445221µs21µsMoose::Meta::TypeConstraint::Parameterized::::type_parameter Moose::Meta::TypeConstraint::Parameterized::type_parameter
261120µs20µsClass::MOP::Method::::_set_original_method Class::MOP::Method::_set_original_method
403120µs20µsMoose::Meta::TypeConstraint::Parameterized::::parameterized_from Moose::Meta::TypeConstraint::Parameterized::parameterized_from
492119µs19µsClass::MOP::Mixin::AttributeCore::::accessor Class::MOP::Mixin::AttributeCore::accessor (xsub)
43318µs192µsMoose::Meta::Role::Method::Required::::meta Moose::Meta::Role::Method::Required::meta
41118µs41µsClass::MOP::Package::::list_all_package_symbols Class::MOP::Package::list_all_package_symbols
203118µs64µsMoose::Meta::Mixin::AttributeCore::::has_type_constraint Moose::Meta::Mixin::AttributeCore::has_type_constraint
21117µs171µsClass::MOP::Package::::create Class::MOP::Package::create
44216µs40µsMoose::Meta::TypeCoercion::::meta Moose::Meta::TypeCoercion::meta
303215µs15µsMoose::Meta::Mixin::AttributeCore::::type_constraint Moose::Meta::Mixin::AttributeCore::type_constraint
33215µs25µsMoose::Meta::Role::Application::::meta Moose::Meta::Role::Application::meta
312115µs15µsMoose::Meta::TypeConstraint::Parameterized::::has_parameterized_from Moose::Meta::TypeConstraint::Parameterized::has_parameterized_from
451114µs14µsClass::MOP::Mixin::AttributeCore::::predicate Class::MOP::Mixin::AttributeCore::predicate (xsub)
332214µs14µsMoose::Meta::TypeConstraint::Parameterizable::::has_inline_generator Moose::Meta::TypeConstraint::Parameterizable::has_inline_generator
131114µs43µsMoose::Meta::Mixin::AttributeCore::::is_weak_ref Moose::Meta::Mixin::AttributeCore::is_weak_ref
102213µs65µsMoose::Meta::Mixin::AttributeCore::::is_lazy Moose::Meta::Mixin::AttributeCore::is_lazy
321112µs12µsClass::MOP::Method::Inlined::::_expected_method_class Class::MOP::Method::Inlined::_expected_method_class (xsub)
33212µs22µsMoose::Meta::Role::Application::ToClass::::meta Moose::Meta::Role::Application::ToClass::meta
22111µs20µsMoose::Meta::TypeConstraint::Parameterizable::::meta Moose::Meta::TypeConstraint::Parameterizable::meta
22211µs18µsMoose::Meta::Role::Application::RoleSummation::::meta Moose::Meta::Role::Application::RoleSummation::meta
22211µs17µsMoose::Meta::Role::::meta Moose::Meta::Role::meta
11111µs20µsMoose::Meta::TypeConstraint::Union::::meta Moose::Meta::TypeConstraint::Union::meta
21110µs10µsClass::MOP::Package::::_new Class::MOP::Package::_new
61110µs34µsMoose::Meta::Mixin::AttributeCore::::should_auto_deref Moose::Meta::Mixin::AttributeCore::should_auto_deref
102210µs38µsMoose::Meta::Mixin::AttributeCore::::is_required Moose::Meta::Mixin::AttributeCore::is_required
22210µs18µsMoose::Meta::Role::Application::ToInstance::::meta Moose::Meta::Role::Application::ToInstance::meta
2219µs20µsMoose::Meta::TypeConstraint::Registry::::meta Moose::Meta::TypeConstraint::Registry::meta
2219µs18µsMoose::Meta::TypeConstraint::Enum::::meta Moose::Meta::TypeConstraint::Enum::meta
2219µs19µsMoose::Meta::TypeConstraint::Parameterized::::meta Moose::Meta::TypeConstraint::Parameterized::meta
1119µs55µsMoose::::unimport Moose::unimport
6119µs37µsMoose::Meta::Mixin::AttributeCore::::has_handles Moose::Meta::Mixin::AttributeCore::has_handles
13338µs8µsMoose::Meta::TypeConstraint::::has_coercion Moose::Meta::TypeConstraint::has_coercion
1118µs9µsClass::MOP::Package::::BEGIN@4 Class::MOP::Package::BEGIN@4
8717µs7µsMoose::Meta::Class::::destructor_class Moose::Meta::Class::destructor_class
1117µs13µsMoose::Meta::TypeConstraint::Class::::meta Moose::Meta::TypeConstraint::Class::meta
7117µs7µsMoose::Meta::TypeConstraint::Parameterizable::::has_constraint_generator Moose::Meta::TypeConstraint::Parameterizable::has_constraint_generator
1116µs12µsMoose::Meta::TypeConstraint::DuckType::::meta Moose::Meta::TypeConstraint::DuckType::meta
1116µs12µsMoose::Meta::TypeConstraint::Role::::meta Moose::Meta::TypeConstraint::Role::meta
1116µs14µsClass::MOP::Package::::BEGIN@95 Class::MOP::Package::BEGIN@95
1116µs14µsClass::MOP::Package::::BEGIN@171 Class::MOP::Package::BEGIN@171
8716µs6µsMoose::Meta::Class::::constructor_class Moose::Meta::Class::constructor_class
9216µs6µsMoose::Meta::TypeConstraint::Parameterized::::has_type_parameter Moose::Meta::TypeConstraint::Parameterized::has_type_parameter
9115µs5µsMoose::Meta::TypeConstraint::Parameterizable::::inline_generator Moose::Meta::TypeConstraint::Parameterizable::inline_generator
1114µs8µsDBIx::MultiStatementDo::::meta DBIx::MultiStatementDo::meta
1114µs12µsClass::MOP::Package::::BEGIN@9 Class::MOP::Package::BEGIN@9
2224µs4µsMoose::Meta::Mixin::AttributeCore::::trigger Moose::Meta::Mixin::AttributeCore::trigger
1114µs6µsMoose::Meta::Role::Application::ToRole::::meta Moose::Meta::Role::Application::ToRole::meta
6534µs4µsClass::MOP::Method::::associated_metaclass Class::MOP::Method::associated_metaclass
1114µs7µsMoose::Meta::TypeCoercion::Union::::meta Moose::Meta::TypeCoercion::Union::meta
8114µs4µsClass::MOP::Mixin::AttributeCore::::writer Class::MOP::Mixin::AttributeCore::writer (xsub)
1114µs20µsClass::MOP::Package::::BEGIN@7 Class::MOP::Package::BEGIN@7
1113µs6µsClass::MOP::Package::::BEGIN@5 Class::MOP::Package::BEGIN@5
1113µs15µsClass::MOP::Package::::BEGIN@12 Class::MOP::Package::BEGIN@12
2213µs3µsMoose::Meta::Class::::immutable_trait Moose::Meta::Class::immutable_trait
6113µs3µsClass::MOP::Instance::::associated_metaclass Class::MOP::Instance::associated_metaclass (xsub)
1113µs3µsClass::MOP::Package::::BEGIN@10 Class::MOP::Package::BEGIN@10
2112µs2µsMoose::Meta::TypeConstraint::::_set_constraint Moose::Meta::TypeConstraint::_set_constraint
2112µs2µsMoose::Meta::TypeConstraint::Parameterizable::::constraint_generator Moose::Meta::TypeConstraint::Parameterizable::constraint_generator
4112µs2µsClass::MOP::Attribute::::associated_methods Class::MOP::Attribute::associated_methods (xsub)
1112µs2µsMoose::Meta::Mixin::AttributeCore::::handles Moose::Meta::Mixin::AttributeCore::handles
111300ns300nsClass::MOP::Mixin::AttributeCore::::clearer Class::MOP::Mixin::AttributeCore::clearer (xsub)
0000s0sClass::MOP::Attribute::::clone Class::MOP::Attribute::clone
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::_get_mutable_metaclass_name Class::MOP::Class::Immutable::Class::MOP::Class::_get_mutable_metaclass_name
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::_immutable_cannot_call Class::MOP::Class::Immutable::Class::MOP::Class::_immutable_cannot_call
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::_immutable_metaclass Class::MOP::Class::Immutable::Class::MOP::Class::_immutable_metaclass
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::_immutable_read_only Class::MOP::Class::Immutable::Class::MOP::Class::_immutable_read_only
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::add_attribute Class::MOP::Class::Immutable::Class::MOP::Class::add_attribute
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::add_method Class::MOP::Class::Immutable::Class::MOP::Class::add_method
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::add_package_symbol Class::MOP::Class::Immutable::Class::MOP::Class::add_package_symbol
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::alias_method Class::MOP::Class::Immutable::Class::MOP::Class::alias_method
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::class_precedence_list Class::MOP::Class::Immutable::Class::MOP::Class::class_precedence_list
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::get_all_method_names Class::MOP::Class::Immutable::Class::MOP::Class::get_all_method_names
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::get_all_methods Class::MOP::Class::Immutable::Class::MOP::Class::get_all_methods
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::is_mutable Class::MOP::Class::Immutable::Class::MOP::Class::is_mutable
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::meta Class::MOP::Class::Immutable::Class::MOP::Class::meta
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::remove_attribute Class::MOP::Class::Immutable::Class::MOP::Class::remove_attribute
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::remove_method Class::MOP::Class::Immutable::Class::MOP::Class::remove_method
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::remove_package_symbol Class::MOP::Class::Immutable::Class::MOP::Class::remove_package_symbol
0000s0sClass::MOP::Class::Immutable::Class::MOP::Class::::superclasses Class::MOP::Class::Immutable::Class::MOP::Class::superclasses
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::_get_mutable_metaclass_nameClass::MOP::Class::Immutable::Moose::Meta::Class::_get_mutable_metaclass_name
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::_immutable_cannot_callClass::MOP::Class::Immutable::Moose::Meta::Class::_immutable_cannot_call
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::_immutable_metaclassClass::MOP::Class::Immutable::Moose::Meta::Class::_immutable_metaclass
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::_immutable_read_onlyClass::MOP::Class::Immutable::Moose::Meta::Class::_immutable_read_only
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::_method_mapClass::MOP::Class::Immutable::Moose::Meta::Class::_method_map
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::add_attributeClass::MOP::Class::Immutable::Moose::Meta::Class::add_attribute
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::add_methodClass::MOP::Class::Immutable::Moose::Meta::Class::add_method
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::add_package_symbolClass::MOP::Class::Immutable::Moose::Meta::Class::add_package_symbol
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::add_roleClass::MOP::Class::Immutable::Moose::Meta::Class::add_role
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::alias_methodClass::MOP::Class::Immutable::Moose::Meta::Class::alias_method
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::calculate_all_rolesClass::MOP::Class::Immutable::Moose::Meta::Class::calculate_all_roles
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::calculate_all_roles_with_inheritanceClass::MOP::Class::Immutable::Moose::Meta::Class::calculate_all_roles_with_inheritance
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::class_precedence_listClass::MOP::Class::Immutable::Moose::Meta::Class::class_precedence_list
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::does_roleClass::MOP::Class::Immutable::Moose::Meta::Class::does_role
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::get_all_attributesClass::MOP::Class::Immutable::Moose::Meta::Class::get_all_attributes
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::get_all_method_namesClass::MOP::Class::Immutable::Moose::Meta::Class::get_all_method_names
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::get_all_methodsClass::MOP::Class::Immutable::Moose::Meta::Class::get_all_methods
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::get_meta_instanceClass::MOP::Class::Immutable::Moose::Meta::Class::get_meta_instance
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::is_immutableClass::MOP::Class::Immutable::Moose::Meta::Class::is_immutable
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::is_mutableClass::MOP::Class::Immutable::Moose::Meta::Class::is_mutable
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::linearized_isaClass::MOP::Class::Immutable::Moose::Meta::Class::linearized_isa
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::metaClass::MOP::Class::Immutable::Moose::Meta::Class::meta
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::remove_attributeClass::MOP::Class::Immutable::Moose::Meta::Class::remove_attribute
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::remove_methodClass::MOP::Class::Immutable::Moose::Meta::Class::remove_method
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::remove_package_symbolClass::MOP::Class::Immutable::Moose::Meta::Class::remove_package_symbol
0000s0sClass::MOP::Class::Immutable::Moose::Meta::Class::::superclassesClass::MOP::Class::Immutable::Moose::Meta::Class::superclasses
0000s0sClass::MOP::Instance::::attributes Class::MOP::Instance::attributes
0000s0sClass::MOP::Instance::::slot_hash Class::MOP::Instance::slot_hash
0000s0sClass::MOP::Instance::::slots Class::MOP::Instance::slots
0000s0sClass::MOP::Method::::original_method Class::MOP::Method::original_method
0000s0sClass::MOP::Mixin::AttributeCore::::builder Class::MOP::Mixin::AttributeCore::builder
0000s0sClass::MOP::Mixin::AttributeCore::::has_init_arg Class::MOP::Mixin::AttributeCore::has_init_arg
0000s0sClass::MOP::Mixin::AttributeCore::::has_insertion_order Class::MOP::Mixin::AttributeCore::has_insertion_order
0000s0sClass::MOP::Mixin::AttributeCore::::initializer Class::MOP::Mixin::AttributeCore::initializer
0000s0sClass::MOP::Mixin::AttributeCore::::insertion_order Class::MOP::Mixin::AttributeCore::insertion_order
0000s0sClass::MOP::Mixin::HasOverloads::::_clear_overload_map Class::MOP::Mixin::HasOverloads::_clear_overload_map
0000s0sClass::MOP::Mixin::HasOverloads::::_overload_map Class::MOP::Mixin::HasOverloads::_overload_map
0000s0sClass::MOP::Module::::authority Class::MOP::Module::authority
0000s0sClass::MOP::Module::::version Class::MOP::Module::version
0000s0sClass::MOP::Overload::::associated_metaclass Class::MOP::Overload::associated_metaclass
0000s0sClass::MOP::Overload::::coderef Class::MOP::Overload::coderef
0000s0sClass::MOP::Overload::::coderef_name Class::MOP::Overload::coderef_name
0000s0sClass::MOP::Overload::::coderef_package Class::MOP::Overload::coderef_package
0000s0sClass::MOP::Overload::::has_coderef Class::MOP::Overload::has_coderef
0000s0sClass::MOP::Overload::::has_coderef_name Class::MOP::Overload::has_coderef_name
0000s0sClass::MOP::Overload::::has_coderef_package Class::MOP::Overload::has_coderef_package
0000s0sClass::MOP::Overload::::has_method Class::MOP::Overload::has_method
0000s0sClass::MOP::Overload::::has_method_name Class::MOP::Overload::has_method_name
0000s0sClass::MOP::Overload::::method Class::MOP::Overload::method
0000s0sClass::MOP::Overload::::method_name Class::MOP::Overload::method_name
0000s0sClass::MOP::Overload::::operator Class::MOP::Overload::operator
0000s0sClass::MOP::Package::::DESTROY Class::MOP::Package::DESTROY
0000s0sClass::MOP::Package::::_anon_cache_key Class::MOP::Package::_anon_cache_key
0000s0sClass::MOP::Package::::_anon_package_prefix Class::MOP::Package::_anon_package_prefix
0000s0sClass::MOP::Package::::_free_anon Class::MOP::Package::_free_anon
0000s0sClass::MOP::Package::::create_anon Class::MOP::Package::create_anon
0000s0sClass::MOP::Package::::get_all_package_symbols Class::MOP::Package::get_all_package_symbols
0000s0sClass::MOP::Package::::is_anon Class::MOP::Package::is_anon
0000s0sClass::MOP::Package::::namespace Class::MOP::Package::namespace
0000s0sClass::MOP::Package::::reinitialize Class::MOP::Package::reinitialize
0000s0sClass::MOP::Package::::remove_package_glob Class::MOP::Package::remove_package_glob
0000s0sClass::MOP::Package::::remove_package_symbol Class::MOP::Package::remove_package_symbol
0000s0sDBIx::MultiStatementDo::::DESTROY DBIx::MultiStatementDo::DESTROY
0000s0sDBIx::MultiStatementDo::::_splitter DBIx::MultiStatementDo::_splitter
0000s0sDBIx::MultiStatementDo::::dbh DBIx::MultiStatementDo::dbh
0000s0sDBIx::MultiStatementDo::::new DBIx::MultiStatementDo::new
0000s0sDBIx::MultiStatementDo::::rollback DBIx::MultiStatementDo::rollback
0000s0sDBIx::MultiStatementDo::::split DBIx::MultiStatementDo::split
0000s0sDBIx::MultiStatementDo::::split_with_placeholders DBIx::MultiStatementDo::split_with_placeholders
0000s0sDBIx::MultiStatementDo::::splitter_options DBIx::MultiStatementDo::splitter_options
0000s0sMoose::Meta::Attribute::Custom::Trait::Array::::register_implementation Moose::Meta::Attribute::Custom::Trait::Array::register_implementation
0000s0sMoose::Meta::Attribute::Custom::Trait::Bool::::register_implementation Moose::Meta::Attribute::Custom::Trait::Bool::register_implementation
0000s0sMoose::Meta::Attribute::Custom::Trait::Code::::register_implementation Moose::Meta::Attribute::Custom::Trait::Code::register_implementation
0000s0sMoose::Meta::Attribute::Custom::Trait::Counter::::register_implementation Moose::Meta::Attribute::Custom::Trait::Counter::register_implementation
0000s0sMoose::Meta::Attribute::Custom::Trait::Hash::::register_implementation Moose::Meta::Attribute::Custom::Trait::Hash::register_implementation
0000s0sMoose::Meta::Attribute::Custom::Trait::Number::::register_implementation Moose::Meta::Attribute::Custom::Trait::Number::register_implementation
0000s0sMoose::Meta::Attribute::Custom::Trait::String::::register_implementation Moose::Meta::Attribute::Custom::Trait::String::register_implementation
0000s0sMoose::Meta::Attribute::::_get_compatible_metaclass Moose::Meta::Attribute::_get_compatible_metaclass
0000s0sMoose::Meta::Attribute::::_get_compatible_metaclass_by_role_reconciliation Moose::Meta::Attribute::_get_compatible_metaclass_by_role_reconciliation
0000s0sMoose::Meta::Attribute::::applied_traits Moose::Meta::Attribute::applied_traits
0000s0sMoose::Meta::Attribute::::has_applied_traits Moose::Meta::Attribute::has_applied_traits
0000s0sMoose::Meta::Class::::_get_compatible_metaclass Moose::Meta::Class::_get_compatible_metaclass
0000s0sMoose::Meta::Class::::_get_compatible_metaclass_by_role_reconciliation Moose::Meta::Class::_get_compatible_metaclass_by_role_reconciliation
0000s0sMoose::Meta::Class::::_get_role_applications Moose::Meta::Class::_get_role_applications
0000s0sMoose::Meta::Class::::_new Moose::Meta::Class::_new
0000s0sMoose::Meta::Class::::roles Moose::Meta::Class::roles
0000s0sMoose::Meta::Instance::::_get_compatible_metaclass Moose::Meta::Instance::_get_compatible_metaclass
0000s0sMoose::Meta::Instance::::_get_compatible_metaclass_by_role_reconciliation Moose::Meta::Instance::_get_compatible_metaclass_by_role_reconciliation
0000s0sMoose::Meta::Method::Augmented::::_new Moose::Meta::Method::Augmented::_new
0000s0sMoose::Meta::Method::Constructor::::_new Moose::Meta::Method::Constructor::_new
0000s0sMoose::Meta::Method::Destructor::::_new Moose::Meta::Method::Destructor::_new
0000s0sMoose::Meta::Method::Overridden::::_new Moose::Meta::Method::Overridden::_new
0000s0sMoose::Meta::Method::::_get_compatible_metaclass Moose::Meta::Method::_get_compatible_metaclass
0000s0sMoose::Meta::Method::::_get_compatible_metaclass_by_role_reconciliation Moose::Meta::Method::_get_compatible_metaclass_by_role_reconciliation
0000s0sMoose::Meta::Mixin::AttributeCore::::_does_metadata Moose::Meta::Mixin::AttributeCore::_does_metadata
0000s0sMoose::Meta::Mixin::AttributeCore::::_is_metadata Moose::Meta::Mixin::AttributeCore::_is_metadata
0000s0sMoose::Meta::Mixin::AttributeCore::::_isa_metadata Moose::Meta::Mixin::AttributeCore::_isa_metadata
0000s0sMoose::Meta::Mixin::AttributeCore::::_set_handles Moose::Meta::Mixin::AttributeCore::_set_handles
0000s0sMoose::Meta::Mixin::AttributeCore::::documentation Moose::Meta::Mixin::AttributeCore::documentation
0000s0sMoose::Meta::Mixin::AttributeCore::::has_documentation Moose::Meta::Mixin::AttributeCore::has_documentation
0000s0sMoose::Meta::Mixin::AttributeCore::::is_lazy_build Moose::Meta::Mixin::AttributeCore::is_lazy_build
0000s0sMoose::Meta::Role::Application::RoleSummation::::_new Moose::Meta::Role::Application::RoleSummation::_new
0000s0sMoose::Meta::Role::Application::RoleSummation::::role_params Moose::Meta::Role::Application::RoleSummation::role_params
0000s0sMoose::Meta::Role::Application::ToClass::::_new Moose::Meta::Role::Application::ToClass::_new
0000s0sMoose::Meta::Role::Application::ToClass::::class Moose::Meta::Role::Application::ToClass::class
0000s0sMoose::Meta::Role::Application::ToClass::::role Moose::Meta::Role::Application::ToClass::role
0000s0sMoose::Meta::Role::Application::ToInstance::::_new Moose::Meta::Role::Application::ToInstance::_new
0000s0sMoose::Meta::Role::Application::ToInstance::::rebless_params Moose::Meta::Role::Application::ToInstance::rebless_params
0000s0sMoose::Meta::Role::Application::ToRole::::_new Moose::Meta::Role::Application::ToRole::_new
0000s0sMoose::Meta::Role::Application::::_new Moose::Meta::Role::Application::_new
0000s0sMoose::Meta::Role::Application::::get_method_aliases Moose::Meta::Role::Application::get_method_aliases
0000s0sMoose::Meta::Role::Application::::get_method_exclusions Moose::Meta::Role::Application::get_method_exclusions
0000s0sMoose::Meta::Role::Attribute::::_new Moose::Meta::Role::Attribute::_new
0000s0sMoose::Meta::Role::Attribute::::_original_role Moose::Meta::Role::Attribute::_original_role
0000s0sMoose::Meta::Role::Attribute::::associated_role Moose::Meta::Role::Attribute::associated_role
0000s0sMoose::Meta::Role::Attribute::::is Moose::Meta::Role::Attribute::is
0000s0sMoose::Meta::Role::Attribute::::metaclass Moose::Meta::Role::Attribute::metaclass
0000s0sMoose::Meta::Role::Attribute::::original_options Moose::Meta::Role::Attribute::original_options
0000s0sMoose::Meta::Role::Composite::::_method_map Moose::Meta::Role::Composite::_method_map
0000s0sMoose::Meta::Role::Composite::::_new Moose::Meta::Role::Composite::_new
0000s0sMoose::Meta::Role::Composite::::_overload_fallback Moose::Meta::Role::Composite::_overload_fallback
0000s0sMoose::Meta::Role::Composite::::_overload_map Moose::Meta::Role::Composite::_overload_map
0000s0sMoose::Meta::Role::Composite::::application_role_summation_class Moose::Meta::Role::Composite::application_role_summation_class
0000s0sMoose::Meta::Role::Composite::::name Moose::Meta::Role::Composite::name
0000s0sMoose::Meta::Role::Method::Conflicting::::_new Moose::Meta::Role::Method::Conflicting::_new
0000s0sMoose::Meta::Role::Method::Conflicting::::roles Moose::Meta::Role::Method::Conflicting::roles
0000s0sMoose::Meta::Role::Method::Required::::_new Moose::Meta::Role::Method::Required::_new
0000s0sMoose::Meta::Role::Method::Required::::name Moose::Meta::Role::Method::Required::name
0000s0sMoose::Meta::Role::Method::::_new Moose::Meta::Role::Method::_new
0000s0sMoose::Meta::Role::::_get_compatible_metaclass Moose::Meta::Role::_get_compatible_metaclass
0000s0sMoose::Meta::Role::::_get_compatible_metaclass_by_role_reconciliation Moose::Meta::Role::_get_compatible_metaclass_by_role_reconciliation
0000s0sMoose::Meta::Role::::_new Moose::Meta::Role::_new
0000s0sMoose::Meta::Role::::add_after_method_modifier Moose::Meta::Role::add_after_method_modifier
0000s0sMoose::Meta::Role::::add_around_method_modifier Moose::Meta::Role::add_around_method_modifier
0000s0sMoose::Meta::Role::::add_before_method_modifier Moose::Meta::Role::add_before_method_modifier
0000s0sMoose::Meta::Role::::add_excluded_roles Moose::Meta::Role::add_excluded_roles
0000s0sMoose::Meta::Role::::application_to_class_class Moose::Meta::Role::application_to_class_class
0000s0sMoose::Meta::Role::::application_to_instance_class Moose::Meta::Role::application_to_instance_class
0000s0sMoose::Meta::Role::::application_to_role_class Moose::Meta::Role::application_to_role_class
0000s0sMoose::Meta::Role::::applied_attribute_metaclass Moose::Meta::Role::applied_attribute_metaclass
0000s0sMoose::Meta::Role::::conflicting_method_metaclass Moose::Meta::Role::conflicting_method_metaclass
0000s0sMoose::Meta::Role::::excludes_role Moose::Meta::Role::excludes_role
0000s0sMoose::Meta::Role::::get_after_method_modifiers Moose::Meta::Role::get_after_method_modifiers
0000s0sMoose::Meta::Role::::get_after_method_modifiers_map Moose::Meta::Role::get_after_method_modifiers_map
0000s0sMoose::Meta::Role::::get_around_method_modifiers Moose::Meta::Role::get_around_method_modifiers
0000s0sMoose::Meta::Role::::get_around_method_modifiers_map Moose::Meta::Role::get_around_method_modifiers_map
0000s0sMoose::Meta::Role::::get_before_method_modifiers Moose::Meta::Role::get_before_method_modifiers
0000s0sMoose::Meta::Role::::get_before_method_modifiers_map Moose::Meta::Role::get_before_method_modifiers_map
0000s0sMoose::Meta::Role::::get_excluded_roles_list Moose::Meta::Role::get_excluded_roles_list
0000s0sMoose::Meta::Role::::get_excluded_roles_map Moose::Meta::Role::get_excluded_roles_map
0000s0sMoose::Meta::Role::::get_override_method_modifiers_map Moose::Meta::Role::get_override_method_modifiers_map
0000s0sMoose::Meta::Role::::get_required_method_list Moose::Meta::Role::get_required_method_list
0000s0sMoose::Meta::Role::::get_required_methods_map Moose::Meta::Role::get_required_methods_map
0000s0sMoose::Meta::Role::::get_roles Moose::Meta::Role::get_roles
0000s0sMoose::Meta::Role::::has_after_method_modifiers Moose::Meta::Role::has_after_method_modifiers
0000s0sMoose::Meta::Role::::has_around_method_modifiers Moose::Meta::Role::has_around_method_modifiers
0000s0sMoose::Meta::Role::::has_before_method_modifiers Moose::Meta::Role::has_before_method_modifiers
0000s0sMoose::Meta::Role::::method_metaclass Moose::Meta::Role::method_metaclass
0000s0sMoose::Meta::Role::::remove_required_methods Moose::Meta::Role::remove_required_methods
0000s0sMoose::Meta::Role::::required_method_metaclass Moose::Meta::Role::required_method_metaclass
0000s0sMoose::Meta::Role::::requires_method Moose::Meta::Role::requires_method
0000s0sMoose::Meta::TypeCoercion::Union::::_new Moose::Meta::TypeCoercion::Union::_new
0000s0sMoose::Meta::TypeCoercion::::_compiled_type_coercion Moose::Meta::TypeCoercion::_compiled_type_coercion
0000s0sMoose::Meta::TypeCoercion::::_new Moose::Meta::TypeCoercion::_new
0000s0sMoose::Meta::TypeCoercion::::type_coercion_map Moose::Meta::TypeCoercion::type_coercion_map
0000s0sMoose::Meta::TypeCoercion::::type_constraint Moose::Meta::TypeCoercion::type_constraint
0000s0sMoose::Meta::TypeConstraint::DuckType::::_new Moose::Meta::TypeConstraint::DuckType::_new
0000s0sMoose::Meta::TypeConstraint::DuckType::::methods Moose::Meta::TypeConstraint::DuckType::methods
0000s0sMoose::Meta::TypeConstraint::Enum::::_inline_var_name Moose::Meta::TypeConstraint::Enum::_inline_var_name
0000s0sMoose::Meta::TypeConstraint::Enum::::_new Moose::Meta::TypeConstraint::Enum::_new
0000s0sMoose::Meta::TypeConstraint::Enum::::values Moose::Meta::TypeConstraint::Enum::values
0000s0sMoose::Meta::TypeConstraint::Registry::::_new Moose::Meta::TypeConstraint::Registry::_new
0000s0sMoose::Meta::TypeConstraint::Registry::::get_parent_registry Moose::Meta::TypeConstraint::Registry::get_parent_registry
0000s0sMoose::Meta::TypeConstraint::Registry::::has_parent_registry Moose::Meta::TypeConstraint::Registry::has_parent_registry
0000s0sMoose::Meta::TypeConstraint::Registry::::set_parent_registry Moose::Meta::TypeConstraint::Registry::set_parent_registry
0000s0sMoose::Meta::TypeConstraint::Union::::_new Moose::Meta::TypeConstraint::Union::_new
0000s0sMoose::Meta::TypeConstraint::Union::::type_constraints Moose::Meta::TypeConstraint::Union::type_constraints
0000s0sMoose::Meta::TypeConstraint::::_package_defined_in Moose::Meta::TypeConstraint::_package_defined_in
0000s0sMoose::Meta::TypeConstraint::::coercion Moose::Meta::TypeConstraint::coercion
0000s0sMoose::Meta::TypeConstraint::::message Moose::Meta::TypeConstraint::message
0000s0sMoose::Object::::meta Moose::Object::meta
0000s0sMoose::Util::TypeConstraints::::unimport Moose::Util::TypeConstraints::unimport
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Class::MOP::Package;
21300nsour $VERSION = '2.1605';
3
4212µs210µs
# spent 9µs (8+1) within Class::MOP::Package::BEGIN@4 which was called: # once (8µs+1µs) by parent::import at line 4
use strict;
# spent 9µs making 1 call to Class::MOP::Package::BEGIN@4 # spent 1µs making 1 call to strict::import
5215µs28µs
# spent 6µs (3+2) within Class::MOP::Package::BEGIN@5 which was called: # once (3µs+2µs) by parent::import at line 5
use warnings;
# spent 6µs making 1 call to Class::MOP::Package::BEGIN@5 # spent 2µs making 1 call to warnings::import
6
7214µs236µs
# spent 20µs (4+16) within Class::MOP::Package::BEGIN@7 which was called: # once (4µs+16µs) by parent::import at line 7
use Scalar::Util 'blessed', 'weaken';
# spent 20µs making 1 call to Class::MOP::Package::BEGIN@7 # spent 16µs making 1 call to Exporter::import
8262µs21.01ms
# spent 944µs (182+762) within Class::MOP::Package::BEGIN@8 which was called: # once (182µs+762µs) by parent::import at line 8
use Devel::GlobalDestruction 'in_global_destruction';
# spent 944µs making 1 call to Class::MOP::Package::BEGIN@8 # spent 66µs making 1 call to Sub::Exporter::Progressive::__ANON__[Sub/Exporter/Progressive.pm:40]
9214µs220µs
# spent 12µs (4+8) within Class::MOP::Package::BEGIN@9 which was called: # once (4µs+8µs) by parent::import at line 9
use Module::Runtime 'module_notional_filename';
# spent 12µs making 1 call to Class::MOP::Package::BEGIN@9 # spent 8µs making 1 call to Module::Runtime::import
10212µs13µs
# spent 3µs within Class::MOP::Package::BEGIN@10 which was called: # once (3µs+0s) by parent::import at line 10
use Package::Stash;
# spent 3µs making 1 call to Class::MOP::Package::BEGIN@10
11
122190µs215µs
# spent 15µs (3+12) within Class::MOP::Package::BEGIN@12 which was called: # once (3µs+12µs) by parent::import at line 12
use parent 'Class::MOP::Object';
# spent 15µs making 1 call to Class::MOP::Package::BEGIN@12 # spent 12µs making 1 call to parent::import, recursion: max depth 2, sum of overlapping time 12µs
13
14# creation ...
15
16
# spent 42µs (27+15) within Class::MOP::Package::initialize which was called 2 times, avg 21µs/call: # 2 times (27µs+15µs) by Moose::Exporter::build_import_methods at line 84 of Moose/Exporter.pm, avg 21µs/call
sub initialize {
1722µs my ( $class, @args ) = @_;
18
1922µs unshift @args, "package" if @args % 2;
20
2122µs my %options = @args;
2222µs my $package_name = delete $options{package};
23
24 # we hand-construct the class until we can bootstrap it
2522µs22µs if ( my $meta = Class::MOP::get_metaclass_by_name($package_name) ) {
# spent 2µs making 2 calls to Class::MOP::get_metaclass_by_name, avg 1µs/call
26 return $meta;
27 } else {
2828µs210µs my $meta = ( ref $class || $class )->_new({
# spent 10µs making 2 calls to Class::MOP::Package::_new, avg 5µs/call
29 'package' => $package_name,
30 %options,
31 });
3222µs22µs Class::MOP::store_metaclass_by_name($package_name, $meta);
# spent 2µs making 2 calls to Class::MOP::store_metaclass_by_name, avg 1µs/call
33
342600ns Class::MOP::weaken_metaclass($package_name) if $options{weaken};
35
36
3725µs return $meta;
38 }
39}
40
41sub reinitialize {
42 my ( $class, @args ) = @_;
43
44 unshift @args, "package" if @args % 2;
45
46 my %options = @args;
47 my $package_name = delete $options{package};
48
49 (defined $package_name && $package_name
50 && (!blessed $package_name || $package_name->isa('Class::MOP::Package')))
51 || $class->_throw_exception( MustPassAPackageNameOrAnExistingClassMOPPackageInstance => params => \%options,
52 class => $class
53 );
54
55 $package_name = $package_name->name
56 if blessed $package_name;
57
58 Class::MOP::remove_metaclass_by_name($package_name);
59
60 $class->initialize($package_name, %options); # call with first arg form for compat
61}
62
63
# spent 171µs (17+154) within Class::MOP::Package::create which was called 2 times, avg 86µs/call: # 2 times (17µs+154µs) by Class::MOP::Module::create at line 59 of Class/MOP/Module.pm, avg 86µs/call
sub create {
642500ns my $class = shift;
652800ns my @args = @_;
66
6722µs2121µs my $meta = $class->initialize(@args);
# spent 121µs making 2 calls to Class::MOP::Class::initialize, avg 60µs/call
6826µs434µs my $filename = module_notional_filename($meta->name);
# spent 33µs making 2 calls to Module::Runtime::module_notional_filename, avg 17µs/call # spent 600ns making 2 calls to Class::MOP::Package::name, avg 300ns/call
69 $INC{$filename} = '(set by Moose)'
7022µs unless exists $INC{$filename};
71
7224µs return $meta;
73}
74
75## ANON packages
76
77{
78 # NOTE:
79 # this should be sufficient, if you have a
80 # use case where it is not, write a test and
81 # I will change it.
821200ns my $ANON_SERIAL = 0;
83
841500ns my %ANON_PACKAGE_CACHE;
85
86 # NOTE:
87 # we need a sufficiently annoying prefix
88 # this should suffice for now, this is
89 # used in a couple of places below, so
90 # need to put it up here for now.
91 sub _anon_package_prefix { 'Class::MOP::Package::__ANON__::SERIAL::' }
92
93 sub is_anon {
94 my $self = shift;
952221µs223µs
# spent 14µs (6+8) within Class::MOP::Package::BEGIN@95 which was called: # once (6µs+8µs) by parent::import at line 95
no warnings 'uninitialized';
# spent 14µs making 1 call to Class::MOP::Package::BEGIN@95 # spent 8µs making 1 call to warnings::unimport
96 my $prefix = $self->_anon_package_prefix;
97 $self->name =~ /^\Q$prefix/;
98 }
99
100 sub create_anon {
101 my ($class, %options) = @_;
102
103 my $cache_ok = delete $options{cache};
104 $options{weaken} = !$cache_ok unless exists $options{weaken};
105
106 my $cache_key;
107 if ($cache_ok) {
108 $cache_key = $class->_anon_cache_key(%options);
109 undef $cache_ok if !defined($cache_key);
110 }
111
112 if ($cache_ok) {
113 if (defined $ANON_PACKAGE_CACHE{$cache_key}) {
114 return $ANON_PACKAGE_CACHE{$cache_key};
115 }
116 }
117
118 my $package_name = $class->_anon_package_prefix . ++$ANON_SERIAL;
119
120 my $meta = $class->create($package_name, %options);
121
122 if ($cache_ok) {
123 $ANON_PACKAGE_CACHE{$cache_key} = $meta;
124 weaken($ANON_PACKAGE_CACHE{$cache_key});
125 }
126
127 return $meta;
128 }
129
130 sub _anon_cache_key {
131 my $class = shift;
132 my %options = @_;
133 $class->_throw_exception( PackagesAndModulesAreNotCachable => class_name => $class,
134 params => \%options,
135 is_module => 0
136 );
137 }
138
139 sub DESTROY {
140 my $self = shift;
141
142 return if in_global_destruction(); # it'll happen soon anyway and this just makes things more complicated
143
144 $self->_free_anon
145 if $self->is_anon;
146 }
147
148 sub _free_anon {
149 my $self = shift;
150 my $name = $self->name;
151
152 # Moose does a weird thing where it replaces the metaclass for
153 # class when fixing metaclass incompatibility. In that case,
154 # we don't want to clean out the namespace now. We can detect
155 # that because Moose will explicitly update the singleton
156 # cache in Class::MOP using store_metaclass_by_name, which
157 # means that the new metaclass will already exist in the cache
158 # by this point.
159 # The other options here are that $current_meta can be undef if
160 # remove_metaclass_by_name is called explicitly (since the hash
161 # entry is removed first, and then this destructor is called),
162 # or that $current_meta can be the same as $self, which happens
163 # when the metaclass goes out of scope (since the weak reference
164 # in the metaclass cache won't be freed until after this
165 # destructor runs).
166 my $current_meta = Class::MOP::get_metaclass_by_name($name);
167 return if defined($current_meta) && $current_meta ne $self;
168
169 my ($first_fragments, $last_fragment) = ($name =~ /^(.*)::(.*)$/);
170
1712220µs222µs
# spent 14µs (6+8) within Class::MOP::Package::BEGIN@171 which was called: # once (6µs+8µs) by parent::import at line 171
no strict 'refs';
# spent 14µs making 1 call to Class::MOP::Package::BEGIN@171 # spent 8µs making 1 call to strict::unimport
172 # clear @ISA first, to avoid a memory leak
173 # see https://rt.perl.org/rt3/Public/Bug/Display.html?id=92708
174 @{$name . '::ISA'} = ();
175 %{$name . '::'} = ();
176 delete ${$first_fragments . '::'}{$last_fragment . '::'};
177
178 Class::MOP::remove_metaclass_by_name($name);
179
180 delete $INC{module_notional_filename($name)};
181 }
182
183}
184
1851200ns
# spent 10µs within Class::MOP::Package::_new which was called 2 times, avg 5µs/call: # 2 times (10µs+0s) by Class::MOP::Package::initialize at line 28, avg 5µs/call
sub _new {
1862600ns my $class = shift;
187
18821µs return Class::MOP::Class->initialize($class)->new_object(@_)
189 if $class ne __PACKAGE__;
190
19122µs my $params = @_ == 1 ? $_[0] : {@_};
192
193 return bless {
194 # Need to quote package to avoid a problem with PPI mis-parsing this
195 # as a package statement.
196 'package' => $params->{package},
197
198 # NOTE:
199 # because of issues with the Perl API
200 # to the typeglob in some versions, we
201 # need to just always grab a new
202 # reference to the hash in the accessor.
203 # Ideally we could just store a ref and
204 # it would Just Work, but oh well :\
205
20627µs namespace => \undef,
207
208 } => $class;
209}
210
211# Attributes
212
213# NOTE:
214# all these attribute readers will be bootstrapped
215# away in the Class::MOP bootstrap section
216
217
# spent 1.12ms (802µs+317µs) within Class::MOP::Package::_package_stash which was called 1049 times, avg 1µs/call: # 540 times (211µs+0s) by Class::MOP::Package::get_package_symbol at line 247, avg 391ns/call # 405 times (258µs+0s) by Class::MOP::Package::add_package_symbol at line 230, avg 636ns/call # 79 times (311µs+309µs) by Class::MOP::Package::get_or_add_package_symbol at line 252, avg 8µs/call # 21 times (20µs+8µs) by Class::MOP::Package::has_package_symbol at line 242, avg 1µs/call # 4 times (2µs+0s) by Class::MOP::Package::list_all_package_symbols at line 262, avg 525ns/call
sub _package_stash {
21810491.79ms142317µs $_[0]->{_package_stash} ||= Package::Stash->new($_[0]->name)
# spent 283µs making 71 calls to Package::Stash::XS::new, avg 4µs/call # spent 35µs making 71 calls to Class::MOP::Package::name, avg 487ns/call
219}
220sub namespace {
221 $_[0]->_package_stash->namespace
222}
223
224# Class attributes
225
226# ... these functions have to touch the symbol table itself,.. yuk
227
228
# spent 4.49ms (1.25+3.25) within Class::MOP::Package::add_package_symbol which was called 405 times, avg 11µs/call: # 401 times (1.24ms+3.22ms) by Class::MOP::Mixin::HasMethods::add_method at line 78 of Class/MOP/Mixin/HasMethods.pm, avg 11µs/call # 4 times (10µs+27µs) by Moose::Exporter::build_import_methods at line 94 of Moose/Exporter.pm, avg 9µs/call
sub add_package_symbol {
22940581µs my $self = shift;
2304054.01ms16203.48ms
# spent 6µs within Moose::Meta::Class::constructor_class which was called 8 times, avg 700ns/call: # 2 times (600ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 286 of Class/MOP/Class.pm, avg 300ns/call # once (2µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm # once (2µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm # once (500ns+0s) by Class::MOP::Class::_check_metaclass_compatibility at line 218 of Class/MOP/Class.pm # once (500ns+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm # once (400ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 284 of Class/MOP/Class.pm # once (300ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 281 of Class/MOP/Class.pm # spent 21µs within Moose::Meta::TypeConstraint::Parameterized::type_parameter which was called 44 times, avg 470ns/call: # 24 times (10µs+0s) by Moose::Meta::TypeConstraint::Parameterized::can_be_inlined at line 72 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 425ns/call # 9 times (4µs+0s) by Moose::Meta::TypeConstraint::Parameterized::_inline_check at line 95 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 444ns/call # 7 times (3µs+0s) by Moose::Meta::TypeConstraint::Parameterized::inline_environment at line 85 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 414ns/call # 2 times (2µs+0s) by Moose::Meta::TypeConstraint::Parameterized::compile_type_constraint at line 48 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 1µs/call # 2 times (1µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_constraint_for at line 33 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 600ns/call # spent 86µs (83+3) within Moose::Meta::TypeConstraint::Parameterizable::_new which was called 4 times, avg 22µs/call: # 4 times (83µs+3µs) by Moose::Meta::TypeConstraint::new at line 124 of Moose/Meta/TypeConstraint.pm, avg 22µs/call # spent 7µs (4+3) within Moose::Meta::TypeCoercion::Union::meta which was called: # once (4µs+3µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 26µs within Class::MOP::Method::Constructor::options which was called 31 times, avg 835ns/call: # 31 times (26µs+0s) by Class::MOP::Method::Constructor::_generate_constructor_method_inline at line 104 of Class/MOP/Method/Constructor.pm, avg 835ns/call # spent 82µs within Class::MOP::Mixin::AttributeCore::_set_insertion_order which was called 135 times, avg 611ns/call: # 135 times (82µs+0s) by Class::MOP::Mixin::HasAttributes::add_attribute at line 30 of Class/MOP/Mixin/HasAttributes.pm, avg 611ns/call # spent 138µs within Class::MOP::Mixin::AttributeCore::has_writer which was called 211 times, avg 652ns/call: # 211 times (138µs+0s) by Class::MOP::Attribute::install_accessors at line 454 of Class/MOP/Attribute.pm, avg 652ns/call # spent 10.5ms (3.98+6.54) within Class::MOP::Class::Immutable::Class::MOP::Class::get_meta_instance which was called 296 times, avg 36µs/call: # 251 times (3.80ms+6.21ms) by Class::MOP::Attribute::_inline_instance_set at line 301 of Class/MOP/Attribute.pm, avg 40µs/call # 25 times (120µs+246µs) by Class::MOP::Class::_construct_instance at line 502 of Class/MOP/Class.pm, avg 15µs/call # 10 times (24µs+46µs) by Class::MOP::Attribute::get_raw_value at line 311 of Class/MOP/Attribute.pm, avg 7µs/call # 9 times (27µs+36µs) by Class::MOP::Attribute::has_value at line 332 of Class/MOP/Attribute.pm, avg 7µs/call # once (2µs+3µs) by Moose::Meta::Attribute::_inline_weaken_value at line 737 of Moose/Meta/Attribute.pm # spent 55µs (9+46) within Moose::unimport which was called: # once (9µs+46µs) by DBIx::MultiStatementDo::BEGIN@113 at line 113 of DBIx/MultiStatementDo.pm # spent 78µs (42+36) within Moose::Meta::TypeConstraint::meta which was called 10 times, avg 8µs/call: # once (13µs+4µs) by Moose::BEGIN@25 at line 100 of Moose/Meta/TypeConstraint.pm # once (8µs+6µs) by Moose::BEGIN@25 at line 22 of Moose/Meta/TypeConstraint.pm # once (3µs+4µs) by Moose::BEGIN@25 at line 26 of Moose/Meta/TypeConstraint.pm # once (2µs+4µs) by Moose::BEGIN@25 at line 37 of Moose/Meta/TypeConstraint.pm # once (2µs+4µs) by Moose::BEGIN@25 at line 79 of Moose/Meta/TypeConstraint.pm # once (3µs+3µs) by Moose::BEGIN@25 at line 106 of Moose/Meta/TypeConstraint.pm # once (2µs+3µs) by Moose::BEGIN@25 at line 46 of Moose/Meta/TypeConstraint.pm # once (2µs+3µs) by Moose::BEGIN@25 at line 73 of Moose/Meta/TypeConstraint.pm # once (3µs+3µs) by Moose::BEGIN@25 at line 40 of Moose/Meta/TypeConstraint.pm # once (2µs+3µs) by Moose::BEGIN@25 at line 90 of Moose/Meta/TypeConstraint.pm # spent 38µs (10+28) within Moose::Meta::Mixin::AttributeCore::is_required which was called 10 times, avg 4µs/call: # 6 times (7µs+28µs) by Moose::Meta::Attribute::_inline_check_required at line 629 of Moose/Meta/Attribute.pm, avg 6µs/call # 4 times (2µs+0s) by Moose::Meta::Class::_inline_check_required_attr at line 376 of Moose/Meta/Class.pm, avg 600ns/call # spent 206µs within Moose::Meta::TypeConstraint::constraint which was called 419 times, avg 493ns/call: # 195 times (115µs+0s) by Moose::Meta::TypeConstraint::can_be_inlined at line 177 of Moose/Meta/TypeConstraint.pm, avg 592ns/call # 95 times (36µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 191 of Moose/Meta/TypeConstraint.pm, avg 375ns/call # 91 times (36µs+0s) by Moose::Meta::TypeConstraint::inline_environment at line 201 of Moose/Meta/TypeConstraint.pm, avg 395ns/call # 38 times (20µs+0s) by Moose::Meta::TypeConstraint::equals at line 239 of Moose/Meta/TypeConstraint.pm, avg 516ns/call # spent 21µs within Moose::Meta::TypeConstraint::parent which was called 38 times, avg 563ns/call: # 26 times (13µs+0s) by Moose::Meta::TypeConstraint::is_subtype_of at line 268 of Moose/Meta/TypeConstraint.pm, avg 500ns/call # 4 times (2µs+0s) by Moose::Util::TypeConstraints::Builtins::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Util/TypeConstraints/Builtins.pm:60] at line 58 of Moose/Util/TypeConstraints/Builtins.pm, avg 500ns/call # 2 times (3µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::parameterize at line 78 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 1µs/call # 2 times (2µs+0s) by Moose::Meta::TypeConstraint::can_be_inlined at line 177 of Moose/Meta/TypeConstraint.pm, avg 1µs/call # once (500ns+0s) by Moose::Util::TypeConstraints::Builtins::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Util/TypeConstraints/Builtins.pm:170] at line 165 of Moose/Util/TypeConstraints/Builtins.pm # once (400ns+0s) by Moose::Util::TypeConstraints::Builtins::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Util/TypeConstraints/Builtins.pm:77] at line 72 of Moose/Util/TypeConstraints/Builtins.pm # once (300ns+0s) by Moose::Meta::TypeConstraint::inline_environment at line 201 of Moose/Meta/TypeConstraint.pm # once (200ns+0s) by Moose::Meta::TypeConstraint::_inline_check at line 191 of Moose/Meta/TypeConstraint.pm # spent 67µs (63+5) within Moose::Meta::TypeConstraint::Parameterized::_new which was called 2 times, avg 34µs/call: # 2 times (63µs+5µs) by Moose::Meta::TypeConstraint::new at line 124 of Moose/Meta/TypeConstraint.pm, avg 34µs/call # spent 65µs (59+7) within Moose::Meta::Attribute::_new which was called 4 times, avg 16µs/call: # 4 times (59µs+7µs) by Class::MOP::Attribute::new at line 63 of Class/MOP/Attribute.pm, avg 16µs/call # spent 65µs (13+52) within Moose::Meta::Mixin::AttributeCore::is_lazy which was called 10 times, avg 6µs/call: # 6 times (11µs+52µs) by Moose::Meta::Attribute::_inline_check_lazy at line 871 of Moose/Meta/Attribute.pm, avg 10µs/call # 4 times (2µs+0s) by Moose::Meta::Class::_inline_init_attr_from_default at line 421 of Moose/Meta/Class.pm, avg 575ns/call # spent 2.31ms (309µs+2.00) within Class::MOP::Class::superclasses which was called 79 times, avg 29µs/call: # 69 times (221µs+1.26ms) by Class::MOP::Class::_check_metaclass_compatibility at line 197 of Class/MOP/Class.pm, avg 21µs/call # 6 times (36µs+428µs) by Moose::Meta::Class::superclasses at line 562 of Moose/Meta/Class.pm, avg 77µs/call # 2 times (48µs+314µs) by Class::MOP::Class::create at line 449 of Class/MOP/Class.pm, avg 181µs/call # 2 times (4µs+-4µs) by Class::MOP::Class::_superclasses_updated at line 979 of Class/MOP/Class.pm, avg 0s/call # spent 1.75ms (616µs+1.13) within Class::MOP::Class::Immutable::Class::MOP::Class::_method_map which was called 246 times, avg 7µs/call: # 233 times (584µs+1.08ms) by Class::MOP::Mixin::HasMethods::_get_maybe_raw_method at line 126 of Class/MOP/Mixin/HasMethods.pm, avg 7µs/call # 13 times (32µs+56µs) by Class::MOP::Mixin::HasMethods::get_method at line 116 of Class/MOP/Mixin/HasMethods.pm, avg 7µs/call # spent 18µs (10+8) within Moose::Meta::Role::Application::ToInstance::meta which was called 2 times, avg 9µs/call: # once (7µs+6µs) by Moose::BEGIN@38 at line 17 of Moose/Meta/Role/Application/ToInstance.pm # once (2µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 66µs within Moose::Meta::TypeConstraint::inlined which was called 96 times, avg 682ns/call: # 96 times (66µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 682ns/call # spent 103µs within Class::MOP::Mixin::AttributeCore::has_clearer which was called 211 times, avg 488ns/call: # 211 times (103µs+0s) by Class::MOP::Attribute::install_accessors at line 462 of Class/MOP/Attribute.pm, avg 488ns/call # spent 6.90ms (263µs+6.64) within Class::MOP::Mixin::meta which was called 84 times, avg 82µs/call: # 5 times (12µs+22µs) by Moose::Exporter::BEGIN@8 at line 775 of Class/MOP.pm, avg 7µs/call # 5 times (14µs+16µs) by Moose::Exporter::BEGIN@8 at line 646 of Class/MOP.pm, avg 6µs/call # once (4µs+2.66ms) by parent::import at line 96 of Moose/Meta/Mixin/AttributeCore.pm # once (9µs+430µs) by Moose::Exporter::BEGIN@8 at line 140 of Class/MOP.pm # once (3µs+394µs) by Moose::Exporter::BEGIN@8 at line 308 of Class/MOP.pm # once (3µs+301µs) by Moose::Exporter::BEGIN@8 at line 219 of Class/MOP.pm # once (7µs+288µs) by parent::import at line 9 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+281µs) by Moose::Exporter::BEGIN@8 at line 481 of Class/MOP.pm # once (7µs+260µs) by Moose::Meta::Role::BEGIN@11 at line 14 of Moose/Meta/Role/Attribute.pm # once (3µs+178µs) by Moose::Exporter::BEGIN@8 at line 185 of Class/MOP.pm # once (3µs+169µs) by Moose::Exporter::BEGIN@8 at line 555 of Class/MOP.pm # once (3µs+160µs) by Moose::Exporter::BEGIN@8 at line 212 of Class/MOP.pm # once (3µs+155µs) by Moose::Exporter::BEGIN@8 at line 271 of Class/MOP.pm # once (3µs+148µs) by Moose::Exporter::BEGIN@8 at line 635 of Class/MOP.pm # once (3µs+146µs) by Moose::Exporter::BEGIN@8 at line 679 of Class/MOP.pm # once (3µs+146µs) by Moose::Exporter::BEGIN@8 at line 376 of Class/MOP.pm # once (3µs+145µs) by Moose::Exporter::BEGIN@8 at line 583 of Class/MOP.pm # once (3µs+139µs) by Moose::Exporter::BEGIN@8 at line 618 of Class/MOP.pm # once (3µs+139µs) by Moose::Exporter::BEGIN@8 at line 593 of Class/MOP.pm # once (2µs+137µs) by Moose::Exporter::BEGIN@8 at line 511 of Class/MOP.pm # once (3µs+136µs) by Moose::Exporter::BEGIN@8 at line 564 of Class/MOP.pm # once (11µs+11µs) by Moose::Exporter::BEGIN@8 at line 407 of Class/MOP.pm # once (4µs+4µs) by Moose::Exporter::BEGIN@8 at line 328 of Class/MOP.pm # once (4µs+5µs) by Moose::Exporter::BEGIN@8 at line 144 of Class/MOP.pm # once (4µs+4µs) by Moose::Exporter::BEGIN@8 at line 622 of Class/MOP.pm # once (4µs+4µs) by Moose::Exporter::BEGIN@8 at line 244 of Class/MOP.pm # once (4µs+3µs) by Moose::Exporter::BEGIN@8 at line 462 of Class/MOP.pm # once (3µs+4µs) by Moose::Exporter::BEGIN@8 at line 291 of Class/MOP.pm # once (3µs+4µs) by Moose::Exporter::BEGIN@8 at line 157 of Class/MOP.pm # once (3µs+4µs) by Moose::Exporter::BEGIN@8 at line 189 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 602 of Class/MOP.pm # once (3µs+3µs) by DBIx::MultiStatementDo::BEGIN@8 at line 280 of Moose.pm # once (3µs+4µs) by Moose::Meta::Role::BEGIN@11 at line 28 of Moose/Meta/Role/Attribute.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 572 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 399 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 454 of Class/MOP.pm # once (3µs+4µs) by Moose::Meta::Role::BEGIN@11 at line 21 of Moose/Meta/Role/Attribute.pm # once (3µs+4µs) by Class::MOP::Method::Meta::wrap at line 56 of Class/MOP/Method/Meta.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 721 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 415 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 525 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 500 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 710 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 518 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 686 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 348 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 532 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 338 of Class/MOP.pm # once (3µs+4µs) by Moose::Exporter::BEGIN@8 at line 470 of Class/MOP.pm # once (2µs+4µs) by parent::import at line 16 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 422 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 430 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 446 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 312 of Class/MOP.pm # once (3µs+3µs) by Moose::Meta::Role::BEGIN@11 at line 35 of Moose/Meta/Role/Attribute.pm # once (3µs+3µs) by parent::import at line 30 of Moose/Meta/Mixin/AttributeCore.pm # once (2µs+3µs) by parent::import at line 23 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+3µs) by parent::import at line 87 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 391 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 438 of Class/MOP.pm # once (2µs+3µs) by parent::import at line 71 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 359 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 507 of Class/MOP.pm # once (2µs+3µs) by Moose::Meta::Role::BEGIN@11 at line 42 of Moose/Meta/Role/Attribute.pm # once (2µs+3µs) by parent::import at line 50 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 661 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 539 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 703 of Class/MOP.pm # once (3µs+3µs) by parent::import at line 43 of Moose/Meta/Mixin/AttributeCore.pm # once (2µs+3µs) by parent::import at line 64 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 727 of Class/MOP.pm # once (3µs+3µs) by Moose::Exporter::BEGIN@8 at line 696 of Class/MOP.pm # once (2µs+3µs) by parent::import at line 37 of Moose/Meta/Mixin/AttributeCore.pm # once (2µs+3µs) by parent::import at line 79 of Moose/Meta/Mixin/AttributeCore.pm # once (2µs+3µs) by parent::import at line 57 of Moose/Meta/Mixin/AttributeCore.pm # once (3µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 167µs within Moose::Meta::TypeConstraint::has_parent which was called 390 times, avg 429ns/call: # 200 times (105µs+0s) by Moose::Meta::TypeConstraint::can_be_inlined at line 177 of Moose/Meta/TypeConstraint.pm, avg 523ns/call # 97 times (30µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 191 of Moose/Meta/TypeConstraint.pm, avg 306ns/call # 93 times (33µs+0s) by Moose::Meta::TypeConstraint::inline_environment at line 201 of Moose/Meta/TypeConstraint.pm, avg 355ns/call # spent 20µs (11+9) within Moose::Meta::TypeConstraint::Parameterizable::meta which was called 2 times, avg 10µs/call: # once (9µs+5µs) by Moose::Meta::TypeConstraint::Parameterized::BEGIN@10 at line 16 of Moose/Meta/TypeConstraint/Parameterizable.pm # once (3µs+4µs) by Moose::Meta::TypeConstraint::Parameterized::BEGIN@10 at line 22 of Moose/Meta/TypeConstraint/Parameterizable.pm # spent 2.57ms (41µs+2.53) within Moose::import which was called: # once (41µs+2.53ms) by DBIx::MultiStatementDo::BEGIN@8 at line 8 of DBIx/MultiStatementDo.pm # spent 249µs (55+194) within Moose::Meta::Method::_new which was called 5 times, avg 50µs/call: # 5 times (55µs+194µs) by Class::MOP::Method::wrap at line 49 of Class/MOP/Method.pm, avg 50µs/call # spent 231µs (212+19) within Moose::Meta::TypeConstraint::Role::_new which was called 12 times, avg 19µs/call: # 12 times (212µs+19µs) by Moose::Meta::TypeConstraint::new at line 124 of Moose/Meta/TypeConstraint.pm, avg 19µs/call # spent 156µs within Moose::Meta::TypeConstraint::Registry::type_constraints which was called 246 times, avg 635ns/call: # 107 times (50µs+0s) by Moose::Meta::TypeConstraint::Registry::get_type_constraint at line 41 of Moose/Meta/TypeConstraint/Registry.pm, avg 464ns/call # 88 times (71µs+0s) by Moose::Meta::TypeConstraint::Registry::has_type_constraint at line 35 of Moose/Meta/TypeConstraint/Registry.pm, avg 803ns/call # 50 times (35µs+0s) by Moose::Meta::TypeConstraint::Registry::add_type_constraint at line 53 of Moose/Meta/TypeConstraint/Registry.pm, avg 708ns/call # once (300ns+0s) by Moose::Util::TypeConstraints::list_all_type_constraints at line 58 of Moose/Util/TypeConstraints.pm # spent 7µs within Moose::Meta::Class::destructor_class which was called 8 times, avg 925ns/call: # 2 times (800ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 286 of Class/MOP/Class.pm, avg 400ns/call # once (3µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm # once (2µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm # once (500ns+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm # once (500ns+0s) by Class::MOP::Class::_check_metaclass_compatibility at line 218 of Class/MOP/Class.pm # once (400ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 281 of Class/MOP/Class.pm # once (400ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 284 of Class/MOP/Class.pm # spent 2µs within Moose::Meta::TypeConstraint::Parameterizable::constraint_generator which was called 2 times, avg 1µs/call: # 2 times (2µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_constraint_for at line 33 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 1µs/call # spent 17µs (11+6) within Moose::Meta::Role::meta which was called 2 times, avg 8µs/call: # once (5µs+3µs) by Moose::BEGIN@32 at line 38 of Moose/Meta/Role.pm # once (5µs+3µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 84µs (22+63) within Moose::Meta::Mixin::AttributeCore::should_coerce which was called 25 times, avg 3µs/call: # 13 times (7µs+27µs) by Moose::Meta::Attribute::_inline_check_coercion at line 660 of Moose/Meta/Attribute.pm, avg 3µs/call # 12 times (15µs+36µs) by Moose::Meta::Attribute::_writer_value_needs_copy at line 616 of Moose/Meta/Attribute.pm, avg 4µs/call # spent 265µs (105+160) within Class::MOP::Class::Immutable::Class::MOP::Class::is_immutable which was called 23 times, avg 12µs/call: # 23 times (105µs+160µs) by Class::MOP::Class::_real_ref_name at line 122 of Class/MOP/Class.pm, avg 12µs/call # spent 8µs (4+3) within DBIx::MultiStatementDo::meta which was called: # once (4µs+3µs) by BenchmarkAnything::Storage::Frontend::Lib::BEGIN@280 at line 114 of DBIx/MultiStatementDo.pm # spent 12µs (6+5) within Moose::Meta::TypeConstraint::DuckType::meta which was called: # once (6µs+5µs) by Moose::Util::TypeConstraints::BEGIN@31 at line 17 of Moose/Meta/TypeConstraint/DuckType.pm # spent 22µs within Moose::Meta::TypeConstraint::Role::role which was called 24 times, avg 933ns/call: # 24 times (22µs+0s) by Moose::Meta::TypeConstraint::Role::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Meta/TypeConstraint/Role.pm:27] at line 23 of Moose/Meta/TypeConstraint/Role.pm, avg 933ns/call # spent 41µs within Moose::Meta::TypeConstraint::Class::class which was called 35 times, avg 1µs/call: # 35 times (41µs+0s) by Moose::Meta::TypeConstraint::Class::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Meta/TypeConstraint/Class.pm:25] at line 23 of Moose/Meta/TypeConstraint/Class.pm, avg 1µs/call # spent 18µs (11+7) within Moose::Meta::Role::Application::RoleSummation::meta which was called 2 times, avg 9µs/call: # once (7µs+5µs) by Moose::BEGIN@35 at line 20 of Moose/Meta/Role/Application/RoleSummation.pm # once (4µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 282µs within Moose::Meta::TypeConstraint::_compiled_type_constraint which was called 83 times, avg 3µs/call: # 77 times (277µs+0s) by Moose::Meta::TypeConstraint::compile_type_constraint at line 280 of Moose/Meta/TypeConstraint.pm, avg 4µs/call # 4 times (2µs+0s) by Moose::Meta::Class::_eval_environment at line 518 of Moose/Meta/Class.pm, avg 625ns/call # once (2µs+0s) by Moose::Util::TypeConstraints::Builtins::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Util/TypeConstraints/Builtins.pm:251] at line 244 of Moose/Util/TypeConstraints/Builtins.pm # once (700ns+0s) by Moose::Util::TypeConstraints::Builtins::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Util/TypeConstraints/Builtins.pm:284] at line 279 of Moose/Util/TypeConstraints/Builtins.pm # spent 3µs within Moose::Meta::Class::immutable_trait which was called 2 times, avg 2µs/call: # once (2µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm # once (1µs+0s) by Class::MOP::Class::_immutable_metaclass at line 1337 of Class/MOP/Class.pm # spent 74µs within Moose::Meta::TypeConstraint::_default_message which was called 58 times, avg 1µs/call: # 50 times (69µs+0s) by Moose::Meta::TypeConstraint::new at line 127 of Moose/Meta/TypeConstraint.pm, avg 1µs/call # 4 times (3µs+0s) by Moose::Meta::Attribute::_eval_environment at line 773 of Moose/Meta/Attribute.pm, avg 650ns/call # 4 times (2µs+0s) by Moose::Meta::Class::_eval_environment at line 528 of Moose/Meta/Class.pm, avg 525ns/call # spent 46µs (21+24) within Moose::Meta::Role::Composite::meta which was called 6 times, avg 8µs/call: # once (8µs+8µs) by Moose::BEGIN@33 at line 18 of Moose/Meta/Role/Composite.pm # once (3µs+5µs) by Moose::BEGIN@33 at line 31 of Moose/Meta/Role/Composite.pm # once (2µs+3µs) by Moose::BEGIN@33 at line 45 of Moose/Meta/Role/Composite.pm # once (2µs+3µs) by Moose::BEGIN@33 at line 40 of Moose/Meta/Role/Composite.pm # once (2µs+3µs) by Moose::BEGIN@33 at line 37 of Moose/Meta/Role/Composite.pm # once (3µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 101µs within Moose::Meta::TypeConstraint::_has_inlined_type_constraint which was called 198 times, avg 512ns/call: # 198 times (101µs+0s) by Moose::Meta::TypeConstraint::can_be_inlined at line 181 of Moose/Meta/TypeConstraint.pm, avg 512ns/call # spent 48µs within Class::MOP::Method::Constructor::associated_metaclass which was called 90 times, avg 539ns/call: # 30 times (18µs+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 28 of Class/MOP/Method/Inlined.pm, avg 587ns/call # 30 times (16µs+0s) by Class::MOP::Method::Constructor::_generate_constructor_method_inline at line 96 of Class/MOP/Method/Constructor.pm, avg 540ns/call # 30 times (15µs+0s) by Class::MOP::Method::Constructor::_eval_environment at line 86 of Class/MOP/Method/Constructor.pm, avg 490ns/call # spent 53µs within Moose::Meta::TypeConstraint::_has_compiled_type_constraint which was called 50 times, avg 1µs/call: # 50 times (53µs+0s) by Moose::Meta::TypeConstraint::new at line 125 of Moose/Meta/TypeConstraint.pm, avg 1µs/call # spent 167µs within Class::MOP::Mixin::AttributeCore::has_accessor which was called 213 times, avg 783ns/call: # 211 times (165µs+0s) by Class::MOP::Attribute::install_accessors at line 446 of Class/MOP/Attribute.pm, avg 784ns/call # 2 times (1µs+0s) by Class::MOP::Mixin::AttributeCore::has_read_method at line 24 of Class/MOP/Mixin/AttributeCore.pm, avg 650ns/call # spent 64µs (18+46) within Moose::Meta::Mixin::AttributeCore::has_type_constraint which was called 20 times, avg 3µs/call: # 13 times (10µs+27µs) by Moose::Meta::Attribute::_inline_check_constraint at line 682 of Moose/Meta/Attribute.pm, avg 3µs/call # 6 times (8µs+20µs) by Moose::Meta::Attribute::_eval_environment at line 763 of Moose/Meta/Attribute.pm, avg 5µs/call # once (400ns+0s) by Moose::Meta::Attribute::_inline_init_from_default at line 891 of Moose/Meta/Attribute.pm # spent 20µs within Class::MOP::Method::_set_original_method which was called 26 times, avg 781ns/call: # 26 times (20µs+0s) by Class::MOP::Method::clone at line 141 of Class/MOP/Method.pm, avg 781ns/call # spent 192µs (18+174) within Moose::Meta::Role::Method::Required::meta which was called 4 times, avg 48µs/call: # 2 times (5µs+5µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm, avg 5µs/call # once (4µs+165µs) by Moose::Meta::Role::BEGIN@14 at line 11 of Moose/Meta/Role/Method/Conflicting.pm # once (9µs+4µs) by Moose::Meta::Role::BEGIN@13 at line 18 of Moose/Meta/Role/Method/Required.pm # spent 1.07ms (142µs+933µs) within Class::MOP::Class::Immutable::Class::MOP::Class::get_all_attributes which was called 41 times, avg 26µs/call: # 25 times (90µs+345µs) by Class::MOP::Class::_construct_instance at line 525 of Class/MOP/Class.pm, avg 17µs/call # 12 times (32µs+465µs) by Class::MOP::Class::_create_meta_instance at line 727 of Class/MOP/Class.pm, avg 41µs/call # 4 times (19µs+124µs) by Moose::Meta::Attribute::new at line 58 of Moose/Meta/Attribute.pm, avg 36µs/call # spent 20µs (9+11) within Moose::Meta::TypeConstraint::Registry::meta which was called 2 times, avg 10µs/call: # once (6µs+5µs) by Moose::Util::TypeConstraints::BEGIN@34 at line 14 of Moose/Meta/TypeConstraint/Registry.pm # once (3µs+5µs) by Moose::Util::TypeConstraints::BEGIN@34 at line 24 of Moose/Meta/TypeConstraint/Registry.pm # spent 4µs within Moose::Meta::Mixin::AttributeCore::trigger which was called 2 times, avg 2µs/call: # once (2µs+0s) by Moose::Meta::Attribute::_eval_environment at line 758 of Moose/Meta/Attribute.pm # once (2µs+0s) by Moose::Meta::Class::_eval_environment at line 500 of Moose/Meta/Class.pm # spent 14µs within Moose::Meta::TypeConstraint::Parameterizable::has_inline_generator which was called 33 times, avg 424ns/call: # 24 times (11µs+0s) by Moose::Meta::TypeConstraint::Parameterized::can_be_inlined at line 72 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 454ns/call # 9 times (3µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_inline_for at line 56 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 344ns/call # spent 110µs within Class::MOP::Mixin::AttributeCore::has_default which was called 294 times, avg 376ns/call: # 285 times (105µs+0s) by Class::MOP::Class::_inline_default_value at line 668 of Class/MOP/Class.pm, avg 369ns/call # 6 times (4µs+0s) by Moose::Meta::Attribute::_eval_environment at line 760 of Moose/Meta/Attribute.pm, avg 650ns/call # once (600ns+0s) by Moose::Meta::Attribute::_inline_init_from_default at line 886 of Moose/Meta/Attribute.pm # once (500ns+0s) by Moose::Meta::Class::_inline_check_required_attr at line 377 of Moose/Meta/Class.pm # once (300ns+0s) by Moose::Meta::Attribute::_inline_generate_default at line 908 of Moose/Meta/Attribute.pm # spent 43µs (14+29) within Moose::Meta::Mixin::AttributeCore::is_weak_ref which was called 13 times, avg 3µs/call: # 13 times (14µs+29µs) by Moose::Meta::Attribute::_inline_weaken_value at line 735 of Moose/Meta/Attribute.pm, avg 3µs/call # spent 28µs (28+700ns) within Moose::Meta::Instance::_new which was called 4 times, avg 7µs/call: # 4 times (28µs+700ns) by Class::MOP::Instance::new at line 38 of Class/MOP/Instance.pm, avg 7µs/call # spent 5µs within Moose::Meta::TypeConstraint::Parameterizable::inline_generator which was called 9 times, avg 578ns/call: # 9 times (5µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_inline_for at line 62 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 578ns/call # spent 37µs (9+28) within Moose::Meta::Mixin::AttributeCore::has_handles which was called 6 times, avg 6µs/call: # 6 times (9µs+28µs) by Moose::Meta::Attribute::install_accessors at line 996 of Moose/Meta/Attribute.pm, avg 6µs/call # spent 203µs (187+16) within Moose::Meta::TypeConstraint::_new which was called 17 times, avg 12µs/call: # 17 times (187µs+16µs) by Moose::Meta::TypeConstraint::new at line 124 of Moose/Meta/TypeConstraint.pm, avg 12µs/call # spent 40µs (16+24) within Moose::Meta::TypeCoercion::meta which was called 4 times, avg 10µs/call: # once (4µs+12µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # once (7µs+6µs) by Moose::BEGIN@26 at line 16 of Moose/Meta/TypeCoercion.pm # once (3µs+3µs) by Moose::BEGIN@26 at line 19 of Moose/Meta/TypeCoercion.pm # once (3µs+2µs) by Moose::BEGIN@26 at line 28 of Moose/Meta/TypeCoercion.pm # spent 125µs within Class::MOP::Method::Accessor::accessor_type which was called 193 times, avg 650ns/call: # 193 times (125µs+0s) by Class::MOP::Method::Accessor::_initialize_body at line 84 of Class/MOP/Method/Accessor.pm, avg 650ns/call # spent 15µs within Moose::Meta::TypeConstraint::Parameterized::has_parameterized_from which was called 31 times, avg 484ns/call: # 24 times (12µs+0s) by Moose::Meta::TypeConstraint::Parameterized::can_be_inlined at line 72 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 496ns/call # 7 times (3µs+0s) by Moose::Meta::TypeConstraint::Parameterized::inline_environment at line 85 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 443ns/call # spent 80µs within Class::MOP::Mixin::AttributeCore::has_builder which was called 185 times, avg 430ns/call: # 184 times (79µs+0s) by Class::MOP::Class::_inline_default_value at line 668 of Class/MOP/Class.pm, avg 427ns/call # once (900ns+0s) by Moose::Meta::Class::_inline_check_required_attr at line 377 of Moose/Meta/Class.pm # spent 120µs (21+99) within Moose::Meta::Mixin::AttributeCore::has_trigger which was called 26 times, avg 5µs/call: # 6 times (8µs+36µs) by Moose::Meta::Attribute::_eval_environment at line 758 of Moose/Meta/Attribute.pm, avg 7µs/call # 6 times (5µs+38µs) by Moose::Meta::Attribute::_inline_trigger at line 748 of Moose/Meta/Attribute.pm, avg 7µs/call # 6 times (5µs+25µs) by Moose::Meta::Attribute::_inline_get_old_value_for_trigger at line 722 of Moose/Meta/Attribute.pm, avg 5µs/call # 4 times (2µs+0s) by Moose::Meta::Class::_inline_triggers at line 463 of Moose/Meta/Class.pm, avg 400ns/call # 4 times (2µs+0s) by Moose::Meta::Class::_eval_environment at line 500 of Moose/Meta/Class.pm, avg 375ns/call # spent 2µs within Moose::Meta::Mixin::AttributeCore::handles which was called: # once (2µs+0s) by Moose::Meta::Attribute::_canonicalize_handles at line 1126 of Moose/Meta/Attribute.pm # spent 6µs within Moose::Meta::TypeConstraint::Parameterized::has_type_parameter which was called 9 times, avg 611ns/call: # 7 times (4µs+0s) by Moose::Meta::TypeConstraint::Parameterized::inline_environment at line 85 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 543ns/call # 2 times (2µs+0s) by Moose::Meta::TypeConstraint::Parameterized::compile_type_constraint at line 44 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 850ns/call # spent 6µs (4+2) within Moose::Meta::Role::Application::ToRole::meta which was called: # once (4µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 13µs (7+5) within Moose::Meta::TypeConstraint::Class::meta which was called: # once (7µs+5µs) by Moose::Util::TypeConstraints::BEGIN@28 at line 14 of Moose/Meta/TypeConstraint/Class.pm # spent 20µs (11+10) within Moose::Meta::TypeConstraint::Union::meta which was called: # once (11µs+10µs) by Moose::Util::TypeConstraints::BEGIN@25 at line 17 of Moose/Meta/TypeConstraint/Union.pm # spent 315µs (291+24) within Moose::Meta::TypeConstraint::Class::_new which was called 15 times, avg 21µs/call: # 15 times (291µs+24µs) by Moose::Meta::TypeConstraint::new at line 124 of Moose/Meta/TypeConstraint.pm, avg 21µs/call # spent 62µs (57+5) within Class::MOP::Instance::_class_name which was called 35 times, avg 2µs/call: # 35 times (57µs+5µs) by Class::MOP::Instance::create_instance at line 74 of Class/MOP/Instance.pm, avg 2µs/call # spent 15µs within Moose::Meta::Mixin::AttributeCore::type_constraint which was called 30 times, avg 510ns/call: # 22 times (11µs+0s) by Moose::Meta::Attribute::_inline_check_constraint at line 686 of Moose/Meta/Attribute.pm, avg 509ns/call # 4 times (2µs+0s) by Moose::Meta::Attribute::_eval_environment at line 764 of Moose/Meta/Attribute.pm, avg 600ns/call # 4 times (2µs+0s) by Moose::Meta::Class::_eval_environment at line 514 of Moose/Meta/Class.pm, avg 425ns/call # spent 19µs (9+10) within Moose::Meta::TypeConstraint::Parameterized::meta which was called 2 times, avg 10µs/call: # once (6µs+7µs) by Moose::Util::TypeConstraints::BEGIN@26 at line 15 of Moose/Meta/TypeConstraint/Parameterized.pm # once (3µs+4µs) by Moose::Util::TypeConstraints::BEGIN@26 at line 21 of Moose/Meta/TypeConstraint/Parameterized.pm # spent 34µs (10+24) within Moose::Meta::Mixin::AttributeCore::should_auto_deref which was called 6 times, avg 6µs/call: # 6 times (10µs+24µs) by Moose::Meta::Attribute::_auto_deref at line 965 of Moose/Meta/Attribute.pm, avg 6µs/call # spent 686µs (220+466) within Class::MOP::Class::Immutable::Class::MOP::Class::linearized_isa which was called 67 times, avg 10µs/call: # 51 times (173µs+298µs) by Class::MOP::Class::find_attribute_by_name at line 924 of Class/MOP/Class.pm, avg 9µs/call # 16 times (47µs+168µs) by Class::MOP::Class::get_all_attributes at line 936 of Class/MOP/Class.pm, avg 13µs/call # spent 90µs within Class::MOP::Method::Accessor::associated_attribute which was called 205 times, avg 440ns/call: # 56 times (22µs+0s) by Class::MOP::Method::Accessor::_generate_reader_method_inline at line 147 of Class/MOP/Method/Accessor.pm, avg 400ns/call # 54 times (24µs+0s) by Class::MOP::Method::Accessor::_generate_reader_method at line 132 of Class/MOP/Method/Accessor.pm, avg 439ns/call # 25 times (12µs+0s) by Class::MOP::Method::Accessor::_generate_accessor_method_inline at line 110 of Class/MOP/Method/Accessor.pm, avg 464ns/call # 21 times (10µs+0s) by Class::MOP::Method::Accessor::_generate_accessor_method at line 98 of Class/MOP/Method/Accessor.pm, avg 452ns/call # 15 times (6µs+0s) by Class::MOP::Method::Accessor::_generate_predicate_method_inline at line 216 of Class/MOP/Method/Accessor.pm, avg 413ns/call # 15 times (5µs+0s) by Class::MOP::Method::Accessor::_generate_predicate_method at line 207 of Class/MOP/Method/Accessor.pm, avg 353ns/call # 6 times (4µs+0s) by Moose::Meta::Method::Accessor::_eval_environment at line 46 of Moose/Meta/Method/Accessor.pm, avg 667ns/call # 5 times (3µs+0s) by Moose::Meta::Method::Accessor::_instance_is_inlinable at line 51 of Moose/Meta/Method/Accessor.pm, avg 640ns/call # 3 times (1µs+0s) by Class::MOP::Method::Accessor::_generate_writer_method_inline at line 188 of Class/MOP/Method/Accessor.pm, avg 400ns/call # 3 times (1µs+0s) by Class::MOP::Method::Accessor::_generate_writer_method at line 179 of Class/MOP/Method/Accessor.pm, avg 400ns/call # once (1µs+0s) by Moose::Meta::Attribute::_process_accessors at line 1023 of Moose/Meta/Attribute.pm # once (800ns+0s) by Class::MOP::Method::Accessor::_generate_clearer_method at line 235 of Class/MOP/Method/Accessor.pm # spent 22µs (12+10) within Moose::Meta::Role::Application::ToClass::meta which was called 3 times, avg 7µs/call: # once (6µs+5µs) by Moose::BEGIN@36 at line 14 of Moose/Meta/Role/Application/ToClass.pm # once (3µs+3µs) by Moose::BEGIN@36 at line 19 of Moose/Meta/Role/Application/ToClass.pm # once (3µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 4µs within Class::MOP::Method::associated_metaclass which was called 6 times, avg 650ns/call: # 2 times (1µs+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 28 of Class/MOP/Method/Inlined.pm, avg 650ns/call # once (1µs+0s) by Class::MOP::Method::Constructor::_generate_constructor_method_inline at line 96 of Class/MOP/Method/Constructor.pm # once (600ns+0s) by Moose::Meta::Method::Destructor::_initialize_body at line 79 of Moose/Meta/Method/Destructor.pm # once (500ns+0s) by Class::MOP::Method::Constructor::_eval_environment at line 86 of Class/MOP/Method/Constructor.pm # once (300ns+0s) by Moose::Meta::Method::Destructor::_generate_DEMOLISHALL at line 116 of Moose/Meta/Method/Destructor.pm # spent 100µs within Class::MOP::Mixin::AttributeCore::has_predicate which was called 211 times, avg 476ns/call: # 211 times (100µs+0s) by Class::MOP::Attribute::install_accessors at line 458 of Class/MOP/Attribute.pm, avg 476ns/call # spent 2µs within Moose::Meta::TypeConstraint::_set_constraint which was called 2 times, avg 1µs/call: # 2 times (2µs+0s) by Moose::Meta::TypeConstraint::Parameterized::compile_type_constraint at line 56 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 1µs/call # spent 91µs within Moose::Meta::TypeConstraint::name which was called 111 times, avg 817ns/call: # 50 times (53µs+0s) by Moose::Meta::TypeConstraint::new at line 127 of Moose/Meta/TypeConstraint.pm, avg 1µs/call # 50 times (28µs+0s) by Moose::Meta::TypeConstraint::Registry::add_type_constraint at line 53 of Moose/Meta/TypeConstraint/Registry.pm, avg 568ns/call # 7 times (5µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_constraint_for at line 33 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 686ns/call # 4 times (4µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::parameterize at line 89 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 1µs/call # spent 25µs (15+10) within Moose::Meta::Role::Application::meta which was called 3 times, avg 8µs/call: # once (10µs+5µs) by Moose::BEGIN@34 at line 17 of Moose/Meta/Role/Application.pm # once (2µs+3µs) by Moose::BEGIN@34 at line 24 of Moose/Meta/Role/Application.pm # once (3µs+2µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm # spent 1.95ms (311µs+1.64) within Class::MOP::Object::meta which was called 119 times, avg 16µs/call: # 55 times (137µs+176µs) by Class::MOP::Class::_immutable_metaclass at line 1342 of Class/MOP/Class.pm, avg 6µs/call # 24 times (77µs+103µs) by Class::MOP::Method::Meta::wrap at line 56 of Class/MOP/Method/Meta.pm, avg 8µs/call # 14 times (27µs+33µs) by Moose::Exporter::BEGIN@8 at line 748 of Class/MOP.pm, avg 4µs/call # 9 times (19µs+976µs) by DBIx::MultiStatementDo::BEGIN@8 at line 244 of Moose.pm, avg 111µs/call # 5 times (18µs+25µs) by Moose::Meta::Attribute::new at line 58 of Moose/Meta/Attribute.pm, avg 8µs/call # 2 times (4µs+290µs) by DBIx::MultiStatementDo::BEGIN@8 at line 280 of Moose.pm, avg 147µs/call # 2 times (6µs+6µs) by Class::MOP::Class::_construct_class_instance at line 101 of Class/MOP/Class.pm, avg 6µs/call # once (4µs+3µs) by Moose::BEGIN@24 at line 29 of Moose/Meta/Class.pm # once (3µs+4µs) by Moose::Exporter::BEGIN@8 at line 733 of Class/MOP.pm # once (3µs+3µs) by Moose::Meta::TypeCoercion::BEGIN@8 at line 25 of Moose/Meta/Attribute.pm # once (2µs+3µs) by Moose::BEGIN@24 at line 35 of Moose/Meta/Class.pm # once (2µs+3µs) by Moose::BEGIN@24 at line 38 of Moose/Meta/Class.pm # once (2µs+3µs) by Moose::BEGIN@24 at line 46 of Moose/Meta/Class.pm # once (2µs+3µs) by Moose::BEGIN@24 at line 52 of Moose/Meta/Class.pm # once (2µs+2µs) by Moose::Exporter::BEGIN@8 at line 736 of Class/MOP.pm # spent 18µs (9+9) within Moose::Meta::TypeConstraint::Enum::meta which was called 2 times, avg 9µs/call: # once (7µs+5µs) by Moose::Util::TypeConstraints::BEGIN@30 at line 15 of Moose/Meta/TypeConstraint/Enum.pm # once (2µs+4µs) by Moose::Util::TypeConstraints::BEGIN@30 at line 20 of Moose/Meta/TypeConstraint/Enum.pm # spent 267µs within Class::MOP::Mixin::AttributeCore::has_initializer which was called 572 times, avg 466ns/call: # 271 times (132µs+0s) by Class::MOP::Class::_inline_init_attr_from_constructor at line 635 of Class/MOP/Class.pm, avg 486ns/call # 185 times (89µs+0s) by Class::MOP::Attribute::_set_initial_slot_value at line 162 of Class/MOP/Attribute.pm, avg 480ns/call # 99 times (38µs+0s) by Class::MOP::Class::_inline_init_attr_from_default at line 654 of Class/MOP/Class.pm, avg 382ns/call # 6 times (3µs+0s) by Moose::Meta::Attribute::_eval_environment at line 783 of Moose/Meta/Attribute.pm, avg 517ns/call # 4 times (2µs+0s) by Moose::Meta::Class::_inline_init_attr_from_constructor at line 407 of Moose/Meta/Class.pm, avg 475ns/call # 4 times (2µs+0s) by List::Util::any at line 535 of Moose/Meta/Class.pm, avg 375ns/call # 2 times (1µs+0s) by Moose::Meta::Class::_inline_init_attr_from_default at line 437 of Moose/Meta/Class.pm, avg 500ns/call # once (800ns+0s) by Moose::Meta::Attribute::_inline_init_slot at line 947 of Moose/Meta/Attribute.pm # spent 12µs (6+5) within Moose::Meta::TypeConstraint::Role::meta which was called: # once (6µs+5µs) by Moose::Util::TypeConstraints::BEGIN@29 at line 14 of Moose/Meta/TypeConstraint/Role.pm # spent 7µs within Moose::Meta::TypeConstraint::Parameterizable::has_constraint_generator which was called 7 times, avg 1µs/call: # 7 times (7µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_constraint_for at line 31 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 1µs/call # spent 765µs (39+726) within Moose::Util::TypeConstraints::import which was called: # once (39µs+726µs) by Moose::BEGIN@40 at line 40 of Moose.pm # spent 140µs within Class::MOP::Mixin::AttributeCore::has_reader which was called 213 times, avg 655ns/call: # 211 times (138µs+0s) by Class::MOP::Attribute::install_accessors at line 450 of Class/MOP/Attribute.pm, avg 656ns/call # 2 times (1µs+0s) by Class::MOP::Mixin::AttributeCore::has_read_method at line 24 of Class/MOP/Mixin/AttributeCore.pm, avg 550ns/call # spent 50µs within Moose::Meta::TypeConstraint::has_message which was called 58 times, avg 862ns/call: # 50 times (46µs+0s) by Moose::Meta::TypeConstraint::new at line 127 of Moose/Meta/TypeConstraint.pm, avg 924ns/call # 4 times (2µs+0s) by Moose::Meta::Attribute::_eval_environment at line 773 of Moose/Meta/Attribute.pm, avg 575ns/call # 4 times (2µs+0s) by Moose::Meta::Class::_eval_environment at line 528 of Moose/Meta/Class.pm, avg 375ns/call # spent 72µs within Moose::Meta::TypeConstraint::_inline_environment which was called 92 times, avg 783ns/call: # 92 times (72µs+0s) by Moose::Meta::TypeConstraint::inline_environment at line 205 of Moose/Meta/TypeConstraint.pm, avg 783ns/call # spent 20µs within Moose::Meta::TypeConstraint::Parameterized::parameterized_from which was called 40 times, avg 498ns/call: # 24 times (12µs+0s) by Moose::Meta::TypeConstraint::Parameterized::can_be_inlined at line 72 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 521ns/call # 9 times (3µs+0s) by Moose::Meta::TypeConstraint::Parameterized::_inline_check at line 95 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 378ns/call # 7 times (4µs+0s) by Moose::Meta::TypeConstraint::Parameterized::inline_environment at line 85 of Moose/Meta/TypeConstraint/Parameterized.pm, avg 571ns/call # spent 8µs within Moose::Meta::TypeConstraint::has_coercion which was called 13 times, avg 615ns/call: # 5 times (3µs+0s) by Moose::Meta::TypeConstraint::Parameterizable::generate_constraint_for at line 36 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 580ns/call # 4 times (4µs+0s) by Moose::Meta::Attribute::_eval_environment at line 770 of Moose/Meta/Attribute.pm, avg 925ns/call # 4 times (1µs+0s) by Moose::Meta::Class::_eval_environment at line 522 of Moose/Meta/Class.pm, avg 350ns/call
$self->_package_stash->add_symbol(@_);
# spent 2.99ms making 405 calls to Package::Stash::XS::add_symbol, avg 7µs/call # spent 258µs making 405 calls to Class::MOP::Package::_package_stash, avg 636ns/call # spent 121µs making 405 calls to Package::Stash::XS::name, avg 298ns/call # spent 117µs making 405 calls to Package::Stash::XS::namespace, avg 290ns/call
231}
232
233sub remove_package_glob {
234 my $self = shift;
235 $self->_package_stash->remove_glob(@_);
236}
237
238# ... these functions deal with stuff on the namespace level
239
240
# spent 136µs (62+75) within Class::MOP::Package::has_package_symbol which was called 21 times, avg 6µs/call: # 12 times (26µs+21µs) by Moose::Exporter::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Moose/Exporter.pm:140] at line 124 of Moose/Exporter.pm, avg 4µs/call # 5 times (20µs+12µs) by Moose::Meta::Attribute::_process_accessors at line 1048 of Moose/Meta/Attribute.pm, avg 6µs/call # 4 times (16µs+41µs) by Moose::Exporter::build_import_methods at line 89 of Moose/Exporter.pm, avg 14µs/call
sub has_package_symbol {
241214µs my $self = shift;
24221101µs6584µs $self->_package_stash->has_symbol(@_);
# spent 47µs making 21 calls to Package::Stash::XS::has_symbol, avg 2µs/call # spent 28µs making 21 calls to Class::MOP::Package::_package_stash, avg 1µs/call # spent 9µs making 21 calls to Package::Stash::XS::namespace, avg 433ns/call # spent 600ns making 2 calls to Package::Stash::XS::name, avg 300ns/call
243}
244
245
# spent 5.80ms (4.56+1.24) within Class::MOP::Package::get_package_symbol which was called 540 times, avg 11µs/call: # 540 times (4.56ms+1.24ms) by Class::MOP::Mixin::HasMethods::_get_maybe_raw_method at line 129 of Class/MOP/Mixin/HasMethods.pm, avg 11µs/call
sub get_package_symbol {
24654053µs my $self = shift;
2475405.44ms16201.37ms $self->_package_stash->get_symbol(@_);
# spent 1.03ms making 540 calls to Package::Stash::XS::get_symbol, avg 2µs/call # spent 211µs making 540 calls to Class::MOP::Package::_package_stash, avg 391ns/call # spent 126µs making 540 calls to Package::Stash::XS::namespace, avg 233ns/call
248}
249
250
# spent 1.35ms (272µs+1.08) within Class::MOP::Package::get_or_add_package_symbol which was called 79 times, avg 17µs/call: # 79 times (272µs+1.08ms) by Class::MOP::Class::superclasses at line 946 of Class/MOP/Class.pm, avg 17µs/call
sub get_or_add_package_symbol {
2517911µs my $self = shift;
25279694µs3061.30ms $self->_package_stash->get_or_add_symbol(@_);
# spent 620µs making 79 calls to Class::MOP::Package::_package_stash, avg 8µs/call # spent 457µs making 79 calls to Package::Stash::XS::get_or_add_symbol, avg 6µs/call # spent 205µs making 79 calls to Package::Stash::XS::namespace, avg 3µs/call # spent 17µs making 69 calls to Package::Stash::XS::name, avg 249ns/call
253}
254
255sub remove_package_symbol {
256 my $self = shift;
257 $self->_package_stash->remove_symbol(@_);
258}
259
260
# spent 41µs (18+23) within Class::MOP::Package::list_all_package_symbols which was called 4 times, avg 10µs/call: # 4 times (18µs+23µs) by Class::MOP::Mixin::HasMethods::_full_method_map at line 220 of Class/MOP/Mixin/HasMethods.pm, avg 10µs/call
sub list_all_package_symbols {
26141µs my $self = shift;
262437µs1224µs $self->_package_stash->list_all_symbols(@_);
# spent 21µs making 4 calls to Package::Stash::XS::list_all_symbols, avg 5µs/call # spent 2µs making 4 calls to Class::MOP::Package::_package_stash, avg 525ns/call # spent 1µs making 4 calls to Package::Stash::XS::namespace, avg 275ns/call
263}
264
265sub get_all_package_symbols {
266 my $self = shift;
267 $self->_package_stash->get_all_symbols(@_);
268}
269
27012µs1;
271
272# ABSTRACT: Package Meta Object
273
274__END__
 
# spent 429µs within Class::MOP::Attribute::associated_class which was called 1694 times, avg 253ns/call: # 405 times (107µs+0s) by Class::MOP::Attribute::_inline_instance_set at line 301 of Class/MOP/Attribute.pm, avg 265ns/call # 386 times (84µs+0s) by Class::MOP::Attribute::try {...} at line 407 of Class/MOP/Attribute.pm, avg 219ns/call # 263 times (66µs+0s) by Class::MOP::Attribute::_accessor_description at line 433 of Class/MOP/Attribute.pm, avg 249ns/call # 211 times (76µs+0s) by Class::MOP::Attribute::install_accessors at line 444 of Class/MOP/Attribute.pm, avg 359ns/call # 140 times (30µs+0s) by Class::MOP::Attribute::_process_accessors at line 390 of Class/MOP/Attribute.pm, avg 216ns/call # 94 times (22µs+0s) by Class::MOP::Attribute::_process_accessors at line 402 of Class/MOP/Attribute.pm, avg 233ns/call # 83 times (18µs+0s) by Class::MOP::Attribute::_inline_instance_get at line 324 of Class/MOP/Attribute.pm, avg 223ns/call # 54 times (11µs+0s) by Class::MOP::Method::Accessor::_generate_reader_method at line 133 of Class/MOP/Method/Accessor.pm, avg 204ns/call # 17 times (4µs+0s) by Class::MOP::Attribute::_inline_instance_has at line 345 of Class/MOP/Attribute.pm, avg 218ns/call # 11 times (3µs+0s) by Moose::Meta::Attribute::_process_accessors at line 1048 of Moose/Meta/Attribute.pm, avg 236ns/call # 6 times (2µs+0s) by Moose::Meta::Attribute::_eval_environment at line 780 of Moose/Meta/Attribute.pm, avg 367ns/call # 6 times (1µs+0s) by Moose::Meta::Attribute::_eval_environment at line 788 of Moose/Meta/Attribute.pm, avg 200ns/call # 6 times (1µs+0s) by Moose::Meta::Attribute::_process_accessors at line 1021 of Moose/Meta/Attribute.pm, avg 200ns/call # 5 times (2µs+0s) by Moose::Meta::Method::Accessor::_instance_is_inlinable at line 51 of Moose/Meta/Method/Accessor.pm, avg 300ns/call # 2 times (700ns+0s) by Moose::Meta::Attribute::install_delegation at line 1105 of Moose/Meta/Attribute.pm, avg 350ns/call # 2 times (600ns+0s) by Moose::Meta::Attribute::_make_delegation_method at line 1236 of Moose/Meta/Attribute.pm, avg 300ns/call # 2 times (400ns+0s) by Moose::Meta::Attribute::_inline_weaken_value at line 737 of Moose/Meta/Attribute.pm, avg 200ns/call # once (300ns+0s) by Moose::Meta::Attribute::install_delegation at line 1077 of Moose/Meta/Attribute.pm
sub Class::MOP::Attribute::associated_class; # xsub
# spent 2µs within Class::MOP::Attribute::associated_methods which was called 4 times, avg 450ns/call: # 4 times (2µs+0s) by Moose::Meta::Attribute::_check_associated_methods at line 1002 of Moose/Meta/Attribute.pm, avg 450ns/call
sub Class::MOP::Attribute::associated_methods; # xsub
# spent 47µs within Class::MOP::Class::constructor_class which was called 187 times, avg 253ns/call: # 54 times (13µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm, avg 243ns/call # 48 times (16µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm, avg 335ns/call # 48 times (10µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm, avg 215ns/call # 37 times (8µs+0s) by List::Util::all at line 208 of Class/MOP/Class.pm, avg 214ns/call
sub Class::MOP::Class::constructor_class; # xsub
# spent 21µs within Class::MOP::Class::constructor_name which was called 55 times, avg 380ns/call: # 55 times (21µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm, avg 380ns/call
sub Class::MOP::Class::constructor_name; # xsub
# spent 46µs within Class::MOP::Class::destructor_class which was called 187 times, avg 248ns/call: # 54 times (15µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm, avg 278ns/call # 48 times (14µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm, avg 290ns/call # 48 times (10µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm, avg 200ns/call # 37 times (8µs+0s) by List::Util::all at line 208 of Class/MOP/Class.pm, avg 211ns/call
sub Class::MOP::Class::destructor_class; # xsub
# spent 44µs within Class::MOP::Class::immutable_trait which was called 108 times, avg 406ns/call: # 54 times (28µs+0s) by Class::MOP::Class::_immutable_options at line 1278 of Class/MOP/Class.pm, avg 515ns/call # 54 times (16µs+0s) by Class::MOP::Class::_immutable_metaclass at line 1337 of Class/MOP/Class.pm, avg 298ns/call
sub Class::MOP::Class::immutable_trait; # xsub
# spent 71µs within Class::MOP::Class::instance_metaclass which was called 291 times, avg 245ns/call: # 94 times (22µs+0s) by Class::MOP::Attribute::_process_accessors at line 402 of Class/MOP/Attribute.pm, avg 229ns/call # 52 times (16µs+0s) by Class::MOP::Class::_create_meta_instance at line 727 of Class/MOP/Class.pm, avg 304ns/call # 49 times (15µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm, avg 298ns/call # 49 times (9µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm, avg 182ns/call # 37 times (7µs+0s) by List::Util::all at line 208 of Class/MOP/Class.pm, avg 200ns/call # 5 times (2µs+0s) by Moose::Meta::Method::Accessor::_instance_is_inlinable at line 51 of Moose/Meta/Method/Accessor.pm, avg 480ns/call # 2 times (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 286 of Class/MOP/Class.pm, avg 100ns/call # once (200ns+0s) by Class::MOP::Class::_check_metaclass_compatibility at line 218 of Class/MOP/Class.pm # once (100ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 281 of Class/MOP/Class.pm # once (100ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 284 of Class/MOP/Class.pm
sub Class::MOP::Class::instance_metaclass; # xsub
# spent 3µs within Class::MOP::Instance::associated_metaclass which was called 6 times, avg 517ns/call: # 6 times (3µs+0s) by Class::MOP::Instance::_class_name at line 70 of Class/MOP/Instance.pm, avg 517ns/call
sub Class::MOP::Instance::associated_metaclass; # xsub
# spent 38µs within Class::MOP::Method::Generated::definition_context which was called 131 times, avg 289ns/call: # 131 times (38µs+0s) by Class::MOP::Method::Generated::_generate_description at line 23 of Class/MOP/Method/Generated.pm, avg 289ns/call
sub Class::MOP::Method::Generated::definition_context; # xsub
# spent 76µs within Class::MOP::Method::Generated::is_inline which was called 223 times, avg 340ns/call: # 193 times (67µs+0s) by Class::MOP::Method::Accessor::_initialize_body at line 84 of Class/MOP/Method/Accessor.pm, avg 346ns/call # 30 times (9µs+0s) by Class::MOP::Method::Constructor::_initialize_body at line 79 of Class/MOP/Method/Constructor.pm, avg 307ns/call
sub Class::MOP::Method::Generated::is_inline; # xsub
# spent 12µs within Class::MOP::Method::Inlined::_expected_method_class which was called 32 times, avg 391ns/call: # 32 times (12µs+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 47 of Class/MOP/Method/Inlined.pm, avg 391ns/call
sub Class::MOP::Method::Inlined::_expected_method_class; # xsub
# spent 153µs within Class::MOP::Method::body which was called 543 times, avg 281ns/call: # 378 times (113µs+0s) by Class::MOP::Mixin::HasMethods::add_method at line 55 of Class/MOP/Mixin/HasMethods.pm, avg 299ns/call # 86 times (18µs+0s) by Class::MOP::Method::Wrapped::wrap at line 76 of Class/MOP/Method/Wrapped.pm, avg 208ns/call # 43 times (13µs+0s) by Class::MOP::MiniTrait::apply at line 21 of Class/MOP/MiniTrait.pm, avg 305ns/call # 23 times (4µs+0s) by Class::MOP::Mixin::HasMethods::_method_map at line 71 of Class/MOP/Mixin/HasMethods.pm, avg 187ns/call # 7 times (3µs+0s) by Class::MOP::Mixin::HasMethods::_method_map at line 126 of Class/MOP/Mixin/HasMethods.pm, avg 429ns/call # 5 times (1µs+0s) by Class::MOP::Mixin::HasMethods::_method_map at line 83 of Class/MOP/Class/Immutable/Trait.pm, avg 260ns/call # once (200ns+0s) by Moose::Meta::Class::_inline_BUILDARGS at line 327 of Moose/Meta/Class.pm
sub Class::MOP::Method::body; # xsub
# spent 57µs within Class::MOP::Method::name which was called 196 times, avg 291ns/call: # 100 times (24µs+0s) by Class::MOP::Class::get_all_methods at line 1146 of Class/MOP/Class.pm, avg 235ns/call # 58 times (21µs+0s) by Class::MOP::MiniTrait::apply at line 18 of Class/MOP/MiniTrait.pm, avg 360ns/call # 32 times (11µs+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 34 of Class/MOP/Method/Inlined.pm, avg 334ns/call # 2 times (1µs+0s) by Moose::Meta::Method::Delegation::_initialize_body at line 80 of Moose/Meta/Method/Delegation.pm, avg 500ns/call # 2 times (400ns+0s) by Moose::Meta::Attribute::install_delegation at line 1105 of Moose/Meta/Attribute.pm, avg 200ns/call # once (300ns+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 52 of Class/MOP/Method/Inlined.pm # once (200ns+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 64 of Class/MOP/Method/Inlined.pm
sub Class::MOP::Method::name; # xsub
# spent 107µs within Class::MOP::Method::package_name which was called 478 times, avg 224ns/call: # 378 times (93µs+0s) by Class::MOP::Mixin::HasMethods::add_method at line 56 of Class/MOP/Mixin/HasMethods.pm, avg 246ns/call # 100 times (14µs+0s) by Class::MOP::MiniTrait::apply at line 17 of Class/MOP/MiniTrait.pm, avg 143ns/call
sub Class::MOP::Method::package_name; # xsub
# spent 19µs within Class::MOP::Mixin::AttributeCore::accessor which was called 49 times, avg 396ns/call: # 47 times (19µs+0s) by Class::MOP::Attribute::install_accessors at line 446 of Class/MOP/Attribute.pm, avg 402ns/call # 2 times (500ns+0s) by Class::MOP::Attribute::get_read_method at line 186 of Class/MOP/Attribute.pm, avg 250ns/call
sub Class::MOP::Mixin::AttributeCore::accessor; # xsub
# spent 300ns within Class::MOP::Mixin::AttributeCore::clearer which was called: # once (300ns+0s) by Class::MOP::Attribute::install_accessors at line 462 of Class/MOP/Attribute.pm
sub Class::MOP::Mixin::AttributeCore::clearer; # xsub
# spent 93µs within Class::MOP::Mixin::AttributeCore::definition_context which was called 263 times, avg 353ns/call: # 263 times (93µs+0s) by Class::MOP::Attribute::_process_accessors at line 377 of Class/MOP/Attribute.pm, avg 353ns/call
sub Class::MOP::Mixin::AttributeCore::definition_context; # xsub
# spent 154µs within Class::MOP::Mixin::AttributeCore::init_arg which was called 707 times, avg 218ns/call: # 286 times (82µs+0s) by Class::MOP::Class::_inline_slot_initializer at line 600 of Class/MOP/Class.pm, avg 288ns/call # 271 times (29µs+0s) by Class::MOP::Class::_inline_init_attr_from_constructor at line 631 of Class/MOP/Class.pm, avg 108ns/call # 140 times (40µs+0s) by Moose::Meta::Attribute::new at line 58 of Moose/Meta/Attribute.pm, avg 288ns/call # 4 times (900ns+0s) by Moose::Meta::Class::_inline_check_required_attr at line 375 of Moose/Meta/Class.pm, avg 225ns/call # 4 times (600ns+0s) by Moose::Meta::Class::_inline_init_attr_from_constructor at line 398 of Moose/Meta/Class.pm, avg 150ns/call # once (300ns+0s) by Moose::Meta::Class::_inline_triggers at line 465 of Moose/Meta/Class.pm # once (200ns+0s) by Moose::Meta::Class::_inline_check_required_attr at line 380 of Moose/Meta/Class.pm
sub Class::MOP::Mixin::AttributeCore::init_arg; # xsub
# spent 760µs within Class::MOP::Mixin::AttributeCore::name which was called 4739 times, avg 160ns/call: # 1506 times (174µs+0s) by Class::MOP::Class::CORE:sort at line 709 of Class/MOP/Class.pm, avg 116ns/call # 1488 times (172µs+0s) by Class::MOP::Class::CORE:sort at line 593 of Class/MOP/Class.pm, avg 115ns/call # 426 times (102µs+0s) by Class::MOP::Attribute::slots at line 246 of Class/MOP/Attribute.pm, avg 239ns/call # 405 times (96µs+0s) by Class::MOP::Attribute::_inline_instance_set at line 302 of Class/MOP/Attribute.pm, avg 238ns/call # 375 times (81µs+0s) by Class::MOP::Attribute::_accessor_description at line 434 of Class/MOP/Attribute.pm, avg 215ns/call # 185 times (47µs+0s) by Class::MOP::Attribute::_set_initial_slot_value at line 160 of Class/MOP/Attribute.pm, avg 256ns/call # 135 times (43µs+0s) by Class::MOP::Mixin::HasAttributes::add_attribute at line 24 of Class/MOP/Mixin/HasAttributes.pm, avg 321ns/call # 83 times (17µs+0s) by Class::MOP::Attribute::_inline_instance_get at line 325 of Class/MOP/Attribute.pm, avg 202ns/call # 56 times (11µs+0s) by Class::MOP::Method::Accessor::_generate_reader_method_inline at line 148 of Class/MOP/Method/Accessor.pm, avg 204ns/call # 17 times (4µs+0s) by Class::MOP::Attribute::_inline_instance_has at line 346 of Class/MOP/Attribute.pm, avg 218ns/call # 12 times (3µs+0s) by Class::MOP::Attribute::has_value at line 333 of Class/MOP/Attribute.pm, avg 242ns/call # 12 times (3µs+0s) by Class::MOP::Attribute::get_raw_value at line 312 of Class/MOP/Attribute.pm, avg 225ns/call # 11 times (2µs+0s) by Moose::Meta::Attribute::_inline_check_constraint at line 684 of Moose/Meta/Attribute.pm, avg 218ns/call # 10 times (1µs+0s) by Moose::Meta::Class::CORE:sort at line 459 of Moose/Meta/Class.pm, avg 140ns/call # 8 times (1µs+0s) by Moose::Meta::Class::CORE:sort at line 497 of Moose/Meta/Class.pm, avg 150ns/call # 4 times (900ns+0s) by Moose::Meta::Class::_inline_slot_initializer at line 365 of Moose/Meta/Class.pm, avg 225ns/call # 2 times (400ns+0s) by Moose::Meta::Attribute::_inline_weaken_value at line 739 of Moose/Meta/Attribute.pm, avg 200ns/call # 2 times (300ns+0s) by Moose::Meta::Attribute::_process_accessors at line 1023 of Moose/Meta/Attribute.pm, avg 150ns/call # once (300ns+0s) by Moose::Meta::Attribute::_inline_check_required at line 631 of Moose/Meta/Attribute.pm # once (200ns+0s) by Moose::Meta::Class::_inline_check_required_attr at line 380 of Moose/Meta/Class.pm
sub Class::MOP::Mixin::AttributeCore::name; # xsub
# spent 14µs within Class::MOP::Mixin::AttributeCore::predicate which was called 45 times, avg 313ns/call: # 45 times (14µs+0s) by Class::MOP::Attribute::install_accessors at line 458 of Class/MOP/Attribute.pm, avg 313ns/call
sub Class::MOP::Mixin::AttributeCore::predicate; # xsub
# spent 49µs within Class::MOP::Mixin::AttributeCore::reader which was called 164 times, avg 300ns/call: # 162 times (49µs+0s) by Class::MOP::Attribute::install_accessors at line 450 of Class/MOP/Attribute.pm, avg 301ns/call # 2 times (500ns+0s) by Class::MOP::Attribute::get_read_method at line 186 of Class/MOP/Attribute.pm, avg 250ns/call
sub Class::MOP::Mixin::AttributeCore::reader; # xsub
# spent 4µs within Class::MOP::Mixin::AttributeCore::writer which was called 8 times, avg 450ns/call: # 8 times (4µs+0s) by Class::MOP::Attribute::install_accessors at line 454 of Class/MOP/Attribute.pm, avg 450ns/call
sub Class::MOP::Mixin::AttributeCore::writer; # xsub
# spent 271µs within Class::MOP::Mixin::HasAttributes::_attribute_map which was called 1181 times, avg 229ns/call: # 557 times (138µs+0s) by Class::MOP::Class::get_all_attributes at line 936 of Class/MOP/Class.pm, avg 247ns/call # 190 times (54µs+0s) by Class::MOP::Mixin::HasAttributes::has_attribute at line 51 of Class/MOP/Mixin/HasAttributes.pm, avg 285ns/call # 135 times (25µs+0s) by Class::MOP::Mixin::HasAttributes::add_attribute at line 29 of Class/MOP/Mixin/HasAttributes.pm, avg 182ns/call # 135 times (17µs+0s) by Class::MOP::Mixin::HasAttributes::add_attribute at line 32 of Class/MOP/Mixin/HasAttributes.pm, avg 125ns/call # 131 times (27µs+0s) by Class::MOP::Mixin::HasAttributes::get_attribute at line 60 of Class/MOP/Mixin/HasAttributes.pm, avg 207ns/call # 33 times (10µs+0s) by Class::MOP::Mixin::HasAttributes::get_attribute_list at line 79 of Class/MOP/Mixin/HasAttributes.pm, avg 312ns/call
sub Class::MOP::Mixin::HasAttributes::_attribute_map; # xsub
# spent 72µs within Class::MOP::Mixin::HasAttributes::attribute_metaclass which was called 218 times, avg 332ns/call: # 74 times (31µs+0s) by Class::MOP::Mixin::HasAttributes::add_attribute at line 14 of Class/MOP/Mixin/HasAttributes.pm, avg 415ns/call # 49 times (17µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm, avg 345ns/call # 49 times (13µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm, avg 269ns/call # 37 times (8µs+0s) by List::Util::all at line 208 of Class/MOP/Class.pm, avg 222ns/call # 4 times (2µs+0s) by Moose::Meta::Class::_process_new_attribute at line 712 of Moose/Meta/Class.pm, avg 600ns/call # 2 times (300ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 286 of Class/MOP/Class.pm, avg 150ns/call # once (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 284 of Class/MOP/Class.pm # once (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 281 of Class/MOP/Class.pm # once (200ns+0s) by Class::MOP::Class::_check_metaclass_compatibility at line 218 of Class/MOP/Class.pm
sub Class::MOP::Mixin::HasAttributes::attribute_metaclass; # xsub
# spent 1.09ms (1.08+9µs) within Class::MOP::Mixin::HasMethods::_method_map which was called 886 times, avg 1µs/call: # 401 times (616µs+4µs) by Class::MOP::Mixin::HasMethods::add_method at line 71 of Class/MOP/Mixin/HasMethods.pm, avg 2µs/call # 396 times (386µs+3µs) by Class::MOP::Mixin::HasMethods::_get_maybe_raw_method at line 126 of Class/MOP/Mixin/HasMethods.pm, avg 984ns/call # 54 times (24µs+0s) by Class::MOP::Mixin::HasMethods::get_method at line 116 of Class/MOP/Mixin/HasMethods.pm, avg 446ns/call # 19 times (46µs+1µs) by Class::MOP::Class:::around at line 83 of Class/MOP/Class/Immutable/Trait.pm, avg 2µs/call # 15 times (12µs+0s) by Class::MOP::Mixin::HasMethods::_full_method_map at line 224 of Class/MOP/Mixin/HasMethods.pm, avg 800ns/call # once (200ns+0s) by Class::MOP::Mixin::HasMethods::has_method at line 102 of Class/MOP/Mixin/HasMethods.pm
sub Class::MOP::Mixin::HasMethods::_method_map; # xsub
# spent 55µs within Class::MOP::Mixin::HasMethods::method_metaclass which was called 207 times, avg 264ns/call: # 67 times (23µs+0s) by Class::MOP::Mixin::HasMethods::wrap_method_body at line 40 of Class/MOP/Mixin/HasMethods.pm, avg 342ns/call # 49 times (14µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm, avg 284ns/call # 49 times (9µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm, avg 188ns/call # 37 times (8µs+0s) by List::Util::all at line 208 of Class/MOP/Class.pm, avg 216ns/call # 2 times (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 286 of Class/MOP/Class.pm, avg 100ns/call # once (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 281 of Class/MOP/Class.pm # once (200ns+0s) by Class::MOP::Class::_check_metaclass_compatibility at line 218 of Class/MOP/Class.pm # once (100ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 284 of Class/MOP/Class.pm
sub Class::MOP::Mixin::HasMethods::method_metaclass; # xsub
# spent 64µs within Class::MOP::Mixin::HasMethods::wrapped_method_metaclass which was called 183 times, avg 352ns/call: # 49 times (22µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 346 of Class/MOP/Class.pm, avg 439ns/call # 49 times (18µs+0s) by Class::MOP::Class::_single_metaclass_can_be_made_compatible at line 343 of Class/MOP/Class.pm, avg 365ns/call # 43 times (16µs+0s) by Class::MOP::Class::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Class/MOP/Class.pm:1082] at line 1053 of Class/MOP/Class.pm, avg 360ns/call # 37 times (9µs+0s) by List::Util::all at line 208 of Class/MOP/Class.pm, avg 235ns/call # 2 times (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 286 of Class/MOP/Class.pm, avg 100ns/call # once (300ns+0s) by Class::MOP::Class::_check_metaclass_compatibility at line 218 of Class/MOP/Class.pm # once (200ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 281 of Class/MOP/Class.pm # once (100ns+0s) by Class::MOP::Class::_single_metaclass_is_compatible at line 284 of Class/MOP/Class.pm
sub Class::MOP::Mixin::HasMethods::wrapped_method_metaclass; # xsub
# spent 604µs within Class::MOP::Package::name which was called 2215 times, avg 273ns/call: # 401 times (127µs+0s) by Class::MOP::Mixin::HasMethods::add_method at line 51 of Class/MOP/Mixin/HasMethods.pm, avg 318ns/call # 401 times (92µs+0s) by Class::MOP::Mixin::HasMethods::update_package_cache_flag at line 209 of Class/MOP/Mixin/HasMethods.pm, avg 230ns/call # 309 times (82µs+0s) by Class::MOP::Class::linearized_isa at line 1007 of Class/MOP/Class.pm, avg 265ns/call # 263 times (76µs+0s) by Class::MOP::Attribute::_accessor_description at line 433 of Class/MOP/Attribute.pm, avg 287ns/call # 193 times (39µs+0s) by Class::MOP::Attribute::try {...} at line 407 of Class/MOP/Attribute.pm, avg 202ns/call # 106 times (25µs+0s) by Class::MOP::Mixin::HasMethods::_code_is_mine at line 89 of Class/MOP/Mixin/HasMethods.pm, avg 234ns/call # 71 times (35µs+0s) by Class::MOP::Package::_package_stash at line 218, avg 487ns/call # 70 times (15µs+0s) by Class::MOP::Attribute::_process_accessors at line 390 of Class/MOP/Attribute.pm, avg 211ns/call # 67 times (13µs+0s) by Class::MOP::Mixin::HasMethods::wrap_method_body at line 40 of Class/MOP/Mixin/HasMethods.pm, avg 196ns/call # 62 times (16µs+0s) by Class::MOP::Class::_inline_constructor at line 1464 of Class/MOP/Class.pm, avg 250ns/call # 43 times (10µs+0s) by Class::MOP::Class::__ANON__[/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/x86_64-linux/Class/MOP/Class.pm:1082] at line 1068 of Class/MOP/Class.pm, avg 233ns/call # 35 times (9µs+0s) by Class::MOP::Class::_construct_instance at line 528 of Class/MOP/Class.pm, avg 251ns/call # 33 times (14µs+0s) by Class::MOP::Class::new_object at line 494 of Class/MOP/Class.pm, avg 412ns/call # 32 times (18µs+0s) by Class::MOP::Method::Inlined::can_be_inlined at line 29 of Class/MOP/Method/Inlined.pm, avg 575ns/call # 31 times (11µs+0s) by Class::MOP::Class::_inline_preserve_weak_metaclasses at line 692 of Class/MOP/Class.pm, avg 358ns/call # 31 times (7µs+0s) by Class::MOP::Class::_inline_fallback_constructor at line 554 of Class/MOP/Class.pm, avg 223ns/call # 25 times (6µs+0s) by Class::MOP::Mixin::HasMethods::_add_meta_method at line 24 of Class/MOP/Mixin/HasMethods.pm, avg 232ns/call # 15 times (4µs+0s) by Class::MOP::Mixin::HasMethods::_full_method_map at line 215 of Class/MOP/Mixin/HasMethods.pm, avg 247ns/call # 6 times (2µs+0s) by Moose::Meta::Attribute::_eval_environment at line 780 of Moose/Meta/Attribute.pm, avg 317ns/call # 6 times (2µs+0s) by Class::MOP::Instance::_class_name at line 70 of Class/MOP/Instance.pm, avg 283ns/call # 3 times (1µs+0s) by Class::MOP::Class::superclasses at line 956 of Class/MOP/Class.pm, avg 333ns/call # 2 times (600ns+0s) by Class::MOP::Package::create at line 68, avg 300ns/call # 2 times (400ns+0s) by Class::MOP::Class::_inline_destructor at line 1506 of Class/MOP/Class.pm, avg 200ns/call # 2 times (400ns+0s) by Moose::Meta::Attribute::_make_delegation_method at line 1236 of Moose/Meta/Attribute.pm, avg 200ns/call # 2 times (400ns+0s) by Class::MOP::Module::_instantiate_module at line 79 of Class/MOP/Module.pm, avg 200ns/call # once (300ns+0s) by Moose::Meta::Class::_eval_environment at line 542 of Moose/Meta/Class.pm # once (200ns+0s) by Moose::init_meta at line 204 of Moose.pm # once (200ns+0s) by Moose::Meta::Attribute::install_delegation at line 1078 of Moose/Meta/Attribute.pm # once (100ns+0s) by Moose::Meta::Method::Destructor::_initialize_body at line 79 of Moose/Meta/Method/Destructor.pm
sub Class::MOP::Package::name; # xsub