# Generated by `mix github.gen` from docs/github-api/api.github.com.json. # Do not edit by hand; re-run the task instead. defmodule Noizu.Github.InstallationToken do @moduledoc false defstruct [ :expires_at, :has_multiple_single_files, :permissions, :repositories, :repository_selection, :single_file, :single_file_paths, :token ] def from_json(json, headers \\ []) def from_json(nil, _headers), do: nil def from_json(list, headers) when is_list(list) do Enum.map(list, &from_json(&1, headers)) end def from_json(json, _headers) when is_map(json) do %__MODULE__{ expires_at: Map.get(json, :expires_at), has_multiple_single_files: Map.get(json, :has_multiple_single_files), permissions: Noizu.Github.AppPermissions.from_json(Map.get(json, :permissions)), repositories: Enum.map(Map.get(json, :repositories) || [], &Noizu.Github.Repository.from_json(&1)), repository_selection: Map.get(json, :repository_selection), single_file: Map.get(json, :single_file), single_file_paths: Map.get(json, :single_file_paths), token: Map.get(json, :token) } end def from_json(other, _headers), do: other end