Duffel.Schema.Segment (Duffel v0.1.0)

Copy Markdown View Source

A single flight (one take-off and landing) within a slice.

origin, destination, marketing_carrier, operating_carrier and aircraft are kept as raw maps. stops and passengers (per-segment fare detail, a different shape to Duffel.Schema.Passenger) are raw maps too.

Summary

Functions

Decodes a raw segment map into a Duffel.Schema.Segment.

Types

t()

@type t() :: %Duffel.Schema.Segment{
  aircraft: map() | nil,
  arriving_at: String.t() | nil,
  departing_at: String.t() | nil,
  destination: map() | nil,
  destination_terminal: String.t() | nil,
  distance: String.t() | nil,
  duration: String.t() | nil,
  id: String.t() | nil,
  marketing_carrier: map() | nil,
  marketing_carrier_flight_number: String.t() | nil,
  operating_carrier: map() | nil,
  operating_carrier_flight_number: String.t() | nil,
  origin: map() | nil,
  origin_terminal: String.t() | nil,
  passengers: [map()],
  stops: [map()]
}

Functions

from_map(decoded)

@spec from_map(map() | t()) :: t()

Decodes a raw segment map into a Duffel.Schema.Segment.