Mouse::Meta::Class - The Mouse class metaclass


NAME

Mouse::Meta::Class - The Mouse class metaclass


VERSION

This document describes Mouse version 0.65


METHODS

initialize(ClassName) -> Mouse::Meta::Class

Finds or creates a Mouse::Meta::Class instance for the given ClassName. Only one instance should exist for a given class.

name -> ClassName

Returns the name of the owner class.

superclasses -> ClassNames superclass(ClassNames)

Gets (or sets) the list of superclasses of the owner class.

add_method(name => CodeRef)

Adds a method to the owner class.

has_method(name) -> Bool

Returns whether we have a method with the given name.

get_method(name) -> Mouse::Meta::Method | undef

Returns a the Mouse::Meta::Method manpage with the given name.

Note that you can also use $metaclass->name->can($name) for a method body.

get_method_list -> Names

Returns a list of method names which are defined in the local class. If you want a list of all applicable methods for a class, use the get_all_methods method.

get_all_methods -> (Mouse::Meta::Method)

Return the list of all the Mouse::Meta::Method manpage instances associated with the class and its superclasses.

add_attribute(name => spec | Mouse::Meta::Attribute)

Begins keeping track of the existing the Mouse::Meta::Attribute manpage for the owner class.

has_attribute(Name) -> Bool

Returns whether we have a the Mouse::Meta::Attribute manpage with the given name.

get_attribute Name -> Mouse::Meta::Attribute | undef

Returns the the Mouse::Meta::Attribute manpage with the given name.

get_attribute_list -> Names

Returns a list of attribute names which are defined in the local class. If you want a list of all applicable attributes for a class, use the get_all_attributes method.

get_all_attributes -> (Mouse::Meta::Attribute)

Returns the list of all the Mouse::Meta::Attribute manpage instances associated with this class and its superclasses.

linearized_isa -> [ClassNames]

Returns the list of classes in method dispatch order, with duplicates removed.

new_object(Parameters) -> Instance

Creates a new instance.

clone_object(Instance, Parameters) -> Instance

Clones the given instance which must be an instance governed by this metaclass.

throw_error(Message, Parameters)

Throws an error with the given message.


SEE ALSO

the Mouse::Meta::Module manpage

the Moose::Meta::Class manpage

the Class::MOP::Class manpage

 Mouse::Meta::Class - The Mouse class metaclass