> For the complete documentation index, see [llms.txt](https://docs.r.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.r.xyz/glider-ide/api/contract/contract.constructor.md).

# Contract.constructor()

`constructor() →` [`Function`](/glider-ide/api/function.md) `| NoneObject`

## Example query

```python
from glider import *

def query():
  constructors = (
    Contracts()
    .exec(8)
    .constructor()
    .filter(lambda x: not isinstance(x, NoneObject))
  )

  return constructors
```

Starting with Glider 1.0, you can use functions from [`Contracts`](/glider-ide/api/contracts.md), [`Functions`](/glider-ide/api/functions.md), and [`Instructions`](/glider-ide/api/instructions.md) on [`APIList`](/glider-ide/api/iterables/apilist.md)`[`[`Contract`](/glider-ide/api/contract.md)`]`, [`APIList`](/glider-ide/api/iterables/apilist.md)`[`[`Function`](/glider-ide/api/function.md)`]`, and [`APIList`](/glider-ide/api/iterables/apilist.md)`[`[`Instruction`](/glider-ide/api/instruction.md)`]`. More details are available on the [Glider and Declarative Query Writing](/glider-ide/glider-and-declarative-query-writing.md) page.

Additionally, the filter function is used to ignore [`NoneObject`](/glider-ide/api/internal/noneobject.md). This occurs because not all contracts have a constructor, which may result in [`NoneObject`](/glider-ide/api/internal/noneobject.md) being returned

## Example output

<figure><img src="/files/RJlCPYOYZFMUjiBw5iwx" alt=""><figcaption></figcaption></figure>
