Monaka 0.0.3

Monaka 0.0.3

测试已测试
Lang语言 SwiftSwift
许可证 MIT
发布最后发布2016年8月
SPM支持 SPM

naru 维护。



Monaka 0.0.3

  • naru

概述

Monaka 将自定义结构转换为 NSData。

使用

打包/解包标准变量

1.激活

编写激活代码。

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

  Monaka.activateStandardPackables(withCustomStructActivations: { /* Write here if you use your struct to pack. */ })

  // Other codes...

  return true
}

2.打包/解包

您可以打包/解包 Packable 变量。

// For example, simple Int variable.
// Pack
let value: Int = 10
let data: NSData = Monaka.pack(value) 
// Unpack
let unpacked = Monaka.unpack(data) as? Int

自定义结构体

1.创建一个自定义结构体,确认协议 CustomPackable

// Protocol `CustomPackable`
struct SampleStruct: CustomPackable {

  let id: String

  /* Implementations */

  // Implement function ([String : Packable] -> Packable?) named 'restoreProcedure'
  static var restoreProcedure: [String : Packable] -> Packable? = { (dictionary: [String : Packable]) -> Packable? in
        guard let id = dictionary["id"] as? String else {
            return nil
        }
        return SampleStruct1(id: id)
    }
}

2.激活

激活您自定义的结构体。

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

  Monaka.activateStandardPackables(withCustomStructActivations: {
    SampleStruct.activatePack()
  })

  // Other codes...

  return true
}

3.打包/解包

您可以将它们作为标准类型进行打包/解包。

// Pack
let value: SampleStruct = SampleStruct(id: NSUUID().UUIDString)
let data: NSData = Monaka.pack(value) 
// Unpack
let unpacked = Monaka.unpack(data) as? SampleStruct

许可证

Monaka 在 MIT 许可证下发布。有关详细信息,请参阅 LICENSE。