Swiftpack.co - Package - SwiftCommon/DataKit

DataKit

Swift 5.0+ license Build Status codecov Carthage Compatible

Swift µframework for Data operations.

Getting started

On first checkout you best run: $ script/setup and when you're a regular user just: $ script/update. These scripts are also available through GNUMake: $ make setup & $ make update. For more info on the scripts checkout script/README.md

** Note: these scripts may update the Xcode project file and resolve the Package.resolved dependencies. You can also do this by running:
$ bundle install && bundle exec fastlane gen_xcodeproj

Features

Data+Base64

  • Base64 encode data blob
let data = Data(bytes: [0xc3, 0x98, 0x61, 0x62, 0x63, 0x64])
let base64encoded = Base64.standard.encode(data: data)
  • Base64 (URL and File safe) encode data
let data = Data(bytes: [0xc3, 0x98, 0x61, 0x62, 0x63, 0x64])
let urlSafeEncoded = Base64.urlSafe.encode(data: data, padding: .none)
  • Base64 decode data blob
let base64 = Data(bytes: [0x75, 0xF7, 0xAB, 0xE7, 0xAE, 0x9F, 0x14, 0x38, 0x63, 0x7C, 0x50, 0xD2, 0xB2, 0xCC, 0x2B, 0xAF, 0x0C, 0x30])
let data = try Base64.decode(data: base64) // Base64 decoded data or error
  • Base64 decode string
let base64 = "dfer566fFDhjfFDSsswrrwwwwsd"
let data = try Base64.decode(string: base64) // Base64 decoded data or error

Data+String

  • Convert Data to UTF-8 or ASCII String
let data = Data(bytes: [0xc3, 0x98, 0x61, 0x62, 0x63, 0x64])
data.utf8string // -> "Øabcd"
data.asciiString // -> nil
  • Map Data to Hexidecimal String
let data = Data(bytes: [0xc3, 0x98, 0x61, 0x62, 0x63, 0x64])
data.hexString() // -> "C39861626364
  • Initialize Data with Hex String
let hexString = "C39861626364"
Data(hex: hexString) // -> [0xc3, 0x98, 0x61, 0x62, 0x63, 0x64]

Installation

Carthage

Put this in your Cartfile:

  github "SwiftCommon/DataKit" ~> 1.0

SwiftPM

Put this in your Package.swift:

   ...
   dependencies: [
      .package(url: "https://github.com/SwiftCommon/DataKit", "0.0.1" ..< "1.0.0")
   ],
   targets: [
      .target(
         name: "YourAwesomeApp",
         dependencies: ["DataKit"]
      )
   ]

Documentation

To create the documentation run: bundle exec fastlane gen_docs and open ./docs/index.html

Contributing

Feel free to check the TODO list and/or add your favourite missing Data related feature through a Pull request.

License

Licensed under the MIT license.

Github

link
Stars: 3
Help us keep the lights on

Dependencies

Used By

Total: 0

Releases

1.0.1 - Oct 7, 2019

1.0 - Oct 2, 2019