---
name: "Mouse::Object"
section: "3pm"
platform: "linux"
package: "perl-mouse"
version: "2.6.2-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Mouse::Object"
---

# Mouse::Object(3pm)

The base object for Mouse classes

## NAME

Mouse::Object - The base object for Mouse classes

## VERSION

This document describes Mouse version v2.6.2

## METHODS

### "$class-\>new(%args \| \\%args) -\> Object"

Instantiates a new `"Mouse::Object"`. This is obviously intended for subclasses.

### "$class-\>BUILDARGS(@args) -\> HashRef"

Lets you override the arguments that `"new"` takes. It must return a HashRef of parameters.

### "$object-\>BUILDALL(\\%args)"

Calls `"BUILD"` on each class in the class hierarchy. This is called at the end of `"new"`.

### "$object-\>BUILD(\\%args)"

You may put any business logic initialization in BUILD methods. You don't need to redispatch or return any specific value.

### "$object-\>DEMOLISHALL"

Calls `"DEMOLISH"` on each class in the class hierarchy. This is called at `"DESTROY"` time.

### "$object-\>DEMOLISH"

You may put any business logic deinitialization in DEMOLISH methods. You don't need to redispatch or return any specific value.

### "$object-\>does($role\_name) -\> Bool"

This will check if the invocant's class **does** a given `$role_name`. This is similar to `"isa"` for object, but it checks the roles instead.

### "$object-\>dump($maxdepth) -\> Str"

This is a handy utility for dumping an object with Data::Dumper. By default, the maximum depth is 3, to avoid making a mess.

### "$object-\>meta() -\> MetaClass"

This is a method which provides access to the object's metaclass.

## SEE ALSO

Moose::Object
