A Swift Encoder for encoding any Encodable value into an array of URLQueryItem.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Tests
URLQueryItemEncoder.xcodeproj Update the project to adopting the Swift 4.1 and Xcode 9.3 Apr 6, 2018
URLQueryItemEncoder
.gitignore
.swift-version
LICENSE
Package.swift
README.md
URLQueryItemEncoder.podspec Update version to be 0.2.1 Apr 6, 2018

README.md

URLQueryItemEncoder

Platform Swift support CocoaPods Compatible Carthage compatible Swift Package Manager compatible Twitter

A Swift Encoder for encoding any Encodable value into an array of URLQueryItem. As part of the SE-0166, Swift has a foundation for any type to define how its value should be archived. This encoder allows you to encode those value into an array of URLQueryItem which represent that value in one command.

struct Language {
  let name: String
  let age: Int
}

let person = Language(name: "Swift", age: 4)
let encoder = URLQueryItemEncoder()
let items = try encoder.encode(person)
// items == [URLQueryItem(name: "name", value: "Swift"), URLQueryItem(name: "age", value: "4")]

Requirements

  • iOS 8+
  • macOS 10.10+
  • Swift 4.0+

Installation

Manually

This project comes with built in URLQueryItemEncoder framework target. You can drag URLQueryItemEncoder.xcproj file into your project, add URLQueryItemEncoder framework target as a target dependency and link/embed that framework. and Voila!!!

import URLQueryItemEncoder

Or you can copy the URLQueryItemEncoder.swift file into your project.

CocoaPods

Add the following to your Podfile

pod 'URLQueryItemEncoder'
use_frameworks!

Carthage

Add the following to your Cartfile

github "pitiphong-p/URLQueryItemEncoder"

Swift Package Manager

You can use Swift Package Manager and specify dependency in Package.swift by adding this:

dependencies: [
    .Package(url: "https://github.com/pitiphong-p/URLQueryItemEncoder.git", majorVersion: 0)
]

Usage

The URLQueryItemEncoder has a simple and familiar API. It has only 1 method for performing the encoding and 1 strategy for choosing how to encode the Array Index key.

let encoder = URLQueryItemEncoder()
let items = try encoder.encode(person)

Contact

Pitiphong Phongpattranont

License

URLQueryItemEncoder is released under an MIT License.
Copyright © 2017-present Pitiphong Phongpattranont.