View Source Flint.Pipeline (Flint v0.2.0)

The core pipeline of Flint. Flint.Pipeline uses the module attributes that are collected when using the Flint.Schema macros to perform transformations and validations.

See the Pipeline section of the Flint documentation for more information.

Summary

Functions

Applies transformations to each field according to the :map options passed in the schema specification.

Applies transformations to each field according to the :derive options passed in the schema specification.

Applies validations to each field according to the options passed in the schema specification.

Given a Flint (or Ecto) schema and params (can be a map, struct of the given schema, or an existing changeset), applies all steps of the Flint.Pipeline to generate a new changeset.

Functions

Link to this function

apply_post_transforms(changeset, bindings \\ [])

View Source

Applies transformations to each field according to the :map options passed in the schema specification.

These transformations are applied after validations when used within the default Flint.Pipeline.changeset implementation.

Accepts optional bindings which are passed to evaluated code.

Link to this function

apply_pre_transforms(changeset, bindings \\ [])

View Source

Applies transformations to each field according to the :derive options passed in the schema specification.

These transformations are applied after casting, but before validations when used within the default Flint.Pipeline.changeset implementation.

Accepts optional bindings which are passed to evaluated code.

Link to this function

apply_validations(changeset, bindings \\ [])

View Source

Applies validations to each field according to the options passed in the schema specification.

See the Field Validations section of the README for more information on validation details.

Link to this function

changeset(schema, params \\ %{}, bindings \\ [])

View Source

Given a Flint (or Ecto) schema and params (can be a map, struct of the given schema, or an existing changeset), applies all steps of the Flint.Pipeline to generate a new changeset.

This function casts all fields (recursively casting all embeds using this same function), validates required fields (specified using the bang (!) macros exposed by Flint), applies pre-transformations, validations, and post-transformations, before outputting the resulting Ecto.Changeset.

See the Pipeline section of the README for more details.