Search documentation of ash

# View Source Ash.Extension behaviour (ash v3.4.30)

A behavior of additional callbacks that extensions can implement, specific to Ash.

It is not necessary to adopt this behavior, but it is recommended to do so if you want to define these functions on your extension. These functions are invoked when their relevant Mix task is run.

# Summary

## Types

argv()
igniter()

## Callbacks

codegen(argv)
install(igniter, module, type, location, argv)
migrate(argv)
reset(argv)
rollback(argv)
setup argv
tear_down(argv)

# Types

Link to this type

# argv()

View Source

    @type argv() :: [String.t()]

Link to this type

# igniter()

View Source

    @type igniter() :: Igniter.t()

# Callbacks

Link to this callback

# codegen(argv)

View Source (optional)

    @callback codegen(argv()) :: term()

Link to this callback

# install(igniter, module, type, location, argv)

View Source (optional)

    @callback install(
      igniter(),
      module :: module(),
      type :: Ash.Resource.t() | Ash.Domain.t(),
      location :: String.t(),
      argv()
    ) :: igniter()

Link to this callback

# migrate(argv)

View Source (optional)

    @callback migrate(argv()) :: term()

Link to this callback

# reset(argv)

View Source (optional)

    @callback reset(argv()) :: term()

Link to this callback

# rollback(argv)

View Source (optional)

    @callback rollback(argv()) :: term()

Link to this callback

# setup argv

View Source (optional)

    @callback setup(argv()) :: term()

Link to this callback

# tear_down(argv)

View Source (optional)

    @callback tear_down(argv()) :: term()