Few fixes and improvements to the library, plus Github Actions setup (#31)
CI / Build and test (push) Canceled after 0s
Documentation / Build documentation (push) Canceled after 0s
Documentation / Deploy to GitHub Pages (push) Canceled after 0s

This PR contains the work done to fix a cancellation-mapping bug in `AmiiboLiveClient`, bring the client under offline test coverage, add the conformances SwiftUI and persistence need, and moves CI and documentation publishing to GitHub Actions. All public API changes are additive.

### Fix

- `AmiiboLiveClient` reported an early task cancellation as `.unknown("CancellationError()")`. The OpenAPI runtime wraps every error in `ClientError`, so the `CancellationError` check never matched; it now also checks the wrapped error and throws `.cancelled`.

### Tests

- `ThrowingTransport` and `StubTransport` test doubles let the live client run offline. New tests cover error mapping, HTTP status → error mapping, `oneOf` object-vs-list decoding, `"amiibo": null`, sorting, filter → query encoding, `Platform`/`Release` mapping, and the date transcoder.
- Models gained `package` memberwise initializers so tests can build real fixtures without `@testable`. These are not public API.
- The test target now depends on `OpenAPIRuntime` and `HTTPTypes` (both already in the dependency graph).

### API
- Models are `Codable` and `Identifiable` (`Amiibo.id` is its `identifier`; the key/name models use `key`).
- Filters are `Hashable`.

### Documentation
- Doc comments trimmed library-wide; one repeated `- Throws:` sentence appeared 24 times. `Library.md` and the README tightened to match.

### CI and docs publishing
- `ci.yml`: build and offline tests on PRs and pushes to `main`.
- `live-tests.yml`: weekly and on-demand run against the live API.
- `docs.yml`: builds DocC on PRs, deploys to GitHub Pages on `main`. Pinned to Xcode 26 because swift-docc-plugin 1.5.0 fails to launch its tools under Xcode 27.
- The generated `docs/` folder (327 files) is removed from the repository and ignored.

Reviewed-on: #31
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
This commit was merged in pull request #31.
This commit is contained in:
javier authored and Javier Cicchelli committed 2026-10-25 19:54:30 +00:00
1 parent 44bfaca553
commit 13b9c74a38
361 files changed
+1377 -845

No files matched your search

+57
View File
@@ -0,0 +1,57 @@
# ===----------------------------------------------------------------------===
#
# This source file is part of the Amiibo Service open source project
#
# Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
# Licensed under Apache license v2.0
#
# See LICENSE for license information
# See CONTRIBUTORS for the list of Amiibo Service project authors
#
# SPDX-License-Identifier: Apache-2.0
#
# ===----------------------------------------------------------------------===
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Build and test
runs-on: macos-latest
steps:
- name: Check out
uses: actions/checkout@v4
- name: Select Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: latest-stable
- name: Show toolchain
run: swift --version
- name: Cache build
uses: actions/cache@v4
with:
path: .build
key: spm-${{ runner.os }}-${{ hashFiles('Package.resolved') }}
restore-keys: spm-${{ runner.os }}-
- name: Build
run: make lib-build
- name: Test
run: make lib-test
+77
View File
@@ -0,0 +1,77 @@
# ===----------------------------------------------------------------------===
#
# This source file is part of the Amiibo Service open source project
#
# Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
# Licensed under Apache license v2.0
#
# See LICENSE for license information
# See CONTRIBUTORS for the list of Amiibo Service project authors
#
# SPDX-License-Identifier: Apache-2.0
#
# ===----------------------------------------------------------------------===
name: Documentation
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
permissions:
contents: read
concurrency:
group: docs-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: Build documentation
runs-on: macos-latest
steps:
- name: Check out
uses: actions/checkout@v4
# Pinned: swift-docc-plugin 1.5.0 fails to launch its tools under Xcode 27 ("Bad CPU type in executable").
- name: Select Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '26'
- name: Show toolchain
run: swift --version
- name: Cache build
uses: actions/cache@v4
with:
path: .build
key: spm-${{ runner.os }}-${{ hashFiles('Package.resolved') }}
restore-keys: spm-${{ runner.os }}-
- name: Generate
run: make doc-generate-github
- name: Upload
uses: actions/upload-pages-artifact@v3
with:
path: docs
deploy:
name: Deploy to GitHub Pages
if: github.event_name != 'pull_request'
needs: build
runs-on: ubuntu-latest
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deploy.outputs.page_url }}
steps:
- name: Deploy
id: deploy
uses: actions/deploy-pages@v4
+52
View File
@@ -0,0 +1,52 @@
# ===----------------------------------------------------------------------===
#
# This source file is part of the Amiibo Service open source project
#
# Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
# Licensed under Apache license v2.0
#
# See LICENSE for license information
# See CONTRIBUTORS for the list of Amiibo Service project authors
#
# SPDX-License-Identifier: Apache-2.0
#
# ===----------------------------------------------------------------------===
name: Live tests
on:
schedule:
# Every Monday at 06:00 UTC.
- cron: '0 6 * * 1'
workflow_dispatch:
permissions:
contents: read
jobs:
test:
name: Test against the live service
runs-on: macos-latest
steps:
- name: Check out
uses: actions/checkout@v4
- name: Select Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: latest-stable
- name: Show toolchain
run: swift --version
- name: Cache build
uses: actions/cache@v4
with:
path: .build
key: spm-${{ runner.os }}-${{ hashFiles('Package.resolved') }}
restore-keys: spm-${{ runner.os }}-
- name: Test
run: make lib-test
env:
AMIIBO_LIVE_TESTS: '1'
+1
View File
@@ -49,3 +49,4 @@ Packages/
# DocC documentation
*.doccarchive
docs/
+4 -1
View File
@@ -35,6 +35,7 @@ let package = Package(
.package(url: "https://github.com/apple/swift-openapi-generator.git", from: "1.11.0"),
.package(url: "https://github.com/apple/swift-openapi-runtime", from: "1.5.0"),
.package(url: "https://github.com/apple/swift-openapi-urlsession", from: "1.0.2"),
.package(url: "https://github.com/apple/swift-http-types", from: "1.0.0"),
.package(url: "https://github.com/swiftlang/swift-docc-plugin", from: "1.1.0"),
],
targets: [
@@ -52,7 +53,9 @@ let package = Package(
.testTarget(
name: AmiiboService.test,
dependencies: [
.byName(name: AmiiboService.target)
.byName(name: AmiiboService.target),
.product(name: "HTTPTypes", package: "swift-http-types"),
.product(name: "OpenAPIRuntime", package: "swift-openapi-runtime")
],
path: "Tests/AmiiboService"
),
+2 -1
View File
@@ -1,5 +1,6 @@
[![](https://img.shields.io/endpoint?url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2Frock-n-code%2Famiibo-service%2Fbadge%3Ftype%3Dswift-versions)](https://swiftpackageindex.com/rock-n-code/amiibo-service)
[![](https://img.shields.io/endpoint?url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2Frock-n-code%2Famiibo-service%2Fbadge%3Ftype%3Dplatforms)](https://swiftpackageindex.com/rock-n-code/amiibo-service)
[![](https://github.com/rock-n-code/amiibo-service/actions/workflows/ci.yml/badge.svg)](https://github.com/rock-n-code/amiibo-service/actions/workflows/ci.yml)
# Amiibo Service
@@ -56,7 +57,7 @@ let gameSeries = try await service.getGameSeries()
let lastUpdated = try await service.getLastUpdated()
```
Results are sorted in ascending order by identifier (amiibos) or key (everything else).
Results are sorted in ascending order by identifier (amiibos) or key (everything else). Models are `Hashable`, `Codable`, and `Identifiable`; filters are `Hashable`.
## Error handling
@@ -6,7 +6,7 @@ A Swift client for the Amiibo API.
`AmiiboService` fetches data from the [Amiibo API](https://www.amiiboapi.org) and returns it as Swift models.
The library does not expose a generated client that maps one-to-one to the REST endpoints. Instead, ``AmiiboService`` offers one method per resource, takes a typed filter, returns sorted models, and throws a single ``AmiiboServiceError`` type.
``AmiiboService`` offers one method per resource: each takes a typed filter, returns sorted models, and throws ``AmiiboServiceError``.
## Installation
@@ -76,9 +76,7 @@ do throws(AmiiboServiceError) {
## Caching
The library has no built-in cache. The Amiibo API asks regular consumers to cache responses.
To cache at the HTTP level, give ``AmiiboLiveClient`` a transport backed by a `URLCache`. The cache follows the server's cache headers:
The library has no built-in cache, and the Amiibo API asks regular consumers to cache responses. To cache at the HTTP level, give ``AmiiboLiveClient`` a transport backed by a `URLCache`:
```swift
import OpenAPIURLSession
@@ -101,11 +99,11 @@ let service = AmiiboService(
)
```
You can also store the returned models in your own application storage.
Models are `Codable`, so you can also store them yourself.
## Testing
To test without network access, pass a mock ``AmiiboClient`` to ``AmiiboService/init(client:)``. The mock can return stub data or throw ``AmiiboServiceError`` values. ``AmiiboClient`` refines `Sendable`, so the mock must be `Sendable`, too:
To test without network access, pass a mock ``AmiiboClient`` to ``AmiiboService/init(client:)``. ``AmiiboClient`` refines `Sendable`, so the mock must be `Sendable`, too:
```swift
import AmiiboService
@@ -18,13 +18,11 @@ extension DateFormatter {
// MARK: Properties
/// An ISO date formatter.
///
/// This formatter implements the `yyyy-MM-dd` date format.
/// An ISO date formatter for the `yyyy-MM-dd` format.
static let isoDate: DateFormatter = {
let formatter = DateFormatter()
// A fixed-format date requires the POSIX locale, as the user's locale or 12/24-hour setting could otherwise alter the parsing.
// The POSIX locale keeps the user's locale and 12/24-hour setting from altering fixed-format parsing.
formatter.locale = .init(identifier: "en_US_POSIX")
formatter.dateFormat = "yyyy-MM-dd"
formatter.timeZone = .init(secondsFromGMT: 0)
@@ -32,14 +30,13 @@ extension DateFormatter {
return formatter
}()
/// An ISO timestamp formatter.
/// An ISO timestamp formatter for the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` format.
///
/// This formatter implements the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` custom date format.
/// Within the context of this library, this formatter is solely used to decode a date formatted as a timestamp that is returned by the ``AmiiboService/getLastUpdated()`` function.
/// Used only to decode the timestamp returned by ``AmiiboService/getLastUpdated()``.
static let isoTimestamp: DateFormatter = {
let formatter = DateFormatter()
// A fixed-format date requires the POSIX locale, as the user's locale or 12/24-hour setting could otherwise alter the parsing.
// The POSIX locale keeps the user's locale and 12/24-hour setting from altering fixed-format parsing.
formatter.locale = .init(identifier: "en_US_POSIX")
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"
formatter.timeZone = .init(secondsFromGMT: 0)
@@ -12,8 +12,8 @@
//
// ===----------------------------------------------------------------------===
/// A protocol that defines filters containing optional `key` and/or `name` values for querying resources.
protocol KeyNameFilter {
/// A protocol for filters with optional `key` and `name` values.
protocol KeyNameFilter: Hashable {
// MARK: Properties
@@ -13,7 +13,7 @@
// ===----------------------------------------------------------------------===
/// A protocol that defines models containing a `key` and `name` pair.
protocol KeyNameModel: Sendable, Hashable {
protocol KeyNameModel: Sendable, Hashable, Codable, Identifiable {
// MARK: Properties
@@ -15,15 +15,15 @@
import Foundation
import OpenAPIRuntime
/// A type that allows the decoding and encoding of ISO dates, supporting both the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` timestamp format and the `yyyy-MM-dd` date-only format.
/// A transcoder for ISO dates in the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` timestamp and `yyyy-MM-dd` date-only formats.
struct ISODateTimeTranscoder {
// MARK: Properties
/// A formatter to use to decode and encode ISO timestamp dates.
/// The ISO timestamp formatter.
private let timestampFormatter: DateFormatter = .isoTimestamp
/// A formatter to use to decode and encode ISO date-only strings.
/// The ISO date-only formatter.
private let dateFormatter: DateFormatter = .isoDate
}
@@ -34,17 +34,13 @@ extension ISODateTimeTranscoder: DateTranscoder {
// MARK: Functions
/// Encodes a date into an ISO timestamp string.
/// - Parameter date: A date to encode.
/// - Returns: A string representation of the date in `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` format.
/// Encodes a date as an ISO timestamp string.
func encode(_ date: Date) throws -> String {
timestampFormatter.string(from: date)
}
/// Decodes an ISO date string into a date, trying the timestamp format first and falling back to the date-only format.
/// - Parameter string: A string to decode.
/// - Returns: A date parsed from the string.
/// - Throws: A `DecodingError` if the string cannot be parsed into a valid date.
/// Decodes an ISO date string, trying the timestamp format before the date-only one.
/// - Throws: A `DecodingError` if the string matches neither format.
func decode(_ string: String) throws -> Date {
if let date = timestampFormatter.date(from: string) {
return date
@@ -16,16 +16,16 @@ import Foundation
import OpenAPIRuntime
import OpenAPIURLSession
/// A type that implements a live client to the [Amiibo API](https://www.amiiboapi.org) online service.
/// A live client for the [Amiibo API](https://www.amiiboapi.org).
///
/// This client maps any transport error or unsuccessful HTTP response to an ``AmiiboServiceError`` error, and sorts the items of the list responses in ascending order by identifier or key.
/// It maps transport errors and unsuccessful responses to ``AmiiboServiceError``, and sorts list results by identifier or key.
public struct AmiiboLiveClient: Sendable {
// MARK: Constants
/// The base URL of the live service, resolved once from the server defined in the OpenAPI specification.
/// The base URL of the live service, from the OpenAPI specification.
///
/// The validity of the URL is guaranteed by the bundled `openapi.yaml` specification and enforced by a unit test, so resolution is not expected to fail at runtime.
/// A unit test guards this URL, so resolution is not expected to fail at runtime.
static let serverURL: URL = {
guard let url = try? Servers.Server1.url() else {
fatalError("The server URL defined in the OpenAPI specification could not be resolved. Verify that the 'openapi.yaml' server definition is valid.")
@@ -41,8 +41,8 @@ public struct AmiiboLiveClient: Sendable {
// MARK: Initializers
/// Initializes this client with a transport for performing HTTP operations.
/// - Parameter transport: A transport that performs HTTP operations. Defaults to a `URLSessionTransport` using the shared session.
/// Initializes this client.
/// - Parameter transport: A transport for HTTP operations. Defaults to a `URLSessionTransport` on the shared session.
public init(transport: any ClientTransport = URLSessionTransport()) {
self.client = .init(
serverURL: Self.serverURL,
@@ -61,9 +61,9 @@ extension AmiiboLiveClient: AmiiboClient {
// MARK: Functions
/// Gets a list of amiibo items based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo items.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getAmiibos(
by filter: AmiiboFilter
) async throws(AmiiboServiceError) -> [Amiibo] {
@@ -71,9 +71,9 @@ extension AmiiboLiveClient: AmiiboClient {
}
/// Gets a list of amiibo series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo series.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getAmiiboSeries(
by filter: AmiiboSeriesFilter
) async throws(AmiiboServiceError) -> [AmiiboSeries] {
@@ -81,9 +81,9 @@ extension AmiiboLiveClient: AmiiboClient {
}
/// Gets a list of amiibo types based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo types.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getAmiiboTypes(
by filter: AmiiboTypeFilter
) async throws(AmiiboServiceError) -> [AmiiboType] {
@@ -91,9 +91,9 @@ extension AmiiboLiveClient: AmiiboClient {
}
/// Gets a list of game characters based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered game characters.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getGameCharacters(
by filter: GameCharacterFilter
) async throws(AmiiboServiceError) -> [GameCharacter] {
@@ -101,9 +101,9 @@ extension AmiiboLiveClient: AmiiboClient {
}
/// Gets a list of game series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered game series.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getGameSeries(
by filter: GameSeriesFilter
) async throws(AmiiboServiceError) -> [GameSeries] {
@@ -112,7 +112,7 @@ extension AmiiboLiveClient: AmiiboClient {
/// Gets the date when the data was last updated.
/// - Returns: A last updated date, decoded as UTC.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getLastUpdated() async throws(AmiiboServiceError) -> Date {
try await fetchLastUpdated()
}
@@ -125,10 +125,7 @@ private extension AmiiboLiveClient {
// MARK: Functions
/// Fetches a list of amiibo items based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Returns: A list of fetched amiibo items filtered, if requested.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// Fetches the amiibos matching a filter.
func fetchAmiibos(
_ filter: AmiiboFilter
) async throws(AmiiboServiceError) -> [Amiibo] {
@@ -174,10 +171,7 @@ private extension AmiiboLiveClient {
}
}
/// Fetches a list of amiibo series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Returns: A list of fetched amiibo series filtered, if requested.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// Fetches the amiibo series matching a filter.
func fetchAmiiboSeries(
_ filter: AmiiboSeriesFilter
) async throws(AmiiboServiceError) -> [AmiiboSeries] {
@@ -210,10 +204,7 @@ private extension AmiiboLiveClient {
}
}
/// Fetches a list of amiibo types based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Returns: A list of fetched amiibo types filtered, if requested.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// Fetches the amiibo types matching a filter.
func fetchAmiiboTypes(
_ filter: AmiiboTypeFilter
) async throws(AmiiboServiceError) -> [AmiiboType] {
@@ -246,10 +237,7 @@ private extension AmiiboLiveClient {
}
}
/// Fetches a list of game characters based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Returns: A list of fetched game characters filtered, if requested.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// Fetches the game characters matching a filter.
func fetchGameCharacters(
_ filter: GameCharacterFilter
) async throws(AmiiboServiceError) -> [GameCharacter] {
@@ -282,10 +270,7 @@ private extension AmiiboLiveClient {
}
}
/// Fetches a list of game series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Returns: A list of fetched game series filtered, if requested.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// Fetches the game series matching a filter.
func fetchGameSeries(
_ filter: GameSeriesFilter
) async throws(AmiiboServiceError) -> [GameSeries] {
@@ -319,8 +304,6 @@ private extension AmiiboLiveClient {
}
/// Fetches the date when the data was last updated.
/// - Returns: A fetched last updated date, decoded as UTC.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
func fetchLastUpdated() async throws(AmiiboServiceError) -> Date {
let response = try await perform {
try await client.getLastUpdated()
@@ -339,10 +322,7 @@ private extension AmiiboLiveClient {
}
}
/// Performs an API call, mapping any error thrown by the underlying client to an ``AmiiboServiceError`` error.
/// - Parameter operation: A closure that performs the API call.
/// - Returns: The output of the performed API call.
/// - Throws: An ``AmiiboServiceError`` error in case the API call failed.
/// Performs an API call, mapping any error to an ``AmiiboServiceError``.
func perform<Output>(
_ operation: () async throws -> Output
) async throws(AmiiboServiceError) -> Output {
@@ -353,24 +333,23 @@ private extension AmiiboLiveClient {
}
}
/// Maps a list of key-name payloads into a sorted list of models.
/// - Parameter payloads: A list of payloads to map into models.
/// - Returns: A list of models sorted by their keys in ascending order.
/// Maps key-name payloads into models sorted by key.
func makeModels<Model: KeyNameModel>(from payloads: [some KeyNamePayload]) -> [Model] {
payloads
.map { Model($0) }
.sorted { $0.key < $1.key }
}
/// Maps a given error to an ``AmiiboServiceError`` error.
/// - Parameter error: An error to map.
/// - Throws: An ``AmiiboServiceError`` error that corresponds to the given error.
/// Maps an error to the corresponding ``AmiiboServiceError``.
func handle(error: any Error) throws(AmiiboServiceError) -> Never {
switch error {
case is CancellationError:
throw AmiiboServiceError.cancelled
case let clientError as ClientError:
// The underlying client wraps every error, including cancellation, in a `ClientError`.
switch clientError.underlyingError {
case is CancellationError:
throw AmiiboServiceError.cancelled
case is DecodingError:
throw AmiiboServiceError.decoding
case let urlError as URLError:
@@ -22,7 +22,7 @@ public enum AmiiboServiceError: Error {
case cancelled
/// The response body could not be decoded into the expected model.
case decoding
/// The backend service is currently unreachable due to a network or server issue.
/// The service is unreachable due to a network or server issue.
case notAvailable
/// No results were found matching the given filter criteria.
///
@@ -30,7 +30,7 @@ public enum AmiiboServiceError: Error {
case notFound
/// The server returned an undocumented HTTP status code.
case undocumented(_ statusCode: Int)
/// An unexpected error that does not fall into any other category, with a description of the underlying error.
/// Any other error, with a description of the underlying one.
case unknown(_ description: String)
}
@@ -15,7 +15,7 @@
/// A filter for amiibo requests.
///
/// Values left as `nil` do not restrict the result.
public struct AmiiboFilter: Sendable {
public struct AmiiboFilter: Sendable, Hashable {
// MARK: Properties
@@ -37,10 +37,10 @@ public struct AmiiboFilter: Sendable {
/// An amiibo series key or name to match, if any.
public let series: String?
/// A flag that indicates whether to include related games in ``Amiibo/platform``. `nil` means `false`.
/// Whether to include related games in ``Amiibo/platform``. `nil` means `false`.
public let showGames: Bool?
/// A flag that indicates whether to include related games and their amiibo usages in ``Amiibo/platform``. `nil` means `false`.
/// Whether to include related games and their usages in ``Amiibo/platform``. `nil` means `false`.
public let showUsage: Bool?
/// The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix.
@@ -61,8 +61,8 @@ public struct AmiiboFilter: Sendable {
/// - series: An amiibo series key or name to match, if any.
/// - gameCharacter: A game character key or name to match, if any.
/// - gameSeries: A game series key or name to match, if any.
/// - showGames: A flag that indicates whether to include related games in ``Amiibo/platform``. `nil` means `false`.
/// - showUsage: A flag that indicates whether to include related games and their amiibo usages in ``Amiibo/platform``. `nil` means `false`.
/// - showGames: Whether to include related games in ``Amiibo/platform``. `nil` means `false`.
/// - showUsage: Whether to include related games and their usages in ``Amiibo/platform``. `nil` means `false`.
public init(
head: String? = nil,
tail: String? = nil,
@@ -15,7 +15,7 @@
import Foundation
/// A model that represents an amiibo.
public struct Amiibo: Sendable, Hashable {
public struct Amiibo: Sendable, Hashable, Codable, Identifiable {
// MARK: Properties
@@ -36,7 +36,7 @@ public struct Amiibo: Sendable, Hashable {
/// The related games of this amiibo, grouped by platform.
///
/// This value is `nil` unless the request sets ``AmiiboFilter/showGames`` or ``AmiiboFilter/showUsage``, or when the amiibo has no related games.
/// `nil` unless the request sets ``AmiiboFilter/showGames`` or ``AmiiboFilter/showUsage``, or when there are no related games.
public let platform: Platform?
/// The release dates of this amiibo across different regions.
@@ -53,6 +53,31 @@ public struct Amiibo: Sendable, Hashable {
// MARK: Initializers
/// Initializes this model.
package init(
head: String,
tail: String,
name: String,
type: String,
series: String,
gameCharacter: String,
gameSeries: String,
image: String,
release: Release = .init(),
platform: Platform? = nil
) {
self.gameCharacter = gameCharacter
self.gameSeries = gameSeries
self.head = head
self.image = image
self.name = name
self.platform = platform
self.release = release
self.series = series
self.tail = tail
self.type = type
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: Components.Schemas.Amiibo) {
@@ -75,6 +100,11 @@ public struct Amiibo: Sendable, Hashable {
// MARK: Computed
/// The ``identifier`` of this amiibo.
public var id: String {
identifier
}
/// The full 16-character hexadecimal identifier, composed of the ``head`` and ``tail``.
public var identifier: String {
head + tail
@@ -14,7 +14,7 @@
extension Amiibo {
/// A model that represents a game related to an amiibo.
public struct Game: Sendable, Hashable {
public struct Game: Sendable, Hashable, Codable {
// MARK: Properties
@@ -29,6 +29,17 @@ extension Amiibo {
// MARK: Initializers
/// Initializes this model.
package init(
identifiers: [String],
name: String,
usages: [Usage]? = nil
) {
self.identifiers = identifiers
self.name = name
self.usages = usages
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: Components.Schemas.AmiiboGame) {
@@ -13,8 +13,8 @@
// ===----------------------------------------------------------------------===
extension Amiibo {
/// A model that represents a collection of `Switch`, `Switch 2`, `3DS`, and `Wii U` games related to an amiibo.
public struct Platform: Sendable, Hashable {
/// A model that groups the games related to an amiibo by platform.
public struct Platform: Sendable, Hashable, Codable {
// MARK: Properties
@@ -33,6 +33,19 @@ extension Amiibo {
// MARK: Initializers
/// Initializes this model.
package init(
`switch`: [Game] = [],
switch2: [Game] = [],
threeDS: [Game] = [],
wiiU: [Game] = []
) {
self.switch = `switch`
self.switch2 = switch2
self.threeDS = threeDS
self.wiiU = wiiU
}
/// Initializes this model from the given payloads.
///
/// > important: In case no data is provided, then an instance of this model is not created.
///
@@ -18,7 +18,7 @@ extension Amiibo {
/// A model that represents the regional release dates of an amiibo.
///
/// The service provides these dates as date-only values, which are decoded as midnight UTC.
public struct Release: Sendable, Hashable {
public struct Release: Sendable, Hashable, Codable {
// MARK: Properties
@@ -36,6 +36,19 @@ extension Amiibo {
// MARK: Initializers
/// Initializes this model.
package init(
america: Date? = nil,
australia: Date? = nil,
europe: Date? = nil,
japan: Date? = nil
) {
self.america = america
self.australia = australia
self.europe = europe
self.japan = japan
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: Components.Schemas.AmiiboRelease) {
@@ -14,18 +14,24 @@
extension Amiibo {
/// A model that represents the usage of an amiibo within a certain game.
public struct Usage: Sendable, Hashable {
public struct Usage: Sendable, Hashable, Codable {
// MARK: Properties
/// A description of how the amiibo is used within the game.
public let explanation: String
/// A flag that indicates whether the amiibo can save game data.
/// Whether the amiibo can save game data.
public let isWriteable: Bool
// MARK: Initializers
/// Initializes this model.
package init(explanation: String, isWriteable: Bool) {
self.explanation = explanation
self.isWriteable = isWriteable
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: Components.Schemas.AmiiboUsage) {
@@ -25,6 +25,12 @@ public struct AmiiboSeries: KeyNameModel {
// MARK: Initializers
/// Initializes this model.
package init(key: String, name: String) {
self.key = key
self.name = name
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: some KeyNamePayload) {
@@ -32,4 +38,11 @@ public struct AmiiboSeries: KeyNameModel {
self.name = payload.name
}
// MARK: Computed
/// The ``key`` of this amiibo series.
public var id: String {
key
}
}
@@ -25,6 +25,12 @@ public struct AmiiboType: KeyNameModel {
// MARK: Initializers
/// Initializes this model.
package init(key: String, name: String) {
self.key = key
self.name = name
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: some KeyNamePayload) {
@@ -32,4 +38,11 @@ public struct AmiiboType: KeyNameModel {
self.name = payload.name
}
// MARK: Computed
/// The ``key`` of this amiibo type.
public var id: String {
key
}
}
@@ -25,6 +25,12 @@ public struct GameCharacter: KeyNameModel {
// MARK: Initializers
/// Initializes this model.
package init(key: String, name: String) {
self.key = key
self.name = name
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: some KeyNamePayload) {
@@ -32,4 +38,11 @@ public struct GameCharacter: KeyNameModel {
self.name = payload.name
}
// MARK: Computed
/// The ``key`` of this game character.
public var id: String {
key
}
}
@@ -25,6 +25,12 @@ public struct GameSeries: KeyNameModel {
// MARK: Initializers
/// Initializes this model.
package init(key: String, name: String) {
self.key = key
self.name = name
}
/// Initializes this model from a given payload.
/// - Parameter payload: A payload that contains the values for the model.
init(_ payload: some KeyNamePayload) {
@@ -32,4 +38,11 @@ public struct GameSeries: KeyNameModel {
self.name = payload.name
}
// MARK: Computed
/// The ``key`` of this game series.
public var id: String {
key
}
}
@@ -16,44 +16,44 @@ import Foundation
/// A protocol that defines a client that fetches data from the Amiibo API.
///
/// ``AmiiboLiveClient`` is the default implementation. Conform to this protocol to provide another one, such as a mock for tests. Conforming types must be `Sendable`.
/// ``AmiiboLiveClient`` is the default implementation; conform to provide another, such as a mock. Conforming types must be `Sendable`.
public protocol AmiiboClient: Sendable {
// MARK: Functions
/// Gets a list of amiibo items based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo items.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
func getAmiibos(by filter: AmiiboFilter) async throws(AmiiboServiceError) -> [Amiibo]
/// Gets a list of amiibo series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo series.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
func getAmiiboSeries(by filter: AmiiboSeriesFilter) async throws(AmiiboServiceError) -> [AmiiboSeries]
/// Gets a list of amiibo types based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo types.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
func getAmiiboTypes(by filter: AmiiboTypeFilter) async throws(AmiiboServiceError) -> [AmiiboType]
/// Gets a list of game characters based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered game characters.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
func getGameCharacters(by filter: GameCharacterFilter) async throws(AmiiboServiceError) -> [GameCharacter]
/// Gets a list of game series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered game series.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
func getGameSeries(by filter: GameSeriesFilter) async throws(AmiiboServiceError) -> [GameSeries]
/// Gets the date when the data was last updated.
/// - Returns: A last updated date, decoded as UTC.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
func getLastUpdated() async throws(AmiiboServiceError) -> Date
}
@@ -16,7 +16,7 @@ import Foundation
/// The entry point for fetching data from the Amiibo API.
///
/// This service forwards every call to the ``AmiiboClient`` passed at initialization, which defaults to ``AmiiboLiveClient``. It is `Sendable`, so you can share an instance across concurrency domains.
/// It forwards every call to the ``AmiiboClient`` given at initialization, which defaults to ``AmiiboLiveClient``. Instances are `Sendable`.
public struct AmiiboService: Sendable {
// MARK: Properties
@@ -35,9 +35,9 @@ public struct AmiiboService: Sendable {
// MARK: Functions
/// Gets a list of amiibo items based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo items.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getAmiibos(
_ filter: AmiiboFilter = .init()
) async throws(AmiiboServiceError) -> [Amiibo] {
@@ -45,9 +45,9 @@ public struct AmiiboService: Sendable {
}
/// Gets a list of amiibo series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo series.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getAmiiboSeries(
_ filter: AmiiboSeriesFilter = .init()
) async throws(AmiiboServiceError) -> [AmiiboSeries] {
@@ -55,9 +55,9 @@ public struct AmiiboService: Sendable {
}
/// Gets a list of amiibo types based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered amiibo types.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getAmiiboTypes(
_ filter: AmiiboTypeFilter = .init()
) async throws(AmiiboServiceError) -> [AmiiboType] {
@@ -65,9 +65,9 @@ public struct AmiiboService: Sendable {
}
/// Gets a list of game characters based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered game characters.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getGameCharacters(
_ filter: GameCharacterFilter = .init()
) async throws(AmiiboServiceError) -> [GameCharacter] {
@@ -75,9 +75,9 @@ public struct AmiiboService: Sendable {
}
/// Gets a list of game series based on a given filter.
/// - Parameter filter: A filter to remove unwanted items from the result.
/// - Parameter filter: A filter for the result.
/// - Returns: A list of filtered game series.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getGameSeries(
_ filter: GameSeriesFilter = .init()
) async throws(AmiiboServiceError) -> [GameSeries] {
@@ -86,7 +86,7 @@ public struct AmiiboService: Sendable {
/// Gets the date when the data was last updated.
/// - Returns: A last updated date, decoded as UTC.
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
/// - Throws: An ``AmiiboServiceError`` if the call fails.
public func getLastUpdated() async throws(AmiiboServiceError) -> Date {
try await client.getLastUpdated()
}
@@ -0,0 +1,78 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
@testable import AmiiboService
import Foundation
import Testing
@Suite("ISO Date Time Transcoder")
struct ISODateTimeTranscoderTests {
// MARK: Properties
private let transcoder = ISODateTimeTranscoder()
// MARK: Decode tests
@Test("decodes a timestamp as UTC")
func decodesTimestamp() throws {
// GIVEN
let string = "2026-07-24T12:34:56.123000"
// WHEN
let date = try transcoder.decode(string)
// THEN
#expect(abs(date.timeIntervalSince(.utc(2026, 7, 24, 12, 34, 56)) - 0.123) < 0.001)
}
@Test("decodes a date-only string as midnight UTC")
func decodesDate() throws {
// GIVEN
let string = "2014-11-21"
// WHEN
let date = try transcoder.decode(string)
// THEN
#expect(date == .utc(2014, 11, 21))
}
@Test("throws a decoding error for an unsupported string", arguments: [
"", "2014-11", "2014-11-21T12:34:56", "2014-11-21T12:34:56Z", "21/11/2014", "yesterday"
])
func throwsForUnsupportedString(string: String) {
// GIVEN
// WHEN
// THEN
#expect(throws: DecodingError.self) {
try transcoder.decode(string)
}
}
// MARK: Encode tests
@Test("encodes a date as a timestamp")
func encodesTimestamp() throws {
// GIVEN
let date: Date = .utc(2026, 7, 24, 12, 34, 56)
// WHEN
let string = try transcoder.encode(date)
// THEN
#expect(string == "2026-07-24T12:34:56.000000")
}
}
@@ -14,6 +14,7 @@
@testable import AmiiboService
import Foundation
import HTTPTypes
import Testing
@Suite("Amiibo Live Client")
@@ -43,4 +44,443 @@ struct AmiiboLiveClientTests {
#expect(url == expected)
}
// MARK: Error mapping tests
@Test(
"maps an error thrown by the transport to the matching service error",
arguments: zip(
TransportErrors.thrown,
TransportErrors.expected
)
)
func mapsTransportError(
thrown: any Error,
expected: AmiiboServiceError
) async {
// GIVEN
let client = AmiiboLiveClient(transport: ThrowingTransport(error: thrown))
// WHEN
// THEN
await #expect(throws: expected) {
try await client.getAmiibos(by: .init())
}
}
@Test(
"maps a response status to the matching service error",
arguments: zip(
Responses.failing,
Responses.expected
)
)
func mapsResponseStatus(
response: (status: Int, json: String?),
expected: AmiiboServiceError
) async {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(
status: .init(code: response.status),
json: response.json
))
// WHEN
// THEN
await #expect(throws: expected) {
try await client.getAmiibos(by: .init())
}
}
// MARK: Get Amiibos tests
@Test("returns amiibos sorted by identifier")
func getAmiibosSorted() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibos))
// WHEN
let amiibos = try await client.getAmiibos(by: .init())
// THEN
#expect(amiibos.map(\.identifier) == ["0000000000000002", "0100000000040002"])
#expect(amiibos.map(\.name) == ["Mario", "Zelda"])
}
@Test("returns a single amiibo when the response holds an object")
func getAmiibosSingle() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibo))
// WHEN
let amiibos = try await client.getAmiibos(by: .init(identifier: "0100000000040002"))
let amiibo = try #require(amiibos.first)
// THEN
#expect(amiibos.count == 1)
#expect(amiibo.head == "01000000")
#expect(amiibo.tail == "00040002")
#expect(amiibo.name == "Zelda")
#expect(amiibo.type == "Figure")
#expect(amiibo.series == "Super Smash Bros.")
#expect(amiibo.gameCharacter == "Zelda")
#expect(amiibo.gameSeries == "The Legend of Zelda")
#expect(amiibo.imageURL?.host() == "example.com")
#expect(amiibo.platform == nil)
}
@Test("returns no amiibos when the response holds null")
func getAmiibosNull() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibosNull))
// WHEN
let amiibos = try await client.getAmiibos(by: .init(identifier: "0000000000000000"))
// THEN
#expect(amiibos.isEmpty)
}
@Test("returns no amiibos when the response holds an empty list")
func getAmiibosEmpty() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibosEmpty))
// WHEN
let amiibos = try await client.getAmiibos(by: .init(name: "Something"))
// THEN
#expect(amiibos.isEmpty)
}
@Test("decodes release dates as midnight UTC, and missing or null ones as nil")
func getAmiibosRelease() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibos))
// WHEN
let amiibos = try await client.getAmiibos(by: .init())
let mario = try #require(amiibos.first)
let zelda = try #require(amiibos.last)
// THEN
#expect(mario.release.america == .utc(2014, 11, 21))
#expect(mario.release.australia == .utc(2014, 11, 29))
#expect(mario.release.europe == .utc(2014, 11, 28))
#expect(mario.release.japan == .utc(2014, 12, 6))
#expect(zelda.release.australia == nil)
#expect(zelda.release.japan == nil)
}
@Test("maps related games and usages into the platform")
func getAmiibosPlatform() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiiboWithGames))
// WHEN
let amiibos = try await client.getAmiibos(by: .init(showUsage: true))
let platform = try #require(amiibos.first?.platform)
let game = try #require(platform.switch.first)
// THEN
#expect(platform.switch.count == 1)
#expect(platform.switch2.isEmpty)
#expect(platform.threeDS.isEmpty)
#expect(platform.wiiU.count == 1)
#expect(game.identifiers == ["01007EF00011E000"])
#expect(game.name == "The Legend of Zelda: Breath of the Wild")
#expect(game.usages == [.init(explanation: "Spawns a random selection of items.", isWriteable: false)])
#expect(platform.wiiU.first?.usages == nil)
}
@Test("encodes the amiibo filter as query parameters")
func getAmiibosQuery() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
let path = request.path ?? ""
#expect(path.hasPrefix("/amiibo?"))
#expect(path.contains("id=0100000000040002"))
#expect(path.contains("head=01000000"))
#expect(path.contains("tail=00040002"))
#expect(path.contains("name=zelda"))
#expect(path.contains("type=0x00"))
#expect(path.contains("amiiboSeries=0x00"))
#expect(path.contains("character=0x0100"))
#expect(path.contains("gameseries=0x010"))
#expect(path.contains("showgames=true"))
#expect(path.contains("showusage=false"))
return StubTransport.response(status: .ok, json: JSON.amiibosEmpty)
})
// WHEN
// THEN
_ = try await client.getAmiibos(by: .init(
head: "01000000",
tail: "00040002",
identifier: "0100000000040002",
name: "zelda",
type: "0x00",
series: "0x00",
gameCharacter: "0x0100",
gameSeries: "0x010",
showGames: true,
showUsage: false
))
}
@Test("omits nil filter values from the query")
func getAmiibosEmptyQuery() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
#expect(request.path == "/amiibo")
return StubTransport.response(status: .ok, json: JSON.amiibosEmpty)
})
// WHEN
// THEN
_ = try await client.getAmiibos(by: .init())
}
// MARK: Key-name endpoints tests
@Test("returns amiibo series sorted by key")
func getAmiiboSeriesSorted() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.keyNameList))
// WHEN
let series = try await client.getAmiiboSeries(by: .init())
// THEN
#expect(series == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
}
@Test("returns a single amiibo series when the response holds an object")
func getAmiiboSeriesSingle() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
#expect(request.path == "/amiiboseries?key=0x01")
return StubTransport.response(status: .ok, json: JSON.keyName)
})
// WHEN
let series = try await client.getAmiiboSeries(by: .init(key: "0x01"))
// THEN
#expect(series == [.init(key: "0x01", name: "First")])
}
@Test("returns amiibo types sorted by key")
func getAmiiboTypesSorted() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
#expect(request.path == "/type")
return StubTransport.response(status: .ok, json: JSON.keyNameList)
})
// WHEN
let types = try await client.getAmiiboTypes(by: .init())
// THEN
#expect(types == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
}
@Test("returns game characters sorted by key")
func getGameCharactersSorted() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
#expect(request.path == "/character?name=First")
return StubTransport.response(status: .ok, json: JSON.keyNameList)
})
// WHEN
let characters = try await client.getGameCharacters(by: .init(name: "First"))
// THEN
#expect(characters == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
}
@Test("returns game series sorted by key")
func getGameSeriesSorted() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
#expect(request.path == "/gameseries")
return StubTransport.response(status: .ok, json: JSON.keyNameList)
})
// WHEN
let series = try await client.getGameSeries(by: .init())
// THEN
#expect(series == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
}
@Test("throws notFound when a key-name endpoint matches nothing")
func getKeyNameNotFound() async {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .notFound, json: JSON.notFound))
// WHEN
// THEN
await #expect(throws: AmiiboServiceError.notFound) {
try await client.getGameSeries(by: .init(key: "0xffff"))
}
}
// MARK: Get Last Updated tests
@Test("returns the last updated timestamp as UTC")
func getLastUpdated() async throws {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport { request in
#expect(request.path == "/lastupdated")
return StubTransport.response(status: .ok, json: JSON.lastUpdated)
})
// WHEN
let lastUpdated = try await client.getLastUpdated()
// THEN
#expect(lastUpdated == .utc(2026, 7, 24, 12, 34, 56))
}
@Test("throws notAvailable when the last updated endpoint fails")
func getLastUpdatedNotAvailable() async {
// GIVEN
let client = AmiiboLiveClient(transport: StubTransport(status: .internalServerError))
// WHEN
// THEN
await #expect(throws: AmiiboServiceError.notAvailable) {
try await client.getLastUpdated()
}
}
}
// MARK: - Arguments
private enum TransportErrors {
/// Errors thrown by the transport.
static let thrown: [any Error] = [
CancellationError(),
URLError(.cancelled),
URLError(.cannotParseResponse),
URLError(.notConnectedToInternet),
URLError(.timedOut),
URLError(.badURL)
]
/// The service error expected for each thrown error.
static let expected: [AmiiboServiceError] = [
.cancelled,
.cancelled,
.decoding,
.notAvailable,
.notAvailable,
.unknown(String(describing: URLError(.badURL)))
]
}
private enum Responses {
/// Failing responses, with a body where the specification documents one.
static let failing: [(status: Int, json: String?)] = [
(400, JSON.badRequest),
(404, JSON.notFound),
(500, nil),
(418, nil),
(200, "not json")
]
/// The service error expected for each failing response.
static let expected: [AmiiboServiceError] = [
.badRequest,
.notFound,
.notAvailable,
.undocumented(418),
.decoding
]
}
// MARK: - Payloads
private enum JSON {
/// Two amiibos in reverse identifier order; the first lacks `au` and has a null `jp`.
static let amiibos = """
{"amiibo": [
{
"amiiboSeries": "Super Smash Bros.", "character": "Zelda", "gameSeries": "The Legend of Zelda",
"head": "01000000", "tail": "00040002", "name": "Zelda", "type": "Figure",
"image": "https://example.com/zelda.png",
"release": {"eu": "2014-11-28", "jp": null, "na": "2014-11-21"}
},
{
"amiiboSeries": "Super Smash Bros.", "character": "Mario", "gameSeries": "Super Mario",
"head": "00000000", "tail": "00000002", "name": "Mario", "type": "Figure",
"image": "https://example.com/mario.png",
"release": {"au": "2014-11-29", "eu": "2014-11-28", "jp": "2014-12-06", "na": "2014-11-21"}
}
]}
"""
/// A single amiibo, as returned for an `id` filter.
static let amiibo = """
{"amiibo": {
"amiiboSeries": "Super Smash Bros.", "character": "Zelda", "gameSeries": "The Legend of Zelda",
"head": "01000000", "tail": "00040002", "name": "Zelda", "type": "Figure",
"image": "https://example.com/zelda.png",
"release": {"au": "2014-12-04", "eu": "2014-11-28", "jp": "2014-12-06", "na": "2014-11-21"}
}}
"""
/// An amiibo with Switch and Wii U games, an empty 3DS list, and no Switch 2 key.
static let amiiboWithGames = """
{"amiibo": [{
"amiiboSeries": "Super Smash Bros.", "character": "Zelda", "gameSeries": "The Legend of Zelda",
"head": "01000000", "tail": "00040002", "name": "Zelda", "type": "Figure",
"image": "https://example.com/zelda.png",
"release": {"na": "2014-11-21"},
"games3DS": [],
"gamesSwitch": [{
"gameID": ["01007EF00011E000"],
"gameName": "The Legend of Zelda: Breath of the Wild",
"amiiboUsage": [{"Usage": "Spawns a random selection of items.", "write": false}]
}],
"gamesWiiU": [{
"gameID": ["0005000010145000"],
"gameName": "Super Smash Bros. for Wii U"
}]
}]}
"""
/// The response for an `id` filter that matches nothing.
static let amiibosNull = """
{"amiibo": null}
"""
/// The response for any other filter that matches nothing.
static let amiibosEmpty = """
{"amiibo": []}
"""
/// Two key-name items in reverse key order.
static let keyNameList = """
{"amiibo": [{"key": "0x01", "name": "First"}, {"key": "0x00", "name": "Second"}]}
"""
/// A single key-name item, as returned for a `key` filter.
static let keyName = """
{"amiibo": {"key": "0x01", "name": "First"}}
"""
/// The last updated timestamp.
static let lastUpdated = """
{"lastUpdated": "2026-07-24T12:34:56.000000"}
"""
/// The body of a 400 response.
static let badRequest = """
{"code": 400, "error": "Bad request."}
"""
/// The body of a 404 response.
static let notFound = """
{"code": 404, "error": "Not found."}
"""
}
@@ -0,0 +1,61 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
import AmiiboService
import Testing
@Suite("Filter conformances")
struct FilterConformanceTests {
// MARK: Equatable tests
@Test("compares amiibo filters by value")
func amiiboFilterEquality() {
// GIVEN
// WHEN
// THEN
#expect(AmiiboFilter() == AmiiboFilter())
#expect(AmiiboFilter(name: "zelda") == AmiiboFilter(name: "zelda"))
#expect(AmiiboFilter(name: "zelda") != AmiiboFilter(name: "mario"))
#expect(AmiiboFilter() != AmiiboFilter(showGames: true))
}
@Test("compares key-name filters by value")
func keyNameFilterEquality() {
// GIVEN
// WHEN
// THEN
#expect(AmiiboSeriesFilter() == AmiiboSeriesFilter())
#expect(AmiiboSeriesFilter(key: "0x01") == AmiiboSeriesFilter(key: "0x01"))
#expect(AmiiboSeriesFilter(key: "0x01") != AmiiboSeriesFilter(name: "0x01"))
#expect(AmiiboTypeFilter(name: "Card") != AmiiboTypeFilter(name: "Figure"))
#expect(GameCharacterFilter(key: "0x0100") != GameCharacterFilter())
#expect(GameSeriesFilter(name: "Pikmin") == GameSeriesFilter(name: "Pikmin"))
}
// MARK: Hashable tests
@Test("hashes equal filters alike")
func filterHashing() {
// GIVEN
let amiiboFilters: Set = [AmiiboFilter(name: "zelda"), AmiiboFilter(name: "zelda"), AmiiboFilter(name: "mario")]
let seriesFilters: Set = [AmiiboSeriesFilter(key: "0x01"), AmiiboSeriesFilter(key: "0x01"), AmiiboSeriesFilter()]
// WHEN
// THEN
#expect(amiiboFilters.count == 2)
#expect(seriesFilters.count == 2)
}
}
@@ -0,0 +1,84 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
import AmiiboService
import Foundation
import Testing
@Suite("Model conformances")
struct ModelConformanceTests {
// MARK: Identifiable tests
@Test("identifies an amiibo by its identifier")
func amiiboID() {
// GIVEN
let amiibos = Fixtures.amiibos
// WHEN
// THEN
#expect(amiibos.map(\.id) == amiibos.map(\.identifier))
}
@Test("identifies key-name models by their keys")
func keyNameIDs() {
// GIVEN
// WHEN
// THEN
#expect(Fixtures.amiiboSeries.map(\.id) == Fixtures.amiiboSeries.map(\.key))
#expect(Fixtures.amiiboTypes.map(\.id) == Fixtures.amiiboTypes.map(\.key))
#expect(Fixtures.gameCharacters.map(\.id) == Fixtures.gameCharacters.map(\.key))
#expect(Fixtures.gameSeries.map(\.id) == Fixtures.gameSeries.map(\.key))
}
// MARK: Codable tests
@Test("round-trips amiibos through JSON")
func amiibosRoundTrip() throws {
// GIVEN
let amiibos = Fixtures.amiibos
// WHEN
let decoded = try roundTrip(amiibos)
// THEN
#expect(decoded == amiibos)
#expect(decoded.first?.platform?.switch.first?.usages?.isEmpty == false)
}
@Test("round-trips key-name models through JSON")
func keyNameRoundTrip() throws {
// GIVEN
// WHEN
// THEN
#expect(try roundTrip(Fixtures.amiiboSeries) == Fixtures.amiiboSeries)
#expect(try roundTrip(Fixtures.amiiboTypes) == Fixtures.amiiboTypes)
#expect(try roundTrip(Fixtures.gameCharacters) == Fixtures.gameCharacters)
#expect(try roundTrip(Fixtures.gameSeries) == Fixtures.gameSeries)
}
}
// MARK: - Helpers
private extension ModelConformanceTests {
// MARK: Functions
/// Encodes a value to JSON and decodes it back.
func roundTrip<Value: Codable>(_ value: Value) throws -> Value {
try JSONDecoder().decode(Value.self, from: JSONEncoder().encode(value))
}
}
@@ -33,6 +33,20 @@ struct AmiiboServiceMockTests {
#expect(amiibos.isEmpty)
}
@Test("returns amiibos when mock provides a list")
func getAmiibosList() async throws {
// GIVEN
let service = AmiiboService(client: AmiiboMockClient(amiibos: Fixtures.amiibos))
// WHEN
let amiibos = try await service.getAmiibos()
// THEN
#expect(amiibos == Fixtures.amiibos)
#expect(amiibos.first?.identifier == "0100000000040002")
#expect(amiibos.first?.imageURL != nil)
}
@Test("throws notFound when mock provides no amiibos")
func getAmiibosNotFound() async {
// GIVEN
@@ -71,6 +85,18 @@ struct AmiiboServiceMockTests {
#expect(amiiboSeries.isEmpty)
}
@Test("returns amiibo series when mock provides a list")
func getAmiiboSeriesList() async throws {
// GIVEN
let service = AmiiboService(client: AmiiboMockClient(amiiboSeries: Fixtures.amiiboSeries))
// WHEN
let amiiboSeries = try await service.getAmiiboSeries()
// THEN
#expect(amiiboSeries == Fixtures.amiiboSeries)
}
@Test("throws notFound when mock provides no amiibo series")
func getAmiiboSeriesNotFound() async {
// GIVEN
@@ -109,6 +135,18 @@ struct AmiiboServiceMockTests {
#expect(amiiboTypes.isEmpty)
}
@Test("returns amiibo types when mock provides a list")
func getAmiiboTypesList() async throws {
// GIVEN
let service = AmiiboService(client: AmiiboMockClient(amiiboTypes: Fixtures.amiiboTypes))
// WHEN
let amiiboTypes = try await service.getAmiiboTypes()
// THEN
#expect(amiiboTypes == Fixtures.amiiboTypes)
}
@Test("throws notFound when mock provides no amiibo types")
func getAmiiboTypesNotFound() async {
// GIVEN
@@ -147,6 +185,18 @@ struct AmiiboServiceMockTests {
#expect(gameCharacters.isEmpty)
}
@Test("returns game characters when mock provides a list")
func getGameCharactersList() async throws {
// GIVEN
let service = AmiiboService(client: AmiiboMockClient(gameCharacters: Fixtures.gameCharacters))
// WHEN
let gameCharacters = try await service.getGameCharacters()
// THEN
#expect(gameCharacters == Fixtures.gameCharacters)
}
@Test("throws notFound when mock provides no game characters")
func getGameCharactersNotFound() async {
// GIVEN
@@ -185,6 +235,18 @@ struct AmiiboServiceMockTests {
#expect(gameSeries.isEmpty)
}
@Test("returns game series when mock provides a list")
func getGameSeriesList() async throws {
// GIVEN
let service = AmiiboService(client: AmiiboMockClient(gameSeries: Fixtures.gameSeries))
// WHEN
let gameSeries = try await service.getGameSeries()
// THEN
#expect(gameSeries == Fixtures.gameSeries)
}
@Test("throws notFound when mock provides no game series")
func getGameSeriesNotFound() async {
// GIVEN
@@ -0,0 +1,44 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
import Foundation
extension Date {
// MARK: Functions
/// Makes a date from UTC components.
static func utc(
_ year: Int,
_ month: Int,
_ day: Int,
_ hour: Int = 0,
_ minute: Int = 0,
_ second: Int = 0
) -> Date {
var calendar = Calendar(identifier: .gregorian)
calendar.timeZone = .init(secondsFromGMT: 0)!
return calendar.date(from: .init(
year: year,
month: month,
day: day,
hour: hour,
minute: minute,
second: second
))!
}
}
@@ -0,0 +1,85 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
import AmiiboService
import Foundation
/// Ready-made models for testing purposes.
enum Fixtures {
/// Amiibo items; the first one has release dates and related games with usages.
static let amiibos: [Amiibo] = [
.init(
head: "01000000",
tail: "00040002",
name: "Zelda",
type: "Figure",
series: "Super Smash Bros.",
gameCharacter: "Zelda",
gameSeries: "The Legend of Zelda",
image: "https://raw.githubusercontent.com/N3evin/AmiiboAPI/master/images/icon_01000000-00040002.png",
release: .init(
america: Date(timeIntervalSince1970: 1_416_441_600),
australia: Date(timeIntervalSince1970: 1_417_564_800),
europe: Date(timeIntervalSince1970: 1_417_132_800),
japan: Date(timeIntervalSince1970: 1_417_564_800)
),
platform: .init(
switch: [
.init(
identifiers: ["01007EF00011E000"],
name: "The Legend of Zelda: Breath of the Wild",
usages: [.init(explanation: "Spawns a random selection of items.", isWriteable: false)]
)
],
wiiU: [
.init(
identifiers: ["0005000010145000"],
name: "Super Smash Bros. for Wii U",
usages: [.init(explanation: "Unlocks a figure player.", isWriteable: true)]
)
]
)
),
.init(
head: "00000000",
tail: "00000002",
name: "Mario",
type: "Figure",
series: "Super Smash Bros.",
gameCharacter: "Mario",
gameSeries: "Super Mario",
image: "https://raw.githubusercontent.com/N3evin/AmiiboAPI/master/images/icon_00000000-00000002.png"
)
]
/// Amiibo series.
static let amiiboSeries: [AmiiboSeries] = [
.init(key: "0x00", name: "Super Smash Bros."),
.init(key: "0x01", name: "Super Mario")
]
/// Amiibo types.
static let amiiboTypes: [AmiiboType] = [
.init(key: "0x00", name: "Figure"),
.init(key: "0x01", name: "Card")
]
/// Game characters.
static let gameCharacters: [GameCharacter] = [
.init(key: "0x0000", name: "Mario"),
.init(key: "0x0100", name: "Zelda")
]
/// Game series.
static let gameSeries: [GameSeries] = [
.init(key: "0x000", name: "Super Mario"),
.init(key: "0x010", name: "The Legend of Zelda")
]
}
@@ -0,0 +1,72 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
import Foundation
import HTTPTypes
import OpenAPIRuntime
/// A transport that answers every request with a canned response, for testing purposes.
struct StubTransport: ClientTransport {
// MARK: Type aliases
/// A closure that builds the response for a request.
typealias Handler = @Sendable (HTTPRequest) throws -> (HTTPResponse, HTTPBody?)
// MARK: Properties
/// The handler that builds the response.
private let handler: Handler
// MARK: Initializers
/// Initializes this transport with a response handler.
init(handler: @escaping Handler) {
self.handler = handler
}
/// Initializes this transport with a fixed response.
init(status: HTTPResponse.Status, json: String? = nil) {
self.init { _ in
Self.response(status: status, json: json)
}
}
// MARK: Functions
func send(
_ request: HTTPRequest,
body: HTTPBody?,
baseURL: URL,
operationID: String
) async throws -> (HTTPResponse, HTTPBody?) {
try handler(request)
}
/// Builds a response with a status and an optional JSON body.
static func response(
status: HTTPResponse.Status,
json: String? = nil
) -> (HTTPResponse, HTTPBody?) {
guard let json else {
return (.init(status: status), nil)
}
return (
.init(status: status, headerFields: [.contentType: "application/json"]),
.init(json)
)
}
}
@@ -0,0 +1,48 @@
// ===----------------------------------------------------------------------===
//
// This source file is part of the Amiibo Service open source project
//
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Amiibo Service project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
import Foundation
import HTTPTypes
import OpenAPIRuntime
/// A transport that throws a given error instead of sending the request, for testing purposes.
///
/// The error reaches the live client wrapped in a `ClientError`, as it would from a real transport.
struct ThrowingTransport: ClientTransport {
// MARK: Properties
/// The error to throw.
private let error: any Error
// MARK: Initializers
/// Initializes this transport.
/// - Parameter error: An error to throw.
init(error: any Error) {
self.error = error
}
// MARK: Functions
func send(
_ request: HTTPRequest,
body: HTTPBody?,
baseURL: URL,
operationID: String
) async throws -> (HTTPResponse, HTTPBody?) {
throw error
}
}
-9
View File
@@ -1,9 +0,0 @@
/*!
* This source file is part of the Swift.org open source project
*
* Copyright (c) 2021 Apple Inc. and the Swift project authors
* Licensed under Apache License v2.0 with Runtime Library Exception
*
* See https://swift.org/LICENSE.txt for license information
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/.badge[data-v-ffe39a30]{--badge-color:var(--color-badge-default);--badge-dark-color:var(--color-badge-dark-default);font-size:.7058823529rem;line-height:1.3333333333;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);display:inline-block;padding:2px 4px;white-space:nowrap;border-radius:var(--badge-border-radius,1px);border-style:var(--badge-border-style,none);border-width:var(--badge-border-width,1px);margin:auto;margin-inline-start:5px;color:var(--colors-badge-text,var(--color-badge-text));background-color:var(--badge-color)}@media screen{[data-color-scheme=dark] .badge[data-v-ffe39a30]{background-color:var(--badge-dark-color)}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .badge[data-v-ffe39a30]{background-color:var(--badge-dark-color)}}.badge-deprecated[data-v-ffe39a30]{--badge-color:var(--color-badge-deprecated);--badge-dark-color:var(--color-badge-dark-deprecated)}.badge-beta[data-v-ffe39a30]{--badge-color:var(--color-badge-beta);--badge-dark-color:var(--color-badge-dark-beta)}[data-v-3a32ffd0] .code-listing{background:var(--background,var(--color-code-background));color:var(--text,var(--color-code-plain));border-color:var(--colors-grid,var(--color-grid));border-width:var(--code-border-width,1px);border-style:var(--code-border-style,solid)}[data-v-3a32ffd0] .code-listing pre{padding:var(--code-block-style-elements-padding)}[data-v-3a32ffd0] .code-listing pre>code{font-size:.8823529412rem;line-height:1.6666666667;font-weight:400;font-family:var(--typography-html-font-mono,Menlo,monospace)}[data-v-3a32ffd0] *+.code-listing,[data-v-3a32ffd0] *+.endpoint-example,[data-v-3a32ffd0] *+.inline-image-container,[data-v-3a32ffd0] *+aside,[data-v-3a32ffd0] *+figure,[data-v-3a32ffd0] .code-listing+*,[data-v-3a32ffd0] .endpoint-example+*,[data-v-3a32ffd0] .inline-image-container+*,[data-v-3a32ffd0] aside+*,[data-v-3a32ffd0] figure+*{margin-top:var(--spacing-stacked-margin-xlarge)}[data-v-3a32ffd0] *+dl,[data-v-3a32ffd0] dl+*{margin-top:var(--spacing-stacked-margin-large)}[data-v-3a32ffd0] img{display:block;margin:auto;max-width:100%}[data-v-3a32ffd0] ol,[data-v-3a32ffd0] ol li:not(:first-child),[data-v-3a32ffd0] ul,[data-v-3a32ffd0] ul li:not(:first-child){margin-top:var(--spacing-stacked-margin-large)}@media only screen and (max-width:735px){[data-v-3a32ffd0] ol,[data-v-3a32ffd0] ul{margin-left:1.25rem}}[data-v-3a32ffd0] dt:not(:first-child){margin-top:var(--spacing-stacked-margin-large)}[data-v-3a32ffd0] dd{margin-left:2em}.topic-icon-wrapper[data-v-58794252]{display:flex;align-items:center;justify-content:center;height:1.4705882353rem;flex:0 0 1.294rem;width:1.294rem;margin-inline-end:1rem}.topic-icon[data-v-58794252]{height:.8823529412rem;transform:scale(1);-webkit-transform:scale(1);overflow:visible}.topic-icon[data-v-58794252] img{margin:0;display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.topic-icon.curly-brackets-icon[data-v-58794252]{height:1rem}.token-method[data-v-295ad0ff]{font-weight:700}.token-keyword[data-v-295ad0ff]{color:var(--syntax-keyword,var(--color-syntax-keywords))}.token-number[data-v-295ad0ff]{color:var(--syntax-number,var(--color-syntax-numbers))}.token-string[data-v-295ad0ff]{color:var(--syntax-string,var(--color-syntax-strings))}.attribute-link[data-v-295ad0ff],.token-attribute[data-v-295ad0ff]{color:var(--syntax-attribute,var(--color-syntax-keywords))}.token-internalParam[data-v-295ad0ff]{color:var(--color-syntax-param-internal-name)}.type-identifier-link[data-v-295ad0ff]{color:var(--syntax-type,var(--color-syntax-other-type-names))}.token-removed[data-v-295ad0ff]{background-color:var(--color-highlight-red)}.token-added[data-v-295ad0ff]{background-color:var(--color-highlight-green)}.decorated-title[data-v-2d744be4]{direction:ltr}.decorator[data-v-2d744be4],.label[data-v-2d744be4]{color:var(--colors-secondary-label,var(--color-secondary-label))}.label[data-v-2d744be4]{font-size:1rem;line-height:1.4705882353;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}.empty-token[data-v-2d744be4]{font-size:0}.empty-token[data-v-2d744be4]:after{content:" ";font-size:1rem}.abstract[data-v-e1f11a1a],.link-block[data-v-e1f11a1a] .badge{margin-inline-start:2.294rem}.link-block .badge+.badge[data-v-e1f11a1a]{margin-inline-start:1rem}.link[data-v-e1f11a1a]{display:flex}.link-block .badge[data-v-e1f11a1a]{margin-top:.5rem}.link-block.has-inline-element[data-v-e1f11a1a]{display:flex;align-items:flex-start;flex-flow:row wrap}.link-block.has-inline-element .badge[data-v-e1f11a1a]{margin-inline-start:1rem;margin-top:0}.link-block .has-adjacent-elements[data-v-e1f11a1a]{padding-top:5px;padding-bottom:5px;display:inline-flex}.link-block[data-v-e1f11a1a],.link[data-v-e1f11a1a]{box-sizing:inherit}.link-block.changed[data-v-e1f11a1a],.link.changed[data-v-e1f11a1a]{padding-right:1rem;padding-left:2.1764705882rem;padding-top:8px;padding-bottom:8px;display:Line truncated
-9
View File
@@ -1,9 +0,0 @@
/*!
* This source file is part of the Swift.org open source project
*
* Copyright (c) 2021 Apple Inc. and the Swift project authors
* Licensed under Apache License v2.0 with Runtime Library Exception
*
* See https://swift.org/LICENSE.txt for license information
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/aside[data-v-50d24223]{-moz-column-break-inside:avoid;break-inside:avoid;border-radius:var(--aside-border-radius,var(--border-radius,4px));border-style:var(--aside-border-style,solid);border-block-width:var(--aside-border-width-block,0);border-inline-width:var(--aside-border-width-inline,6px 0);padding:.9411764706rem;text-align:start}aside .label[data-v-50d24223]{font-size:1rem;line-height:1.5294117647;font-weight:600;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}aside .label+[data-v-50d24223]{margin-top:var(--spacing-stacked-margin-small)}aside.deprecated[data-v-50d24223]{background-color:var(--color-aside-deprecated-background);border-color:var(--color-aside-deprecated-border);box-shadow:0 0 0 0 var(--color-aside-deprecated-border) inset,0 0 0 0 var(--color-aside-deprecated-border)}aside.deprecated .label[data-v-50d24223]{color:var(--color-aside-deprecated)}aside.experiment[data-v-50d24223]{background-color:var(--color-aside-experiment-background);border-color:var(--color-aside-experiment-border);box-shadow:0 0 0 0 var(--color-aside-experiment-border) inset,0 0 0 0 var(--color-aside-experiment-border)}aside.experiment .label[data-v-50d24223]{color:var(--color-aside-experiment)}aside.important[data-v-50d24223]{background-color:var(--color-aside-important-background);border-color:var(--color-aside-important-border);box-shadow:0 0 0 0 var(--color-aside-important-border) inset,0 0 0 0 var(--color-aside-important-border)}aside.important .label[data-v-50d24223]{color:var(--color-aside-important)}aside.note[data-v-50d24223]{background-color:var(--color-aside-note-background);border-color:var(--color-aside-note-border);box-shadow:0 0 0 0 var(--color-aside-note-border) inset,0 0 0 0 var(--color-aside-note-border)}aside.note .label[data-v-50d24223]{color:var(--color-aside-note)}aside.tip[data-v-50d24223]{background-color:var(--color-aside-tip-background);border-color:var(--color-aside-tip-border);box-shadow:0 0 0 0 var(--color-aside-tip-border) inset,0 0 0 0 var(--color-aside-tip-border)}aside.tip .label[data-v-50d24223]{color:var(--color-aside-tip)}aside.warning[data-v-50d24223]{background-color:var(--color-aside-warning-background);border-color:var(--color-aside-warning-border);box-shadow:0 0 0 0 var(--color-aside-warning-border) inset,0 0 0 0 var(--color-aside-warning-border)}aside.warning .label[data-v-50d24223]{color:var(--color-aside-warning)}code[data-v-c21375ec]{direction:ltr}code[data-v-c21375ec]:before{content:attr(data-before-code)}code[data-v-c21375ec]:after{content:attr(data-after-code)}code[data-v-c21375ec]:after,code[data-v-c21375ec]:before{display:block;position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}.CopyIcon[data-v-5308ccb8]{opacity:.8}.CheckmarkIcon[data-v-4c718f32],.CrossIcon[data-v-27a90ea3]{opacity:1;stroke:currentColor}.swift-file-icon.file-icon[data-v-c01a6890]{height:1rem}.file-icon[data-v-7c381064]{position:relative;align-items:flex-end;height:24px;margin:0 .5rem 0 1rem}.filename[data-v-c8c40662]{color:var(--text,var(--colors-secondary-label,var(--color-secondary-label)));font-size:.9411764706rem;line-height:1.1875;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin-top:1rem}@media only screen and (max-width:735px){.filename[data-v-c8c40662]{font-size:.8235294118rem;line-height:1.4285714286;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin-top:0}}.filename>a[data-v-c8c40662],.filename>span[data-v-c8c40662]{display:flex;align-items:center;line-height:normal}a[data-v-c8c40662]{color:var(--url,var(--color-link))}.code-line-container[data-v-28c1cdd6]{display:inline-block;width:100%;box-sizing:border-box}.code-number[data-v-28c1cdd6]{display:inline-block;padding:0 1rem 0 8px;text-align:right;min-width:2em;color:#666;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-number[data-v-28c1cdd6]:before{content:attr(data-line-number)}.code-listing:not(:has(.code-number)):has(.highlighted) .code-line-container[data-v-28c1cdd6]{padding-left:8px;border-left:4px solid transparent}.code-listing:not(:has(.code-number)):has(.highlighted) .highlighted[data-v-28c1cdd6]{border-left-color:var(--color-code-line-highlight-border)}.highlighted[data-v-28c1cdd6]{background:var(--line-highlight,var(--color-code-line-highlight))}.highlighted .code-number[data-v-28c1cdd6]{border-left:4px solid var(--color-code-line-highlight-border);padding-left:4px}.strikethrough[data-v-28c1cdd6]{text-decoration-line:line-through;text-decoration-color:var(--color-figure-gray);opacity:.85}pre[data-v-28c1cdd6]{padding:14px 0;display:flex;overflow:unset;-webkit-overflow-scrolling:touch;white-space:pre;word-wrap:normal;height:100%;-moz-tab-size:var(--code-indentationWidth,4);-o-tab-size:var(--code-indentationWidth,4);tab-size:var(--code-indentationWidth,4)}@media only screeLine truncated
@@ -1,9 +0,0 @@
/*!
* This source file is part of the Swift.org open source project
*
* Copyright (c) 2021 Apple Inc. and the Swift project authors
* Licensed under Apache License v2.0 with Runtime Library Exception
*
* See https://swift.org/LICENSE.txt for license information
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/.betainfo[data-v-ba3b3cc0]{font-size:.9411764706rem;padding:3rem 0;background-color:var(--color-fill-secondary)}.full-width-container .betainfo-container[data-v-ba3b3cc0]{max-width:820px;margin-left:auto;margin-right:auto;padding-left:80px;padding-right:80px;box-sizing:border-box}@media print{.full-width-container .betainfo-container[data-v-ba3b3cc0]{padding-left:20px;padding-right:20px;max-width:none}}@media only screen and (min-width:1251px){.full-width-container .betainfo-container[data-v-ba3b3cc0]{max-width:980px}}@media only screen and (min-width:1500px){.full-width-container .betainfo-container[data-v-ba3b3cc0]{max-width:1080px}}@media only screen and (max-width:735px){.full-width-container .betainfo-container[data-v-ba3b3cc0]{width:auto;padding-left:20px;padding-right:20px}}.static-width-container .betainfo-container[data-v-ba3b3cc0]{margin-left:auto;margin-right:auto;width:1536px;width:980px}@media only screen and (max-width:1250px){.static-width-container .betainfo-container[data-v-ba3b3cc0]{width:692px}}@media only screen and (max-width:735px){.static-width-container .betainfo-container[data-v-ba3b3cc0]{width:87.5%}}@media only screen and (max-width:320px){.static-width-container .betainfo-container[data-v-ba3b3cc0]{width:215px}}.betainfo-label[data-v-ba3b3cc0]{font-weight:600;font-size:.9411764706rem}.betainfo-content[data-v-ba3b3cc0] p{margin-bottom:10px}a[data-v-2ca5e993]{text-decoration:underline;color:inherit;font-weight:600}.summary-section[data-v-3aa6f694]:last-of-type{margin-right:0}@media only screen and (max-width:735px){.summary-section[data-v-3aa6f694]{margin-right:0}}.title[data-v-246c819c]{color:var(--colors-text,var(--color-text));font-size:.8235294118rem;margin-right:.5rem;text-rendering:optimizeLegibility}.language[data-v-0e39c0ba]{padding-bottom:10px;justify-content:flex-end}.language-list[data-v-0e39c0ba],.language[data-v-0e39c0ba]{font-size:.8235294118rem;line-height:1.4285714286;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin-top:0;display:flex;align-items:center}.language-option.swift[data-v-0e39c0ba]{padding-right:10px;border-right:1px solid var(--colors-secondary-label,var(--color-secondary-label))}.language-option.objc[data-v-0e39c0ba]{padding-left:10px}.view-more-link[data-v-3f54e653]{font-size:.8235294118rem;line-height:1.2857142857;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);display:flex;flex-flow:row-reverse;margin-bottom:1.3rem}.documentation-hero[data-v-0958f035]{color:var(--color-documentation-intro-figure,var(--color-figure-gray));overflow:hidden;position:relative;padding-inline-end:var(--doc-hero-right-offset)}.documentation-hero[data-v-0958f035]:before{content:"";background:var(--standard-accent-color,var(--color-documentation-intro-fill,var(--color-fill-tertiary)));position:absolute;width:100%;height:100%}.documentation-hero[data-v-0958f035]:after{background:transparent;opacity:.85;width:100%;position:absolute;content:"";height:100%;inset-inline-start:0;top:0}@media screen{[data-color-scheme=dark] .documentation-hero[data-v-0958f035]:after{opacity:.55}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .documentation-hero[data-v-0958f035]:after{opacity:.55}}.documentation-hero .icon[data-v-0958f035]{position:absolute;margin-top:10px;margin-inline-end:25px;inset-inline-end:0;width:250px;height:calc(100% - 20px);box-sizing:border-box}@media only screen and (max-width:735px){.documentation-hero .icon[data-v-0958f035]{display:none}}.documentation-hero .background-icon[data-v-0958f035]{color:var(--color-documentation-intro-accent,var(--color-figure-gray-secondary));display:block;width:250px;height:auto;opacity:.15;mix-blend-mode:normal;position:absolute;top:50%;inset-inline-start:0;transform:translateY(-50%);max-height:100%}.documentation-hero .background-icon[data-v-0958f035] img,.documentation-hero .background-icon[data-v-0958f035] svg{width:100%;height:100%}@media screen{[data-color-scheme=dark] .documentation-hero .background-icon[data-v-0958f035]{mix-blend-mode:normal;opacity:.15}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .documentation-hero .background-icon[data-v-0958f035]{mix-blend-mode:normal;opacity:.15}}.documentation-hero__content[data-v-0958f035]:not(.minimized-hero){padding-top:2.3529411765rem;padding-bottom:2.3529411765rem;position:relative;z-index:1}.full-width-container .documentation-hero__content[data-v-0958f035]:not(.minimized-hero){max-width:820px;margin-left:auto;margin-right:auto;padding-left:80px;padding-right:80px;box-sizing:border-box}@media print{.full-width-container .documentation-hero__content[data-v-0958f035]:not(.minimized-hero){padding-left:20px;padding-right:20px;max-width:none}}@media only screen and (min-width:1251px){.full-width-container .documentation-hero__content[data-v-0958f035]:not(.minimized-hero){max-width:980px}}@media only screen and (min-width:150Line truncated
-9
View File
@@ -1,9 +0,0 @@
/*!
* This source file is part of the Swift.org open source project
*
* Copyright (c) 2021 Apple Inc. and the Swift project authors
* Licensed under Apache License v2.0 with Runtime Library Exception
*
* See https://swift.org/LICENSE.txt for license information
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/.color-scheme-toggle[data-v-0c0360ce]{--toggle-color-fill:var(--color-button-background);--toggle-color-text:var(--color-fill-blue);font-size:.7058823529rem;line-height:1.3333333333;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);border:1px solid var(--toggle-color-fill);border-radius:var(--toggle-border-radius-outer,var(--border-radius,4px));display:inline-flex;padding:1px}@media screen{[data-color-scheme=dark] .color-scheme-toggle[data-v-0c0360ce]{--toggle-color-text:var(--color-figure-blue)}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .color-scheme-toggle[data-v-0c0360ce]{--toggle-color-text:var(--color-figure-blue)}}@media print{.color-scheme-toggle[data-v-0c0360ce]{display:none}}:root.no-js .color-scheme-toggle[data-v-0c0360ce]{visibility:hidden}input[data-v-0c0360ce]{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.fromkeyboard label[data-v-0c0360ce]:focus-within{outline:4px solid var(--color-focus-color);outline-offset:1px}.text[data-v-0c0360ce]{border:1px solid transparent;border-radius:var(--toggle-border-radius-inner,2px);color:var(--toggle-color-text);display:inline-block;text-align:center;padding:1px 6px;min-width:42px;box-sizing:border-box}.text[data-v-0c0360ce]:hover{cursor:pointer}input:checked+.text[data-v-0c0360ce]{--toggle-color-text:var(--color-button-text);background:var(--toggle-color-fill);border-color:var(--toggle-color-fill)}.footer[data-v-f1d65b2a]{border-top:1px solid var(--color-grid)}.row[data-v-f1d65b2a]{margin-left:auto;margin-right:auto;width:1536px;width:980px;display:flex;flex-direction:row-reverse;margin:20px auto}@media only screen and (max-width:1250px){.row[data-v-f1d65b2a]{width:692px}}@media only screen and (max-width:735px){.row[data-v-f1d65b2a]{width:87.5%}}@media only screen and (max-width:320px){.row[data-v-f1d65b2a]{width:215px}}@media only screen and (max-width:735px){.row[data-v-f1d65b2a]{width:100%;padding:0 .9411764706rem;box-sizing:border-box}}.InitialLoadingPlaceholder[data-v-35c356b6]{background:var(--colors-loading-placeholder-background,var(--color-loading-placeholder-background));height:100vh;width:100%}.svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-light,var(--color-svg-icon));transform:scale(1);-webkit-transform:scale(1);overflow:visible}.theme-dark .svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}@media screen{[data-color-scheme=dark] .svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}.svg-icon.icon-inline[data-v-06e5463e]{display:inline-block;vertical-align:middle;fill:currentColor}.svg-icon.icon-inline[data-v-06e5463e] .svg-icon-stroke{stroke:currentColor}[data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-light,var(--color-svg-icon))}.theme-dark[data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}@media screen{[data-color-scheme=dark][data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto][data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}.inline-chevron-right-icon[data-v-7413f2a0]{transform:scaleX(var(--scale-inline,1))}.suggest-lang[data-v-c2dca0ae]{background:#000;color:#fff;display:flex;justify-content:center;border-bottom:1px solid var(--color-grid)}.suggest-lang__wrapper[data-v-c2dca0ae]{display:flex;align-items:center;width:100%;max-width:var(--wrapper-max-width,1920px);margin:0 .9411764706rem;position:relative;height:52px}.suggest-lang__link[data-v-c2dca0ae]{font-size:.8235294118rem;line-height:1.4285714286;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin:0 auto;color:#09f}.suggest-lang__close-icon-wrapper[data-v-c2dca0ae]{position:absolute;right:-.2352941176rem;top:0;height:100%;box-sizing:border-box;display:flex;align-items:center;z-index:1}.suggest-lang__close-icon-button[data-v-c2dca0ae]{padding:.2352941176rem}.suggest-lang__close-icon-button .close-icon[data-v-c2dca0ae]{width:8px;display:block}.suggest-lang .inline-chevron-right-icon[data-v-c2dca0ae]{padding-left:.2352941176rem;width:8px}select[data-v-d21858a2]{font-size:.7058823529rem;line-height:1.3333333333;font-weight:600;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);color:var(--color-fill-blue);padding-right:15px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;cursor:pointer}select[data-v-d21858a2]:hover{text-decoration:underline}.locale-selectoLine truncated
-9
View File
@@ -1,9 +0,0 @@
/*!
* This source file is part of the Swift.org open source project
*
* Copyright (c) 2021 Apple Inc. and the Swift project authors
* Licensed under Apache License v2.0 with Runtime Library Exception
*
* See https://swift.org/LICENSE.txt for license information
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/.nav-title-content[data-v-854b4dd6]{max-width:100%}.title[data-v-854b4dd6]{color:var(--color-nav-root-title,currentColor);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:inline-block;vertical-align:top;max-width:296px}@media only screen and (max-width:1023px){.title[data-v-854b4dd6]{max-width:205px}}@media only screen and (max-width:767px){.title[data-v-854b4dd6]{flex-basis:fill;display:initial;vertical-align:initial;max-width:none}}.subhead[data-v-854b4dd6]{color:var(--color-nav-root-subhead)}.theme-dark .subhead[data-v-854b4dd6]{color:var(--color-nav-dark-root-subhead)}.mobile-dropdown[data-v-2c27d339]{box-sizing:border-box}.nav--in-breakpoint-range .mobile-dropdown[data-v-2c27d339]{padding-left:.2352941176rem;padding-right:.2352941176rem}.mobile-dropdown ul[data-v-2c27d339]{list-style:none}.mobile-dropdown .option[data-v-2c27d339]{cursor:pointer;font-size:.7058823529rem;padding:.5rem 0;display:block;text-decoration:none;color:inherit}.mobile-dropdown .option[data-v-2c27d339]:focus{outline-offset:0}.mobile-dropdown .option.depth1[data-v-2c27d339]{padding-left:.4705882353rem}.active[data-v-2c27d339],.tutorial.router-link-active[data-v-2c27d339]{font-weight:600}.active[data-v-2c27d339]:focus,.tutorial.router-link-active[data-v-2c27d339]:focus{outline:none}.chapter-list[data-v-2c27d339]:not(:first-child){margin-top:1rem}.chapter-name[data-v-2c27d339],.tutorial[data-v-2c27d339]{padding:.5rem 0;font-size:1rem;line-height:1.4705882353;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}.section-list[data-v-2c27d339],.tutorial-list[data-v-2c27d339]{padding:0 .5882352941rem}.chapter-list:last-child .tutorial-list[data-v-2c27d339]:last-child{padding-bottom:10em}.chapter-list[data-v-2c27d339]{display:inline-block}.form-element[data-v-f934959a]{position:relative}.form-dropdown[data-v-f934959a]{font-size:1rem;line-height:1.2352941176;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);display:block;box-sizing:border-box;width:100%;height:3.3em;color:var(--color-dropdown-text);padding:1.1176470588rem 2.3529411765rem 0 .9411764706rem;text-align:left;border:1px solid var(--color-dropdown-border);border-radius:var(--border-radius,4px);background-clip:padding-box;margin-bottom:.8235294118rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;min-height:32px}.form-dropdown[data-v-f934959a]:focus{box-shadow:0 0 0 4px var(--color-focus-color);outline:none;border-color:var(--color-focus-border-color)}.form-dropdown.no-eyebrow[data-v-f934959a]{padding-top:0}.form-dropdown[data-v-f934959a]:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--color-dropdown-text)}.form-dropdown[data-v-f934959a]::-ms-expand{opacity:0}.form-dropdown~.form-icon[data-v-f934959a]{position:absolute;display:block;pointer-events:none;fill:var(--color-figure-gray-tertiary);right:14px;width:13px;height:auto;top:50%;transform:translateY(-50%)}.is-open .form-dropdown~.form-icon[data-v-f934959a]{transform:translateY(-50%) scale(-1)}@media only screen and (max-width:735px){.form-dropdown~.form-icon[data-v-f934959a]{right:14px}}.form-dropdown~.form-label[data-v-f934959a]{font-size:.7058823529rem;line-height:1.75;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);position:absolute;top:.4705882353rem;left:17px;color:var(--color-figure-gray-secondary);pointer-events:none;padding:0;z-index:1}.form-dropdown[data-v-f934959a] option{color:var(--color-dropdown-text)}.form-dropdown-selectnone[data-v-f934959a]{color:transparent}.form-dropdown-selectnone~.form-label[data-v-f934959a]{font-size:1rem;line-height:1.2352941176;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);top:19px;left:17px;color:var(--color-figure-gray-tertiary)}.form-dropdown-selectnone[data-v-f934959a]:-moz-focusring{text-shadow:none}.form-dropdown-selectnone[data-v-f934959a]::-ms-value{display:none}.theme-dark .form-dropdown[data-v-f934959a]{color:var(--color-dropdown-dark-text);background-color:var(--color-dropdown-dark-background);border-color:var(--color-dropdown-dark-border)}.theme-dark .form-dropdown~.form-label[data-v-f934959a]{color:#ccc}.theme-dark .form-dropdown[data-v-f934959a]:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--color-dropdown-dark-text)}.theme-dark .form-dropdown.form-dropdown-selectnone[data-v-f934959a]{color:transparent}.theme-dark .form-dropdown.form-dropdown-selectnone[data-v-f934959a]:-moz-focusring{text-shadow:none}.theme-dark .form-dropdown-selectnone~.form-label[data-v-f934959a]{color:#b0b0b0}.dropdown-small[data-v-6adda760]{height:30px;display:flex;align-items:center;position:relative;background:var(--color-fill)}.dropdown-small .form-dropdown-toggle[data-v-6adda760]{line-height:1.5;font-size:12px;padding-top:0;padding-bottom:0;padding-left:20px;min-height:unseLine truncated
-9
View File
@@ -1,9 +0,0 @@
/*!
* This source file is part of the Swift.org open source project
*
* Copyright (c) 2021 Apple Inc. and the Swift project authors
* Licensed under Apache License v2.0 with Runtime Library Exception
*
* See https://swift.org/LICENSE.txt for license information
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
*/.tutorials-navigation-link[data-v-e9f9b59c]{color:var(--color-tutorials-overview-navigation-link);transition:color .3s linear}.tutorials-navigation-link[data-v-e9f9b59c]:hover{text-decoration:none;transition:none;color:var(--color-tutorials-overview-navigation-link-hover)}.tutorials-navigation-link.active[data-v-e9f9b59c]{color:var(--color-tutorials-overview-navigation-link-active)}.tutorials-navigation-list[data-v-4e0180fa]{list-style-type:none;margin:0}.tutorials-navigation-list li+li[data-v-4e0180fa]:not(.volume--named){margin-top:24px}.tutorials-navigation-list .volume--named+.volume--named[data-v-4e0180fa]{margin-top:12px}.expand-enter-active,.expand-leave-active{transition:height .3s ease-in-out;overflow:hidden}.expand-enter,.expand-leave-to{height:0}.toggle[data-v-489416f8]{color:#f0f0f0;line-height:21px;display:flex;align-items:center;width:100%;font-weight:600;padding:6px 6px 6px 0;border-bottom:1px solid #2a2a2a;text-decoration:none;box-sizing:border-box}@media only screen and (max-width:767px){.toggle[data-v-489416f8]{padding-right:6px;border-bottom-color:hsla(0,0%,100%,.1)}}.toggle .text[data-v-489416f8]{word-break:break-word}.toggle[data-v-489416f8]:hover{text-decoration:none}.toggle .toggle-icon[data-v-489416f8]{display:inline-block;transition:transform .2s ease-in;height:.4em;width:.4em;margin-left:auto;margin-right:.2em}.collapsed .toggle .toggle-icon[data-v-489416f8]{transform:rotate(45deg)}.collapsed .toggle[data-v-489416f8],.collapsed .toggle[data-v-489416f8]:hover{color:#b0b0b0}.tutorials-navigation-menu-content[data-v-489416f8]{opacity:1;transition:height .2s ease-in,opacity .2s ease-in}.collapsed .tutorials-navigation-menu-content[data-v-489416f8]{height:0;opacity:0}.tutorials-navigation-menu-content .tutorials-navigation-list[data-v-489416f8]{padding:24px 0 12px 0}.tutorials-navigation[data-v-79093ed6]{font-size:1rem;line-height:1.2352941176;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}.nav-title-content[data-v-854b4dd6]{max-width:100%}.title[data-v-854b4dd6]{color:var(--color-nav-root-title,currentColor);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:inline-block;vertical-align:top;max-width:296px}@media only screen and (max-width:1023px){.title[data-v-854b4dd6]{max-width:205px}}@media only screen and (max-width:767px){.title[data-v-854b4dd6]{flex-basis:fill;display:initial;vertical-align:initial;max-width:none}}.subhead[data-v-854b4dd6]{color:var(--color-nav-root-subhead)}.theme-dark .subhead[data-v-854b4dd6]{color:var(--color-nav-dark-root-subhead)}.nav[data-v-54bcce6d] .nav-menu{padding-top:0}.nav[data-v-54bcce6d] .nav-menu .nav-menu-items{margin-left:auto}@media only screen and (min-width:768px){.nav[data-v-54bcce6d] .nav-menu .nav-menu-items .in-page-navigation{display:none}}@media only screen and (min-width:320px)and (max-width:735px){.nav[data-v-54bcce6d] .nav-menu .nav-menu-items{padding:18px 0 40px}}.hero[data-v-400ffab5]{margin-left:auto;margin-right:auto;width:1536px;width:980px;padding-bottom:4.7058823529rem;padding-top:4.7058823529rem}@media only screen and (max-width:1250px){.hero[data-v-400ffab5]{width:692px}}@media only screen and (max-width:735px){.hero[data-v-400ffab5]{width:87.5%}}@media only screen and (max-width:320px){.hero[data-v-400ffab5]{width:215px}}@media screen{.hero[data-v-400ffab5]{--color-fill:#fff;--color-fill-secondary:#f7f7f7;--color-fill-tertiary:#f0f0f0;--color-fill-quaternary:#282828;--color-fill-blue:#00f;--color-fill-light-blue-secondary:#d1d1ff;--color-fill-gray:#ccc;--color-fill-gray-secondary:#f5f5f5;--color-fill-gray-tertiary:#f0f0f0;--color-fill-gray-quaternary:#f0f0f0;--color-fill-green-secondary:#f0fff0;--color-fill-orange-secondary:#fffaf6;--color-fill-red-secondary:#fff0f5;--color-figure-blue:#36f;--color-figure-gray:#000;--color-figure-gray-secondary:#666;--color-figure-gray-secondary-alt:#666;--color-figure-gray-tertiary:#666;--color-figure-green:green;--color-figure-light-gray:#666;--color-figure-orange:#c30;--color-figure-red:red;--color-tutorials-teal:#000;--color-article-background:var(--color-fill-tertiary);--color-article-body-background:var(--color-fill);--color-aside-deprecated:var(--color-figure-gray);--color-aside-deprecated-background:var(--color-fill-orange-secondary);--color-aside-deprecated-border:var(--color-figure-orange);--color-aside-experiment:var(--color-figure-gray);--color-aside-experiment-background:var(--color-fill-gray-secondary);--color-aside-experiment-border:var(--color-figure-light-gray);--color-aside-important:var(--color-figure-gray);--color-aside-important-background:var(--color-fill-gray-secondary);--color-aside-important-border:var(--color-figure-light-gray);--color-aside-note:var(--color-figure-gray);--color-aside-note-background:var(--color-fill-gray-secondary);--color-aside-note-border:var(--color-figure-light-gray);--color-aside-tip:var(--color-figure-gray);--color-aside-tip-background:var(--color-fill-gray-secondaryLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"content","content":[{"level":2,"type":"heading","anchor":"Overview","text":"Overview"},{"type":"paragraph","inlineContent":[{"type":"codeVoice","code":"AmiiboService"},{"type":"text","text":" fetches data from the "},{"type":"reference","identifier":"https:\/\/www.amiiboapi.org","isActive":true},{"type":"text","text":" and returns it as Swift models."}]},{"type":"paragraph","inlineContent":[{"type":"text","text":"The library does not expose a generated client that maps one-to-one to the REST endpoints. Instead, "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","isActive":true},{"type":"text","text":" offers one method per resource, takes a typed filter, returns sorted models, and throws a single "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" type."}]},{"level":2,"type":"heading","anchor":"Installation","text":"Installation"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Add the package and the "},{"type":"codeVoice","code":"AmiiboService"},{"type":"text","text":" product to "},{"type":"codeVoice","code":"Package.swift"},{"type":"text","text":":"}]},{"type":"codeListing","syntax":"swift","code":["let package = Package("," \/\/ name, platforms, products, etc."," dependencies: ["," .package(url: \"https:\/\/github.com\/rock-n-code\/amiibo-service\", from: \"2.0.0\"),"," ],"," targets: ["," .target("," name: \"SomeTarget\","," dependencies: ["," .product(name: \"AmiiboService\", package: \"amiibo-service\"),"," ]"," ),"," ]",")"]},{"type":"paragraph","inlineContent":[{"type":"text","text":"In Xcode, add the package URL under "},{"inlineContent":[{"type":"text","text":"File › Add Package Dependencies…"}],"type":"strong"},{"type":"text","text":"."}]},{"name":"Important","type":"aside","content":[{"inlineContent":[{"type":"text","text":"Requires Swift 6.2 or later, and iOS 13, macOS 10.15, tvOS 13, visionOS 1, or watchOS 6 or later."}],"type":"paragraph"}],"style":"important"},{"level":2,"type":"heading","anchor":"Usage","text":"Usage"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Create an "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","isActive":true},{"type":"text","text":" and call its methods. When you omit the filter, the method returns every item:"}]},{"type":"codeListing","syntax":"swift","code":["import AmiiboService","","let service = AmiiboService()","","\/\/ All amiibos","let amiibos = try await service.getAmiibos()","","\/\/ Amiibos whose name contains \"zelda\"","let zeldaAmiibos = try await service.getAmiibos(.init(name: \"zelda\"))","","\/\/ Amiibo series, types, game characters, and game series","let series = try await service.getAmiiboSeries()","let types = try await service.getAmiiboTypes()","let characters = try await service.getGameCharacters()","let gameSeries = try await service.getGameSeries()","","\/\/ Date of the last data update (UTC)","let lastUpdated = try await service.getLastUpdated()"]},{"type":"paragraph","inlineContent":[{"type":"text","text":"Results are sorted in ascending order by "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier","isActive":true},{"type":"text","text":" or by "},{"type":"codeVoice","code":"key"},{"type":"text","text":"."}]},{"level":2,"type":"heading","anchor":"Error-handling","text":"Error handling"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Every method throws "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":". When nothing matches, "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService\/getAmiibos(_:)","isActive":true},{"type":"text","text":" returns an empty array, while the other list methods throw "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError\/notFound","isActive":true},{"type":"text","text":":"}]},{"type":"codeListing","syntax":"swift","code":["do throws(AmiiboServiceError) {"," let series = try await service.getAmiiboSeries(.init(key: \"0x01\"))","} catch .notFound {"," \/\/ No amiibo series has this key.","} catch {"," \/\/ .badRequest, .cancelled, .decoding, .notAvailable, .undocumented, or .unknown","}"]},{"level":2,"type":"heading","anchor":"Caching","text":"Caching"},{"type":"paragraph","inlineContent":[{"type":"text","text":"The library has no built-in cache. The Amiibo API asks regular consumers to cache responses."}]},{"type":"paragraph","inlineContent":[{"type":"text","text":"To cache at the HTTP level, give "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiibLine truncated
@@ -1 +0,0 @@
{"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"languages":["swift"]}]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"title":"Amiibo","externalID":"s:13AmiiboService0A0V","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"roleHeading":"Structure","symbolKind":"struct"},"kind":"symbol","seeAlsoSections":[{"anchor":"Models","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeries","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboType","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeries"],"title":"Models"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"},"topicSections":[{"title":"Nested Models","anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]},{"title":"Instance Properties","generated":true,"anchor":"Instance-Properties","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameCharacter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameSeries","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/imageURL","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/name","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/release-swift.property","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/series","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/type"]},{"title":"Default Implementations","generated":true,"anchor":"Default-Implementations","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Equatable-Implementations"]}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService"]]},"sections":[],"abstract":[{"type":"text","text":"A model that represents an amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboType":{"navigatorTitle":[{"kind":"identifier","text":"AmiiboType"}],"title":"AmiiboType","url":"\/documentation\/amiiboservice\/amiibotype","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"AmiiboType","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboType","kind":"symbol","abstract":[{"text":"A model that represents an amiibo type.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/identifier":{"title":"identifier","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/identifier","kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"type":"text","text":"The full 16-character hexadecimal identifier, composed of the "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","isActive":true,"type":"reference"},{"type":"text","text":" and "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","isActive":true,"type":"reference"},{"type":"text","text":"."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topLine truncated
@@ -1 +0,0 @@
{"kind":"symbol","primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}],"kind":"declarations"}],"metadata":{"roleHeading":"Operator","title":"!=(_:_:)","role":"symbol","extendedModule":"Swift","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"kind":"text","text":") -> "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"modules":[{"name":"AmiiboService","relatedModules":["Swift"]}],"externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V","symbolKind":"op"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)","interfaceLanguage":"swift"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/!=(_:_:)"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/!=(_:_:)":{"title":"!=(_:_:)","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/!=(_:_:)","kind":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)","abstract":[]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"sections":[],"topicSections":[{"anchor":"Operators","title":"Operators","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)"]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/equatable-implementations"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"API Collection","modules":[{"name":"AmiiboService"}],"role":"collectionGroup","title":"Equatable Implementations"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Equatable-Implementations"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"kind":"article","references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/!=(_:_:)":{"title":"!=(_:_:)","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/!=(_:_:)","kind":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)","abstract":[]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"relationshipsSections":[{"identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"kind":"relationships","type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Game","kind":"identifier"}],"languages":["swift"]}]}],"sections":[],"topicSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/usages"],"anchor":"Instance-Properties","title":"Instance Properties"},{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/Equatable-Implementations"],"anchor":"Default-Implementations","title":"Default Implementations"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"anchor":"Nested-Models","title":"Nested Models"}],"metadata":{"title":"Amiibo.Game","externalID":"s:13AmiiboService0A0V4GameV","modules":[{"name":"AmiiboService"}],"extendedModule":"AmiiboService","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"navigatorTitle":[{"kind":"identifier","text":"Game"}],"roleHeading":"Structure","symbolKind":"struct"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"},"abstract":[{"type":"text","text":"A model that represents a game related to an amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/SQ":{"type":"unresolvable","title":"Swift.Equatable","identifier":"doc:\/\/AmiiboService\/SQ"},"doc://AmiiboService/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/AmiiboService\/s8SendableP"},"doc://AmiiboService/s16SendableMetatypeP":{"type":"unresolvable","title":"Swift.SendableMetatype","identifier":"doc:\/\/AmiiboService\/s16SendableMetatypeP"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/identifiers":{"title":"identifiers","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game\/identifiers","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifiers"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"]"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers","type":"topic","abstract":[{"text":"A list of game identifiers associated with this game.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"title":"Amiibo.Usage","url":"\/documentation\/amiiboservice\/amiibo\/usage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","kind":"symbol","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.PlaLine truncated
@@ -1 +0,0 @@
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/game\/!=(_:_:)"]}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)","interfaceLanguage":"swift"},"sections":[],"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"static"},{"text":" ","kind":"text"},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"languages":["swift"],"platforms":["macOS"]}]}],"metadata":{"role":"symbol","title":"!=(_:_:)","externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V4GameV","roleHeading":"Operator","modules":[{"relatedModules":["Swift"],"name":"AmiiboService"}],"symbolKind":"op","fragments":[{"text":"static","kind":"keyword"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"keyword","text":"borrowing"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"kind":"keyword","text":"borrowing"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"extendedModule":"Swift"},"references":{"doc://AmiiboService/documentation/AmiiboService":{"url":"\/documentation\/amiiboservice","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}],"title":"AmiiboService","type":"topic","kind":"symbol","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/!=(_:_:)":{"title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/game\/!=(_:_:)","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)","kind":"symbol","abstract":[]}}}
@@ -1 +0,0 @@
{"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"article","metadata":{"role":"collectionGroup","title":"Equatable Implementations","modules":[{"name":"AmiiboService"}],"roleHeading":"API Collection"},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/Equatable-Implementations","interfaceLanguage":"swift"},"topicSections":[{"title":"Operators","generated":true,"anchor":"Operators","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)"]}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"sections":[],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/!=(_:_:)":{"title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/game\/!=(_:_:)","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)","kind":"symbol","abstract":[]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifiers"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"]"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game\/identifiers"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"roleHeading":"Instance Property","title":"identifiers","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifiers"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"]"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V4GameV11identifiersSaySSGvp","symbolKind":"property"},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"sections":[],"abstract":[{"text":"A list of game identifiers associated with this game.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/identifiers":{"title":"identifiers","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game\/identifiers","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifiers"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"]"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers","type":"topic","abstract":[{"text":"A list of game identifiers associated with this game.","type":"text"}]}}}
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"The name of this game."}],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name"},"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game\/name"],"traits":[{"interfaceLanguage":"swift"}]}],"metadata":{"externalID":"s:13AmiiboService0A0V4GameV4nameSSvp","role":"symbol","title":"name","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"AmiiboService"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}],"kind":"declarations"}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/name":{"kind":"symbol","title":"name","url":"\/documentation\/amiiboservice\/amiibo\/game\/name","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name","type":"topic","abstract":[{"type":"text","text":"The name of this game."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"usages"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Usage","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","preciseIdentifier":"s:13AmiiboService0A0V5UsageV"},{"kind":"text","text":"]?"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game\/usages"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"title":"usages","externalID":"s:13AmiiboService0A0V4GameV6usagesSayAC5UsageVGSgvp","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"usages"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Usage","preciseIdentifier":"s:13AmiiboService0A0V5UsageV"},{"kind":"text","text":"]?"}],"roleHeading":"Instance Property","symbolKind":"property"},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/usages","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"sections":[],"abstract":[{"type":"text","text":"A list of amiibo usages within this game, or "},{"code":"nil","type":"codeVoice"},{"type":"text","text":" unless the request sets "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","type":"reference","isActive":true},{"type":"text","text":"."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/usages":{"title":"usages","url":"\/documentation\/amiiboservice\/amiibo\/game\/usages","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"usages"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V5UsageV","text":"Usage"},{"kind":"text","text":"]?"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/usages","abstract":[{"type":"text","text":"A list of amiibo usages within this game, or "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" unless the request sets "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage"},{"type":"text","text":"."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showUsage":{"title":"showUsage","url":"\/documentation\/amiiboservice\/amiibofilter\/showusage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showUsage"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"kind":"text","text":"?"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","abstract":[{"type":"text","text":"A flag that indicates whether to include related games and their amiibo usages in "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property"},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/platform-swift.property":{"title":"platform","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.property","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"platform"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Platform","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","type":"topic","abLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameCharacter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/gamecharacter"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"roleHeading":"Instance Property","title":"gameCharacter","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameCharacter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V13gameCharacterSSvp","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameCharacter"},"abstract":[{"type":"text","text":"The name of the game character associated with this amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/gameCharacter":{"title":"gameCharacter","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/gamecharacter","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameCharacter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameCharacter","type":"topic","abstract":[{"type":"text","text":"The name of the game character associated with this amiibo."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameSeries","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/gameseries"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"title":"gameSeries","externalID":"s:13AmiiboService0A0V10gameSeriesSSvp","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameSeries","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","symbolKind":"property"},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameSeries"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"sections":[],"abstract":[{"type":"text","text":"The name of the game series associated with this amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/gameSeries":{"title":"gameSeries","url":"\/documentation\/amiiboservice\/amiibo\/gameseries","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameSeries"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameSeries","kind":"symbol","abstract":[{"type":"text","text":"The name of the game series associated with this amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/head"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"title":"head","externalID":"s:13AmiiboService0A0V4headSSvp","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"roleHeading":"Instance Property","symbolKind":"property"},"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"sections":[],"abstract":[{"text":"The first 8 hexadecimal characters of the amiibo identifier.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/head":{"kind":"symbol","title":"head","url":"\/documentation\/amiiboservice\/amiibo\/head","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","type":"topic","abstract":[{"text":"The first 8 hexadecimal characters of the amiibo identifier.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":" { "},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/identifier"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"Instance Property","title":"identifier","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V10identifierSSvp","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier","interfaceLanguage":"swift"},"abstract":[{"text":"The full 16-character hexadecimal identifier, composed of the ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head"},{"text":" and ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail"},{"text":".","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/identifier":{"title":"identifier","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/identifier","kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"type":"topic","abstract":[{"type":"text","text":"The full 16-character hexadecimal identifier, composed of the "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","isActive":true,"type":"reference"},{"type":"text","text":" and "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","isActive":true,"type":"reference"},{"type":"text","text":"."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/head":{"kind":"symbol","title":"head","url":"\/documentation\/amiiboservice\/amiibo\/head","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","type":"topic","abstract":[{"text":"The first 8 hexadecimal characters of the amiibo identifier.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/tail":{"title":"tail","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/tail","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"type":"topic","abstract":[{"type":"text","text":"The last 8 hexadecimal characters of the amiibo identifier."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"image"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/image"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"role":"symbol","title":"image","externalID":"s:13AmiiboService0A0V5imageSSvp","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"image","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"AmiiboService"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"kind":"symbol","abstract":[{"type":"text","text":"A URL string pointing to the image of this amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/image":{"title":"image","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/image","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"image"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","type":"topic","abstract":[{"type":"text","text":"A URL string pointing to the image of this amiibo."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"imageURL"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"URL","preciseIdentifier":"s:10Foundation3URLV"},{"kind":"text","text":"? { "},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/imageurl"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"roleHeading":"Instance Property","title":"imageURL","role":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"imageURL"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"URL","preciseIdentifier":"s:10Foundation3URLV"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V8imageURL10Foundation0D0VSgvp","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/imageURL"},"abstract":[{"type":"text","text":"A URL constructed from the "},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image"},{"type":"text","text":" string, if valid."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/image":{"title":"image","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/image","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"image"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","type":"topic","abstract":[{"type":"text","text":"A URL string pointing to the image of this amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/imageURL":{"title":"imageURL","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/imageurl","kind":"symbol","fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"imageURL"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"URL","preciseIdentifier":"s:10Foundation3URLV"},{"kind":"text","text":"?"}],"type":"topic","abstract":[{"type":"text","text":"A URL constructed from the "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","isActive":true},{"type":"text","text":" string, if valid."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/imageURL"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}]}]}],"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/name"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"role":"symbol","title":"name","externalID":"s:13AmiiboService0A0V4nameSSvp","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"modules":[{"name":"AmiiboService"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/name"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"abstract":[{"type":"text","text":"The name of this amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/name":{"title":"name","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/name","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/name","type":"topic","abstract":[{"type":"text","text":"The name of this amiibo."}]}}}
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"The related games of this amiibo, grouped by platform."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","interfaceLanguage":"swift"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.property"]}],"metadata":{"role":"symbol","title":"platform","externalID":"s:13AmiiboService0A0V8platformAC8PlatformVSgvp","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"platform"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV","text":"Platform"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"platform"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","text":"Platform"},{"kind":"text","text":"?"}],"languages":["swift"]}]},{"kind":"content","content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"inlineContent":[{"type":"text","text":"This value is "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" unless the request sets "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","isActive":true},{"type":"text","text":" or "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","isActive":true},{"type":"text","text":", or when the amiibo has no related games."}],"type":"paragraph"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showUsage":{"title":"showUsage","url":"\/documentation\/amiiboservice\/amiibofilter\/showusage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showUsage"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"kind":"text","text":"?"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","abstract":[{"type":"text","text":"A flag that indicates whether to include related games and their amiibo usages in "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property"},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/platform-swift.property":{"title":"platform","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.property","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"platform"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Platform","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","type":"topic","abstract":[{"type":"text","text":"The related games of this amiibo, grouped by platform."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showGames":{"title":"showGames","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/showgames","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showGames"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","type":"topic","abstract":[{"type":"text","text":"A flag that indicates whether to include related games in "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","isActive":true},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"Line truncated
@@ -1 +0,0 @@
{"topicSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/wiiU"],"anchor":"Instance-Properties","title":"Instance Properties"},{"generated":true,"anchor":"Default-Implementations","title":"Default Implementations","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/Equatable-Implementations"]}],"relationshipsSections":[{"title":"Conforms To","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"kind":"relationships","type":"conformsTo"}],"seeAlsoSections":[{"title":"Nested Models","anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"generated":true}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}]}]}],"metadata":{"role":"symbol","modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V8PlatformV","roleHeading":"Structure","title":"Amiibo.Platform","symbolKind":"struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"extendedModule":"AmiiboService"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"},"abstract":[{"text":"A model that represents a collection of ","type":"text"},{"code":"Switch","type":"codeVoice"},{"text":", ","type":"text"},{"code":"Switch 2","type":"codeVoice"},{"type":"text","text":", "},{"code":"3DS","type":"codeVoice"},{"type":"text","text":", and "},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"title":"Amiibo.Usage","url":"\/documentation\/amiiboservice\/amiibo\/usage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","kind":"symbol","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}]},"doc://AmiiboService/s16SendableMetatypeP":{"identifier":"doc:\/\/AmiiboService\/s16SendableMetatypeP","title":"Swift.SendableMetatype","type":"unresolvable"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/switch2":{"title":"switch2","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch2","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"switch2"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"kind":"text","text":"]"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","kind":"symbol","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/SQ":{"identifier":"doc:\/\/AmiiboService\/SQ","type":"unresolvable","title":"Swift.Equatable"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\Line truncated
@@ -1 +0,0 @@
{"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"!=(_:_:)","externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V8PlatformV","modules":[{"name":"AmiiboService","relatedModules":["Swift"]}],"extendedModule":"Swift","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"roleHeading":"Operator","symbolKind":"op"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"text":": ","kind":"text"},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"text":") -> ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}]}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/!=(_:_:)":{"title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/!=(_:_:)","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)","kind":"symbol","abstract":[]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"}}}
@@ -1 +0,0 @@
{"sections":[],"topicSections":[{"title":"Operators","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)"],"generated":true,"anchor":"Operators"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/equatable-implementations"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"AmiiboService"}],"roleHeading":"API Collection","role":"collectionGroup","title":"Equatable Implementations"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/Equatable-Implementations"},"kind":"article","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/!=(_:_:)":{"title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/!=(_:_:)","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)","kind":"symbol","abstract":[]}}}
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":" games related to an amiibo."}],"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch"]}],"metadata":{"role":"symbol","externalID":"s:13AmiiboService0A0V8PlatformV6switchSayAC4GameVGvp","title":"switch","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"`switch`"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game"},{"kind":"text","text":"]"}],"modules":[{"name":"AmiiboService"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"`switch`"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"kind":"text","text":"]"}]}],"kind":"declarations"}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/switch":{"title":"switch","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"`switch`"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game"},{"kind":"text","text":"]"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]}}}
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"A list of "},{"code":"Switch 2","type":"codeVoice"},{"type":"text","text":" games related to an amiibo."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","interfaceLanguage":"swift"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch2"]}],"metadata":{"roleHeading":"Instance Property","title":"switch2","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"switch2"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game"},{"kind":"text","text":"]"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V8PlatformV7switch2SayAC4GameVGvp","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"switch2"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","text":"Game"},{"kind":"text","text":"]"}],"languages":["swift"]}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/switch2":{"title":"switch2","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch2","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"switch2"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"kind":"text","text":"]"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","kind":"symbol","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"threeDS","kind":"identifier"},{"text":": [","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","text":"Game","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"text":"]","kind":"text"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/threeds"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"roleHeading":"Instance Property","title":"threeDS","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"threeDS","kind":"identifier"},{"text":": [","kind":"text"},{"text":"Game","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"text":"]","kind":"text"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V8PlatformV7threeDSSayAC4GameVGvp","symbolKind":"property"},"schemaVersion":{"major":0,"minor":3,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"sections":[],"abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":" games related to an amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/threeDS":{"title":"threeDS","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/threeds","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"threeDS"},{"kind":"text","text":": ["},{"text":"Game","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"text":"]","kind":"text"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"wiiU","kind":"identifier"},{"text":": [","kind":"text"},{"text":"Game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV","kind":"typeIdentifier"},{"text":"]","kind":"text"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/wiiu"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"wiiU","externalID":"s:13AmiiboService0A0V8PlatformV4wiiUSayAC4GameVGvp","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"wiiU","kind":"identifier"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game"},{"kind":"text","text":"]"}],"roleHeading":"Instance Property","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/wiiU"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"kind":"symbol","abstract":[{"text":"A list of ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/wiiU":{"title":"wiiU","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/wiiu","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"wiiU"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"kind":"text","text":"]"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/wiiU","abstract":[{"type":"text","text":"A list of "},{"code":"Wii U","type":"codeVoice"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.property"]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"release"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V7ReleaseV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","text":"Release"}]}],"kind":"declarations"}],"metadata":{"symbolKind":"property","modules":[{"name":"AmiiboService"}],"role":"symbol","roleHeading":"Instance Property","title":"release","externalID":"s:13AmiiboService0A0V7releaseAC7ReleaseVvp","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"release"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V7ReleaseV","text":"Release"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/release-swift.property"},"abstract":[{"type":"text","text":"The release dates of this amiibo across different regions."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/release-swift.property":{"title":"release","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.property","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"release","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Release","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V7ReleaseV"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/release-swift.property","type":"topic","abstract":[{"type":"text","text":"The release dates of this amiibo across different regions."}]}}}
@@ -1 +0,0 @@
{"relationshipsSections":[{"identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"kind":"relationships","type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Release"}],"languages":["swift"]}]},{"content":[{"level":2,"type":"heading","text":"Overview","anchor":"overview"},{"inlineContent":[{"type":"text","text":"The service provides these dates as date-only values, which are decoded as midnight UTC."}],"type":"paragraph"}],"kind":"content"}],"kind":"symbol","metadata":{"title":"Amiibo.Release","externalID":"s:13AmiiboService0A0V7ReleaseV","modules":[{"name":"AmiiboService"}],"extendedModule":"AmiiboService","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"navigatorTitle":[{"text":"Release","kind":"identifier"}],"roleHeading":"Structure","symbolKind":"struct"},"schemaVersion":{"minor":3,"major":0,"patch":0},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"anchor":"Nested-Models","title":"Nested Models"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","interfaceLanguage":"swift"},"topicSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/europe","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan"],"anchor":"Instance-Properties","title":"Instance Properties"},{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/Equatable-Implementations"],"anchor":"Default-Implementations","title":"Default Implementations"}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"sections":[],"abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/america":{"title":"america","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/america","role":"symbol","type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"america","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","kind":"symbol","abstract":[{"text":"A release date for North America, if any.","type":"text"}]},"doc://AmiiboService/SQ":{"identifier":"doc:\/\/AmiiboService\/SQ","type":"unresolvable","title":"Swift.Equatable"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/australia":{"kind":"symbol","title":"australia","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/australia","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"australia","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia","type":"topic","abstract":[{"type":"text","text":"A release date for Australia, if any."}]},"doc://AmiiboService/s8SendableP":{"identifier":"doc:\/\/AmiiboService\/s8SendableP","type":"unresolvable","title":"Swift.Sendable"},"doc://AmiiboService/s16SendableMetatypeP":{"identifier":"doc:\/\/AmiiboService\/s16SendableMetatypeP","type":"unresolvable","title":"Swift.SendableMetatype"},"doc://AmiiboServiceLine truncated
@@ -1 +0,0 @@
{"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/!=(_:_:)"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"roleHeading":"Operator","title":"!=(_:_:)","role":"symbol","extendedModule":"Swift","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"modules":[{"relatedModules":["Swift"],"name":"AmiiboService"}],"externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V7ReleaseV","symbolKind":"op"},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"languages":["swift"]}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/!=(_:_:)":{"title":"!=(_:_:)","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)","type":"topic","abstract":[]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"america"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"languages":["swift"]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/america"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"externalID":"s:13AmiiboService0A0V7ReleaseV7america10Foundation4DateVSgvp","title":"america","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"america"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"roleHeading":"Instance Property","symbolKind":"property"},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"sections":[],"abstract":[{"type":"text","text":"A release date for North America, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/america":{"title":"america","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/america","role":"symbol","type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"america","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","kind":"symbol","abstract":[{"text":"A release date for North America, if any.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"}}}
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"A release date for Australia, if any."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/australia"]}],"metadata":{"externalID":"s:13AmiiboService0A0V7ReleaseV9australia10Foundation4DateVSgvp","role":"symbol","title":"australia","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"australia","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"modules":[{"name":"AmiiboService"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"australia","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}]}],"kind":"declarations"}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/australia":{"kind":"symbol","title":"australia","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/australia","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"australia","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia","type":"topic","abstract":[{"type":"text","text":"A release date for Australia, if any."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]}}}
@@ -1 +0,0 @@
{"sections":[],"topicSections":[{"title":"Operators","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)"],"generated":true,"anchor":"Operators"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/equatable-implementations"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"modules":[{"name":"AmiiboService"}],"roleHeading":"API Collection","role":"collectionGroup","title":"Equatable Implementations"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/Equatable-Implementations"},"kind":"article","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/!=(_:_:)":{"title":"!=(_:_:)","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)","type":"topic","abstract":[]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"europe","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"},{"text":"?","kind":"text"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/europe"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"title":"europe","externalID":"s:13AmiiboService0A0V7ReleaseV6europe10Foundation4DateVSgvp","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"europe"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"roleHeading":"Instance Property","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/europe","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"A release date for Europe, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/europe":{"title":"europe","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/europe","role":"symbol","type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"europe","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/europe","kind":"symbol","abstract":[{"type":"text","text":"A release date for Europe, if any."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"japan"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"text":"?","kind":"text"}]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/japan"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"Instance Property","title":"japan","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"japan"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V7ReleaseV5japan10Foundation4DateVSgvp","symbolKind":"property"},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"sections":[],"abstract":[{"type":"text","text":"A release date for Japan, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/japan":{"title":"japan","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/japan","role":"symbol","type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"japan","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan","kind":"symbol","abstract":[{"type":"text","text":"A release date for Japan, if any."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"title":"Amiibo.Release","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","navigatorTitle":[{"text":"Release","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"series"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"languages":["swift"],"platforms":["macOS"]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/series"]}],"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"roleHeading":"Instance Property","title":"series","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"series"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V6seriesSSvp","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/series"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"kind":"symbol","abstract":[{"type":"text","text":"The name of the amiibo series this amiibo belongs to."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/series":{"title":"series","url":"\/documentation\/amiiboservice\/amiibo\/series","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"series"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/series","kind":"symbol","abstract":[{"type":"text","text":"The name of the amiibo series this amiibo belongs to."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"tail","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/tail"]}],"schemaVersion":{"minor":3,"patch":0,"major":0},"metadata":{"roleHeading":"Instance Property","title":"tail","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"tail","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V4tailSSvp","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail"},"abstract":[{"type":"text","text":"The last 8 hexadecimal characters of the amiibo identifier."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/tail":{"title":"tail","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/tail","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"type":"topic","abstract":[{"type":"text","text":"The last 8 hexadecimal characters of the amiibo identifier."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"type","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}],"kind":"declarations"}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/type"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"Instance Property","title":"type","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"type","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V4typeSSvp","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/type"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"kind":"symbol","abstract":[{"type":"text","text":"The type of this amiibo (e.g., Figure, Card, Yarn, Band)."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/type":{"title":"type","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/type","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"type"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"type":"topic","abstract":[{"type":"text","text":"The type of this amiibo (e.g., Figure, Card, Yarn, Band)."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/type"}}}
@@ -1 +0,0 @@
{"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"Usage","kind":"identifier"}]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","metadata":{"title":"Amiibo.Usage","externalID":"s:13AmiiboService0A0V5UsageV","modules":[{"name":"AmiiboService"}],"extendedModule":"AmiiboService","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"roleHeading":"Structure","symbolKind":"struct"},"seeAlsoSections":[{"generated":true,"anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"],"title":"Nested Models"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/usage"]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"},"topicSections":[{"generated":true,"anchor":"Instance-Properties","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/explanation","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/isWriteable"],"title":"Instance Properties"},{"generated":true,"anchor":"Default-Implementations","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/Equatable-Implementations"],"title":"Default Implementations"}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"sections":[],"abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/SQ":{"type":"unresolvable","identifier":"doc:\/\/AmiiboService\/SQ","title":"Swift.Equatable"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/Equatable-Implementations":{"abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/Equatable-Implementations","title":"Equatable Implementations","role":"collectionGroup","kind":"article","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage\/equatable-implementations"},"doc://AmiiboService/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/AmiiboService\/s8SendableP","title":"Swift.Sendable"},"doc://AmiiboService/s16SendableMetatypeP":{"type":"unresolvable","identifier":"doc:\/\/AmiiboService\/s16SendableMetatypeP","title":"Swift.SendableMetatype"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"title":"Amiibo.Game","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"title":"Amiibo.Platform","role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","abstract":[{"type":"text","text":"A model that represents a collection of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTiLine truncated
@@ -1 +0,0 @@
{"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V5UsageV","title":"!=(_:_:)","modules":[{"relatedModules":["Swift"],"name":"AmiiboService"}],"extendedModule":"Swift","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"roleHeading":"Operator","symbolKind":"op"},"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"languages":["swift"]}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/!=(_:_:)":{"kind":"symbol","title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/usage\/!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)","type":"topic","abstract":[]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"title":"Amiibo.Usage","url":"\/documentation\/amiiboservice\/amiibo\/usage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","kind":"symbol","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}]}}}
@@ -1 +0,0 @@
{"topicSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)"],"anchor":"Operators","title":"Operators"}],"kind":"article","metadata":{"roleHeading":"API Collection","modules":[{"name":"AmiiboService"}],"role":"collectionGroup","title":"Equatable Implementations"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/Equatable-Implementations"},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/equatable-implementations"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"title":"Amiibo.Usage","url":"\/documentation\/amiiboservice\/amiibo\/usage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","kind":"symbol","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/!=(_:_:)":{"kind":"symbol","title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/usage\/!=(_:_:)","role":"symbol","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)","type":"topic","abstract":[]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"explanation"},{"kind":"text","text":": "},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}]}]}],"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/explanation"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"Instance Property","title":"explanation","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"explanation"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V5UsageV11explanationSSvp","symbolKind":"property"},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/explanation","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"kind":"symbol","abstract":[{"text":"A description of how the amiibo is used within the game.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/explanation":{"title":"explanation","url":"\/documentation\/amiiboservice\/amiibo\/usage\/explanation","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"explanation"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/explanation","kind":"symbol","abstract":[{"type":"text","text":"A description of how the amiibo is used within the game."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"title":"Amiibo.Usage","url":"\/documentation\/amiiboservice\/amiibo\/usage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","kind":"symbol","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}]}}}
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"A flag that indicates whether the amiibo can save game data."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/isWriteable"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/iswriteable"]}],"metadata":{"role":"symbol","externalID":"s:13AmiiboService0A0V5UsageV11isWriteableSbvp","title":"isWriteable","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"isWriteable","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"modules":[{"name":"AmiiboService"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"isWriteable"},{"text":": ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"languages":["swift"]}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"abstract":[{"text":"A model that represents an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","title":"Amiibo","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"url":"\/documentation\/amiiboservice\/amiibo"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"navigatorTitle":[{"kind":"identifier","text":"Usage"}],"title":"Amiibo.Usage","url":"\/documentation\/amiiboservice\/amiibo\/usage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","kind":"symbol","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/isWriteable":{"abstract":[{"type":"text","text":"A flag that indicates whether the amiibo can save game data."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/isWriteable","title":"isWriteable","role":"symbol","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"isWriteable"},{"kind":"text","text":": "},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}],"type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage\/iswriteable"}}}
@@ -1 +0,0 @@
{"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"type":"inheritsFrom","title":"Inherits From"},{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient"],"type":"conformingTypes","title":"Conforming Types"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"protocol","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboClient","kind":"identifier"},{"text":" : ","kind":"text"},{"text":"Sendable","kind":"typeIdentifier","preciseIdentifier":"s:s8SendableP"}],"languages":["swift"]}]},{"kind":"content","content":[{"type":"heading","anchor":"overview","text":"Overview","level":2},{"type":"paragraph","inlineContent":[{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient","type":"reference","isActive":true},{"type":"text","text":" is the default implementation. Conform to this protocol to provide another one, such as a mock for tests. Conforming types must be "},{"code":"Sendable","type":"codeVoice"},{"type":"text","text":"."}]}]}],"sections":[],"topicSections":[{"anchor":"Amiibo-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)"],"title":"Amiibo endpoints"},{"anchor":"Game-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameCharacters(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)"],"title":"Game endpoints"},{"anchor":"System-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getLastUpdated()"],"title":"System endpoints"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient"]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"seeAlsoSections":[{"generated":true,"anchor":"Clients","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient"],"title":"Clients"}],"metadata":{"roleHeading":"Protocol","title":"AmiiboClient","role":"symbol","fragments":[{"text":"protocol","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboClient","kind":"identifier"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6ClientP","symbolKind":"protocol","navigatorTitle":[{"kind":"identifier","text":"AmiiboClient"}]},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"},"abstract":[{"type":"text","text":"A protocol that defines a client that fetches data from the Amiibo API."}],"references":{"doc://AmiiboService/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/AmiiboService\/s8SendableP","title":"Swift.Sendable"},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getAmiiboTypes(by:)":{"title":"getAmiiboTypes(by:)","required":true,"url":"\/documentation\/amiiboservice\/amiiboclient\/getamiibotypes(by:)","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAmiiboTypes"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A10TypeFilterV","text":"AmiiboTypeFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A4TypeV","text":"AmiiboType"},{"kind":"text","text":"]"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)","abstract":[{"type":"text","text":"Gets a list of amiibo types based on a given filter."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/s16SendableMetatypeP":{"type":"unresolvable","identifier":"doc:\/\/AmiiboService\/s16SendableMetatypeP","title":"Swift.SendableMetatype"},"https://www.amiiboapi.org":{"titleInlineContent":[{"type":"text","text":"Amiibo API"}],"url":"https:\/\/www.amiiboapi.org","type":"link","identifier":"https:\/\/www.amiiboapi.org","title":"Amiibo API"},"doc://AmiiboService/documentationLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"text":"getAmiibos","kind":"identifier"},{"kind":"text","text":"("},{"text":"by","kind":"externalParam"},{"kind":"text","text":" "},{"text":"filter","kind":"internalParam"},{"kind":"text","text":": "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","text":"AmiiboFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A6FilterV"},{"kind":"text","text":") "},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","text":"AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"text":"Amiibo","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","preciseIdentifier":"s:13AmiiboService0A0V","kind":"typeIdentifier"},{"text":"]","kind":"text"}]}]},{"kind":"parameters","parameters":[{"name":"filter","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}]}]}]},{"kind":"content","content":[{"text":"Return Value","anchor":"return-value","level":2,"type":"heading"},{"type":"paragraph","inlineContent":[{"text":"A list of filtered amiibo items.","type":"text"}]}]},{"kind":"content","content":[{"type":"heading","anchor":"discussion","text":"Discussion","level":2},{"type":"aside","style":"note","content":[{"inlineContent":[{"type":"text","text":"An "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}],"type":"paragraph"}],"name":"Throws"}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getamiibos(by:)"]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"seeAlsoSections":[{"generated":true,"anchor":"Amiibo-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)"],"title":"Amiibo endpoints"}],"metadata":{"roleHeading":"Instance Method","title":"getAmiibos(by:)","required":true,"role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiibos","kind":"identifier"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A6FilterV","text":"AmiiboFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V","text":"Amiibo"},{"kind":"text","text":"]"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6ClientP10getAmiibos2bySayAA0A0VGAA0A6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)"},"abstract":[{"text":"Gets a list of amiibo items based on a given filter.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"title":"AmiiboService","role":"symbol","url":"\/documentation\/amiiboservice\/amiiboservice","navigatorTitle":[{"kind":"identifier","text":"AmiiboService"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboService"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","abstract":[{"type":"text","text":"The entry point for fetching data from the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentatLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAmiiboSeries"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":" "},{"kind":"internalParam","text":"filter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"AmiiboSeriesFilter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeriesFilter","preciseIdentifier":"s:13AmiiboService0A12SeriesFilterV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"AmiiboServiceError","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","text":"AmiiboSeries","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeries","preciseIdentifier":"s:13AmiiboService0A6SeriesV"},{"kind":"text","text":"]"}],"languages":["swift"]}]},{"kind":"parameters","parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}]}],"name":"filter"}]},{"content":[{"level":2,"type":"heading","text":"Return Value","anchor":"return-value"},{"inlineContent":[{"type":"text","text":"A list of filtered amiibo series."}],"type":"paragraph"}],"kind":"content"},{"content":[{"level":2,"type":"heading","text":"Discussion","anchor":"discussion"},{"style":"note","type":"aside","content":[{"type":"paragraph","inlineContent":[{"text":"An ","type":"text"},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}],"name":"Throws"}],"kind":"content"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getamiiboseries(by:)"]}],"kind":"symbol","metadata":{"title":"getAmiiboSeries(by:)","externalID":"s:13AmiiboService0A6ClientP03getA6Series2bySayAA0aE0VGAA0aE6FilterV_tYaAA0aB5ErrorOYKF","required":true,"modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiiboSeries","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"AmiiboSeriesFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A12SeriesFilterV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"text":"AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"text":"AmiiboSeries","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A6SeriesV"},{"text":"]","kind":"text"}],"roleHeading":"Instance Method","symbolKind":"method"},"schemaVersion":{"minor":3,"major":0,"patch":0},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)"],"anchor":"Amiibo-endpoints","title":"Amiibo endpoints"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"sections":[],"abstract":[{"type":"text","text":"Gets a list of amiibo series based on a given filter."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getAmiiboTypes(by:)":{"title":"getAmiiboTypes(by:)","required":true,"url":"\/documentation\/amiiboservice\/amiiboclient\/getamiibotypes(by:)","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAmiiboTypes"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A10TypeFilterV","text":"AmiiboTypeFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A4TypeV","text":"AmiiboType"},{"kind":"text","text":"]"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)","abstract":[{"typeLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiiboTypes","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboTypeFilter","text":"AmiiboTypeFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A10TypeFilterV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","text":"AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboType","text":"AmiiboType","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A4TypeV"},{"text":"]","kind":"text"}],"languages":["swift"]}]},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}],"type":"paragraph"}],"name":"filter"}]},{"content":[{"type":"heading","anchor":"return-value","text":"Return Value","level":2},{"type":"paragraph","inlineContent":[{"text":"A list of filtered amiibo types.","type":"text"}]}],"kind":"content"},{"content":[{"type":"heading","anchor":"discussion","text":"Discussion","level":2},{"type":"aside","style":"note","content":[{"inlineContent":[{"type":"text","text":"An "},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","type":"reference","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}],"type":"paragraph"}],"name":"Throws"}],"kind":"content"}],"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiiboclient\/getamiibotypes(by:)"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"seeAlsoSections":[{"generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)"],"anchor":"Amiibo-endpoints","title":"Amiibo endpoints"}],"metadata":{"roleHeading":"Instance Method","required":true,"title":"getAmiiboTypes(by:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getAmiiboTypes"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"AmiiboTypeFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A10TypeFilterV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"text":"AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"kind":"typeIdentifier","text":"AmiiboType","preciseIdentifier":"s:13AmiiboService0A4TypeV"},{"kind":"text","text":"]"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6ClientP03getA5Types2bySayAA0A4TypeVGAA0aG6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Gets a list of amiibo types based on a given filter."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"title":"AmiiboService","role":"symbol","url":"\/documentation\/amiiboservice\/amiiboservice","navigatorTitle":[{"kind":"identifier","text":"AmiiboService"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboService"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","abstract":[{"type":"text","text":"The entry point for fetching data from the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboServiceError":{"title":"AmiiboServiceError","kind":"symbol","url":"\/documentation\/amiiboservice\/amiiboserviceerror","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboServiceError"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","navigatorTitle":[{"kind":"identifier","text":"AmiiboServiceError"}],"type":"topic","abstract":[{"text":"An error thrown by ","type":"text"},{"identifier":"doc:\/\/AmiiboLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getGameCharacters","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService19GameCharacterFilterV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacterFilter","text":"GameCharacterFilter","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService13GameCharacterV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacter","text":"GameCharacter","kind":"typeIdentifier"},{"text":"]","kind":"text"}]}]},{"parameters":[{"name":"filter","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}]}]}],"kind":"parameters"},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"A list of filtered game characters."}]}]},{"kind":"content","content":[{"type":"heading","level":2,"text":"Discussion","anchor":"discussion"},{"type":"aside","name":"Throws","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"An "},{"isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","type":"reference"},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}],"style":"note"}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getgamecharacters(by:)"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"seeAlsoSections":[{"title":"Game endpoints","anchor":"Game-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)"],"generated":true}],"metadata":{"roleHeading":"Instance Method","required":true,"title":"getGameCharacters(by:)","role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getGameCharacters","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"GameCharacterFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService19GameCharacterFilterV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"text":"AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"text":"GameCharacter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService13GameCharacterV"},{"text":"]","kind":"text"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6ClientP17getGameCharacters2bySayAA0E9CharacterVGAA0eH6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method"},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameCharacters(by:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"kind":"symbol","abstract":[{"text":"Gets a list of game characters based on a given filter.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboServiceError":{"title":"AmiiboServiceError","kind":"symbol","url":"\/documentation\/amiiboservice\/amiiboserviceerror","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboServiceError"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","navigatorTitle":[{"kind":"identifier","text":"AmiiboServiceError"}],"type":"topic","abstract":[{"text":"An error thrown by ","type":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","type":"reference","isActive":true},{"text":" and ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"},{"text":" methods.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"title":"AmiiboService","role":"symbol","url":"\/documentation\/amiiboservice\/amiiboservice","navigatorTitle":[{"kind":"identifier","text":"AmiiboService"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"Line truncated
@@ -1 +0,0 @@
{"seeAlsoSections":[{"title":"Game endpoints","generated":true,"anchor":"Game-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameCharacters(by:)"]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getgameseries(by:)"]}],"kind":"symbol","primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getGameSeries"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":" "},{"kind":"internalParam","text":"filter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService16GameSeriesFilterV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeriesFilter","text":"GameSeriesFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService10GameSeriesV","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeries","text":"GameSeries"},{"kind":"text","text":"]"}]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}],"type":"paragraph"}],"name":"filter"}]},{"kind":"content","content":[{"anchor":"return-value","type":"heading","text":"Return Value","level":2},{"inlineContent":[{"type":"text","text":"A list of filtered game series."}],"type":"paragraph"}]},{"kind":"content","content":[{"anchor":"discussion","type":"heading","text":"Discussion","level":2},{"content":[{"inlineContent":[{"type":"text","text":"An "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError"},{"type":"text","text":" error in case some issue is encountered while generating the result."}],"type":"paragraph"}],"name":"Throws","type":"aside","style":"note"}]}],"metadata":{"required":true,"title":"getGameSeries(by:)","externalID":"s:13AmiiboService0A6ClientP13getGameSeries2bySayAA0eF0VGAA0eF6FilterV_tYaAA0aB5ErrorOYKF","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getGameSeries"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService16GameSeriesFilterV","text":"GameSeriesFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService10GameSeriesV","text":"GameSeries"},{"kind":"text","text":"]"}],"roleHeading":"Instance Method","symbolKind":"method"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)"},"abstract":[{"type":"text","text":"Gets a list of game series based on a given filter."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getGameSeries(by:)":{"title":"getGameSeries(by:)","kind":"symbol","required":true,"url":"\/documentation\/amiiboservice\/amiiboclient\/getgameseries(by:)","role":"symbol","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getGameSeries"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"GameSeriesFilter","preciseIdentifier":"s:13AmiiboService16GameSeriesFilterV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"AmiiboServiceError","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","text":"GameSeries","preciseIdentifier":"s:13AmiiboService10GameSeriesV"},{"kind":"text","text":"]"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)","type":"topic","abstract":[{"type":"text","text":"Gets a list of game series based on a given filter."}]},"doc://AmiiboService/doLine truncated
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLastUpdated","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}]}]},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"A last updated date, decoded as UTC."}]}]},{"kind":"content","content":[{"type":"heading","level":2,"text":"Discussion","anchor":"discussion"},{"type":"aside","name":"Throws","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"An "},{"isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","type":"reference"},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}],"style":"note"}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getlastupdated()"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"title":"getLastUpdated()","externalID":"s:13AmiiboService0A6ClientP14getLastUpdated10Foundation4DateVyYaAA0aB5ErrorOYKF","required":true,"modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLastUpdated","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}],"roleHeading":"Instance Method","symbolKind":"method"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getLastUpdated()"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"abstract":[{"type":"text","text":"Gets the date when the data was last updated."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient":{"navigatorTitle":[{"text":"AmiiboClient","kind":"identifier"}],"title":"AmiiboClient","url":"\/documentation\/amiiboservice\/amiiboclient","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboClient"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient","kind":"symbol","abstract":[{"type":"text","text":"A protocol that defines a client that fetches data from the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"title":"AmiiboService","role":"symbol","url":"\/documentation\/amiiboservice\/amiiboservice","navigatorTitle":[{"kind":"identifier","text":"AmiiboService"}],"kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboService"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","abstract":[{"type":"text","text":"The entry point for fetching data from the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboServiceError":{"title":"AmiiboServiceError","kind":"symbol","url":"\/documentation\/amiiboservice\/amiiboserviceerror","role":"symbol","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboServiceError"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","navigatorTitle":[{"kind":"identifier","text":"AmiiboServiceError"}],"type":"topic","abstract":[{"text":"An error thrown by ","type":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","type":"reference","isActive":true},{"text":" and ","type":"text"},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"},{"text":" methods.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboServiceLine truncated
@@ -1 +0,0 @@
{"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"type":"conformsTo","title":"Conforms To"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboFilter","kind":"identifier"}]}]},{"kind":"content","content":[{"level":2,"text":"Overview","type":"heading","anchor":"overview"},{"inlineContent":[{"text":"Values left as ","type":"text"},{"type":"codeVoice","code":"nil"},{"text":" do not restrict the result.","type":"text"}],"type":"paragraph"}]}],"kind":"symbol","metadata":{"externalID":"s:13AmiiboService0A6FilterV","title":"AmiiboFilter","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboFilter","kind":"identifier"}],"navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"roleHeading":"Structure","symbolKind":"struct"},"schemaVersion":{"minor":3,"major":0,"patch":0},"seeAlsoSections":[{"anchor":"Filters","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeriesFilter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboTypeFilter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacterFilter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeriesFilter"],"title":"Filters"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"},"topicSections":[{"anchor":"Initializers","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/init(head:tail:identifier:name:type:series:gameCharacter:gameSeries:showGames:showUsage:)"],"title":"Initializers"},{"anchor":"Instance-Properties","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameCharacter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameSeries","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/head","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/name","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/series","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/tail","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/type"],"title":"Instance Properties"}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService"]]},"sections":[],"abstract":[{"text":"A filter for amiibo requests.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showGames":{"title":"showGames","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/showgames","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showGames"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","type":"topic","abstract":[{"type":"text","text":"A flag that indicates whether to include related games in "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","isActive":true},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/tail":{"title":"tail","role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/tail","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/tail","abstract":[{"type":"text","text":"The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboTypeFilter":{"navigatorTitle":[{"kind":"identifier","text":"AmiiboTypeFilter"}],"title":"AmiiboTypeFilter","url":"\/documentation\/amiiboservice\/amiibotypefilter","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboTypeFilter"}],"kind":"symLine truncated
@@ -1 +0,0 @@
{"abstract":[{"type":"text","text":"A game character key or name to match, if any."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameCharacter"},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/gamecharacter"]}],"metadata":{"roleHeading":"Instance Property","title":"gameCharacter","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":"?","kind":"text"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6FilterV13gameCharacterSSSgvp","symbolKind":"property"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}]}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/gameCharacter":{"title":"gameCharacter","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/gamecharacter","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameCharacter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameCharacter","type":"topic","abstract":[{"type":"text","text":"A game character key or name to match, if any."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"gameSeries","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}]}]}],"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/gameseries"]}],"schemaVersion":{"minor":3,"major":0,"patch":0},"metadata":{"roleHeading":"Instance Property","title":"gameSeries","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameSeries"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6FilterV10gameSeriesSSSgvp","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameSeries"},"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"abstract":[{"text":"A game series key or name to match, if any.","type":"text"}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/gameSeries":{"kind":"symbol","title":"gameSeries","url":"\/documentation\/amiiboservice\/amiibofilter\/gameseries","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameSeries"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameSeries","type":"topic","abstract":[{"type":"text","text":"A game series key or name to match, if any."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"head","kind":"identifier"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/head"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/head"},"metadata":{"externalID":"s:13AmiiboService0A6FilterV4headSSSgvp","role":"symbol","title":"head","roleHeading":"Instance Property","symbolKind":"property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"head","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}]},"abstract":[{"type":"text","text":"The first 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}],"kind":"symbol","sections":[],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/head":{"abstract":[{"type":"text","text":"The first 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/head","title":"head","role":"symbol","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"head","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"type":"topic","url":"\/documentation\/amiiboservice\/amiibofilter\/head"}}}
@@ -1 +0,0 @@
{"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/identifier"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"languages":["swift"]}]}],"metadata":{"role":"symbol","title":"identifier","externalID":"s:13AmiiboService0A6FilterV10identifierSSSgvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"A full 16-character hexadecimal identifier to match, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/identifier":{"title":"identifier","role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/identifier","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","abstract":[{"type":"text","text":"A full 16-character hexadecimal identifier to match, if any."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"init","kind":"keyword"},{"kind":"text","text":"("},{"text":"head","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"? = nil, "},{"kind":"externalParam","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"? = nil, "},{"text":"identifier","kind":"externalParam"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"? = nil, "},{"kind":"externalParam","text":"name"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"? = nil, ","kind":"text"},{"kind":"externalParam","text":"type"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"? = nil, "},{"kind":"externalParam","text":"series"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"? = nil, "},{"text":"gameCharacter","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"? = nil, ","kind":"text"},{"text":"gameSeries","kind":"externalParam"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"? = nil, ","kind":"text"},{"text":"showGames","kind":"externalParam"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"kind":"text","text":"? = nil, "},{"kind":"externalParam","text":"showUsage"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"kind":"text","text":"? = nil)"}]}]},{"kind":"parameters","parameters":[{"name":"head","content":[{"inlineContent":[{"type":"text","text":"The first 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}],"type":"paragraph"}]},{"name":"tail","content":[{"inlineContent":[{"type":"text","text":"The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}],"type":"paragraph"}]},{"name":"identifier","content":[{"inlineContent":[{"type":"text","text":"A full 16-character hexadecimal identifier to match, if any."}],"type":"paragraph"}]},{"name":"name","content":[{"inlineContent":[{"type":"text","text":"An amiibo name, or part of one, to match, if any."}],"type":"paragraph"}]},{"name":"type","content":[{"inlineContent":[{"type":"text","text":"An amiibo type key or name to match, if any."}],"type":"paragraph"}]},{"name":"series","content":[{"inlineContent":[{"type":"text","text":"An amiibo series key or name to match, if any."}],"type":"paragraph"}]},{"name":"gameCharacter","content":[{"inlineContent":[{"type":"text","text":"A game character key or name to match, if any."}],"type":"paragraph"}]},{"name":"gameSeries","content":[{"inlineContent":[{"type":"text","text":"A game series key or name to match, if any."}],"type":"paragraph"}]},{"name":"showGames","content":[{"inlineContent":[{"type":"text","text":"A flag that indicates whether to include related games in "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property"},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}],"type":"paragraph"}]},{"name":"showUsage","content":[{"inlineContent":[{"type":"text","text":"A flag that indicates whether to include related games and their amiibo usages in "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property"},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}],"type":"paragraph"}]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/init(head:tail:identifier:name:type:series:gamecharacter:gameseries:showgames:showusage:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","metadata":{"title":"init(head:tail:identifier:name:type:series:gameCharacter:gameSeries:showGames:showUsage:)","externalID":"s:13AmiiboService0A6FilterV4head4tail10identifier4name4type6series13gameCharacter0J6Series9showGames0M5UsageACSSSg_A7NSbSgAOtcfc","modules":[{"name":"AmiiboService"}],"role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?, "},{"kind":"externalParam","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdLine truncated
@@ -1 +0,0 @@
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/name"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"platforms":["macOS"],"languages":["swift"]}]}],"metadata":{"symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}],"title":"name","externalID":"s:13AmiiboService0A6FilterV4nameSSSgvp","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/name"},"abstract":[{"type":"text","text":"An amiibo name, or part of one, to match, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/name":{"kind":"symbol","title":"name","url":"\/documentation\/amiiboservice\/amiibofilter\/name","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"name","kind":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/name","type":"topic","abstract":[{"text":"An amiibo name, or part of one, to match, if any.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"series","kind":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":"?","kind":"text"}],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/series"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"kind":"symbol","metadata":{"roleHeading":"Instance Property","title":"series","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"series"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6FilterV6seriesSSSgvp","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/series"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"sections":[],"abstract":[{"type":"text","text":"An amiibo series key or name to match, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/series":{"kind":"symbol","title":"series","url":"\/documentation\/amiiboservice\/amiibofilter\/series","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"series"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/series","type":"topic","abstract":[{"text":"An amiibo series key or name to match, if any.","type":"text"}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"showGames","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":"?","kind":"text"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/showgames"]}],"schemaVersion":{"patch":0,"major":0,"minor":3},"metadata":{"role":"symbol","modules":[{"name":"AmiiboService"}],"title":"showGames","roleHeading":"Instance Property","externalID":"s:13AmiiboService0A6FilterV9showGamesSbSgvp","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"showGames","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":"?","kind":"text"}]},"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"sections":[],"abstract":[{"type":"text","text":"A flag that indicates whether to include related games in "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","isActive":true},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showGames":{"title":"showGames","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/showgames","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showGames"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","type":"topic","abstract":[{"type":"text","text":"A flag that indicates whether to include related games in "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","isActive":true},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/platform-swift.property":{"title":"platform","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.property","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"platform"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Platform","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","type":"topic","abstract":[{"type":"text","text":"The related games of this amiibo, grouped by platform."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showUsage"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"},{"text":"?","kind":"text"}]}],"kind":"declarations"}],"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/showusage"],"traits":[{"interfaceLanguage":"swift"}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"metadata":{"roleHeading":"Instance Property","title":"showUsage","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"showUsage","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A6FilterV9showUsageSbSgvp","symbolKind":"property"},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"kind":"symbol","abstract":[{"type":"text","text":"A flag that indicates whether to include related games and their amiibo usages in "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","isActive":true},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"code":"false","type":"codeVoice"},{"type":"text","text":"."}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/platform-swift.property":{"title":"platform","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.property","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"platform"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Platform","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV"},{"kind":"text","text":"?"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","type":"topic","abstract":[{"type":"text","text":"The related games of this amiibo, grouped by platform."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showUsage":{"title":"showUsage","url":"\/documentation\/amiiboservice\/amiibofilter\/showusage","role":"symbol","type":"topic","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"showUsage"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"},{"kind":"text","text":"?"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","abstract":[{"type":"text","text":"A flag that indicates whether to include related games and their amiibo usages in "},{"type":"reference","isActive":true,"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property"},{"type":"text","text":". "},{"type":"codeVoice","code":"nil"},{"type":"text","text":" means "},{"type":"codeVoice","code":"false"},{"type":"text","text":"."}]}}}
@@ -1 +0,0 @@
{"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"text":"tail","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"platforms":["macOS"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/tail"]}],"kind":"symbol","metadata":{"externalID":"s:13AmiiboService0A6FilterV4tailSSSgvp","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"kind":"text","text":"?"}],"symbolKind":"property","roleHeading":"Instance Property","title":"tail","modules":[{"name":"AmiiboService"}],"role":"symbol"},"schemaVersion":{"patch":0,"major":0,"minor":3},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/tail","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"sections":[],"abstract":[{"type":"text","text":"The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"title":"AmiiboFilter","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/tail":{"title":"tail","role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/tail","kind":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/tail","abstract":[{"type":"text","text":"The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix."}]},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]}}}
@@ -1 +0,0 @@
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/type"]}],"kind":"symbol","primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"type"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}]}]}],"metadata":{"role":"symbol","externalID":"s:13AmiiboService0A6FilterV4typeSSSgvp","symbolKind":"property","title":"type","roleHeading":"Instance Property","modules":[{"name":"AmiiboService"}],"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"type"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"schemaVersion":{"major":0,"patch":0,"minor":3},"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/type"},"abstract":[{"type":"text","text":"An amiibo type key or name to match, if any."}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/type":{"title":"type","role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/type","kind":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"type"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"type":"topic","abstract":[{"type":"text","text":"An amiibo type key or name to match, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/type"},"doc://AmiiboService/documentation/AmiiboService":{"title":"AmiiboService","role":"collection","url":"\/documentation\/amiiboservice","kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A Swift client for the Amiibo API."}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","kind":"symbol","role":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboFilter"}],"type":"topic","abstract":[{"type":"text","text":"A filter for amiibo requests."}],"title":"AmiiboFilter","navigatorTitle":[{"kind":"identifier","text":"AmiiboFilter"}],"url":"\/documentation\/amiiboservice\/amiibofilter"}}}
Loaded 100 of 361 files, more files were not shown because too many files have changed in this diff. Show more