Mouse::Meta::Class(3p)

NAME
Mouse::Meta::Class - hook into the Mouse MOP

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.

  new %args -> Mouse::Meta::Class
Creates a new Mouse::Meta::Class. Don't call this directly.

  name -> ClassName
Returns the name of the owner class.

  superclasses -> [ClassName]
Gets (or sets) the list of superclasses of the owner class.

  add_attribute (Mouse::Meta::Attribute| name => spec)
Begins keeping track of the existing Mouse::Meta::Attribute for the owner class.

  get_all_attributes -> (Mouse::Meta::Attribute)
Returns the list of all Mouse::Meta::Attribute instances associated with this class and its superclasses.

  get_attribute_map -> { name => Mouse::Meta::Attribute }
Returns a mapping of attribute names to their corresponding Mouse::Meta::Attribute objects.

  get_attribute_list -> { name => Mouse::Meta::Attribute }
This 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.

  has_attribute Name -> Bool
Returns whether we have a Mouse::Meta::Attribute with the given name.

  get_attribute Name -> Mouse::Meta::Attribute | undef
Returns the Mouse::Meta::Attribute with the given name.

  linearized_isa -> [ClassNames]
Returns the list of classes in method dispatch order, with duplicates removed.

  clone_object Instance -> Instance
Clones the given "Instance" which must be an instance governed by this metaclass.

  clone_instance Instance, Parameters -> Instance
The clone_instance method has been made private. The public version is deprecated.