FlatBuffersSwift
Motivation
This project brings FlatBuffers (an efficient cross platform serialization library) to Swift.
One minute introduction
There are three simple steps for you to use FlatBuffersSwift
1. Write a schema file
table List {
people : [Person];
}
table Person {
firstName : string;
lastName : string;
}
root_type List;
2. Generate Swift code
fbsCG
console application can be found here: https://github.com/mzaks/FlatBuffersSwiftCodeGen To generate, please execute it as following: fbsCG contacts.fbs contacts.swift
3. Use the generated API
Create objects and encode them
let p1 = Person(firstName: "Maxim", lastName: "Zaks")
let p2 = Person(firstName: "Alex", lastName: "Zaks")
let list = List(people: [p1, p2])
let data = try?list.makeData()
Decode data very efficiently
let newList = List.from(data: data)
let name = newList?.people[0].firstName