Skema.Transformer (Skema v1.5.0)

Copy Markdown View Source

Handles data transformation logic for Skema schemas.

This module is responsible for transforming data according to schema transformation rules. It supports field renaming, value transformation, and computation of derived values.

Summary

Functions

Processes transformation for a single field.

Processes transformation for all fields in a schema.

Functions

process_field(result, arg)

@spec process_field(
  %Skema.Result{
    errors: term(),
    params: term(),
    schema: term(),
    valid?: term(),
    valid_data: term()
  },
  {atom(), list()}
) :: %Skema.Result{
  errors: term(),
  params: term(),
  schema: term(),
  valid?: term(),
  valid_data: term()
}

Processes transformation for a single field.

process_transformation(result)

@spec process_transformation(%Skema.Result{
  errors: term(),
  params: term(),
  schema: term(),
  valid?: term(),
  valid_data: term()
}) ::
  {:ok, map()}
  | {:error,
     %Skema.Result{
       errors: term(),
       params: term(),
       schema: term(),
       valid?: term(),
       valid_data: term()
     }}

Processes transformation for all fields in a schema.

Returns {:ok, data} if transformation succeeds, {:error, result} otherwise.