gleam-spacetraders-models/src/spacetraders_models/ship_cargo_item.gleam
Lily Rose fab4c9df5d
Some checks are pending
test / test (push) Waiting to run
Initial commit
2025-07-08 23:03:42 +10:00

19 lines
579 B
Gleam

import gleam/dynamic/decode.{type Decoder}
import spacetraders_models/trade_symbol.{type TradeSymbol}
pub type ShipCargoItem {
ShipCargoItem(
symbol: TradeSymbol,
name: String,
description: String,
units: Int,
)
}
pub fn decoder() -> Decoder(ShipCargoItem) {
use symbol <- decode.field("symbol", trade_symbol.decoder())
use name <- decode.field("name", decode.string)
use description <- decode.field("description", decode.string)
use units <- decode.field("units", decode.int)
decode.success(ShipCargoItem(symbol:, name:, description:, units:))
}