---
name: "Devel::MAT::Context"
section: "3pm"
platform: "linux"
package: "libdevel-mat-perl"
version: "0.53-1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Devel::MAT::Context"
---

# Devel::MAT::Context(3pm)

represent a single call context state

## NAME

"Devel::MAT::Context" - represent a single call context state

## DESCRIPTION

Objects in this class represent a single level of state from the call context. These contexts represent function calls between perl functions.

## COMMON METHODS

### gimme

```
   $gimme = $ctx->gimme;
```

Returns the gimme value of the call context.

### file

### line

### location

```
   $file = $ctx->file;
   $line = $ctx->line;
   $location = $ctx->location;
```

Returns the file, line or location as (`"FILE line LINE"`).

## Devel::MAT::Context::SUB

Represents a context which is a subroutine call.

### cv

```
   $cv = $ctx->cv;
```

Returns the CV which this call is to.

### args

```
   $args = $ctx->args;
```

Returns the arguments AV which represents the `@_` argument array.

### olddepth

```
   $olddepth = $ctx->olddepth;
```

Returns the old depth of the context (that is, the depth the CV would be at after this context returns).

### depth

```
   $depth = $ctx->depth;
```

Returns the actual depth of the context. This is inferred at load time by considering the `"olddepth"` of the next inner-nested call to the same CV, or from the actual `"depth"` of the CV is no other call exists.

## Devel::MAT::Context::TRY

Represents a context which is a block `"eval {}"` call.

## Devel::MAT::Context::EVAL

Represents a context which is a string `"eval EXPR"` call.

### code

```
   $sv = $ctx->code;
```

Returns the SV containing the text string being evaluated.

## AUTHOR

Paul Evans \<leonerd@leonerd.org.uk\>
