Schemer.Result (schemer v0.1.0)

The result of the resolution.

example

Example

Schema

users
  .user_uuid

Result

%{
  "users" => %Schemer.Result{
    execution: %Schemer.Execution{
      node_key: "users",
      parent_value: %{},
      path: [
        # nodes
      ],
      status: :resolved,
      value: nil
    },
    fields: %{
      "user_uuid" => %Schemer.Result{
        execution: %Schemer.Execution{
          node_key: "1",
          parent_value: nil,
          path: [
            # nodes
          ],
          status: :resolved,
          value: %{name: "user-1", uuid: "1"}
        },
        fields: %{},
        node_name: "user_uuid"
      }
    },
    node_name: "users"
  }
}

Link to this section Summary

Functions

Wrap an execution with Result.

Link to this section Types

@type node_name() :: String.t()
@type t() :: %Schemer.Result{
  execution: Schemer.Execution.t(),
  fields: %{optional(node_name()) => t()},
  node_name: node_name()
}

Link to this section Functions

Link to this function

wrap(execution)

@spec wrap(Schemer.Execution.t()) :: t()

Wrap an execution with Result.