mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-01 19:58:15 +00:00
[swift] Implements union strings (#6589)
This commit is contained in:
@@ -24,12 +24,12 @@ public struct models_HelloReply: FlatBufferObject {
|
|||||||
public var message: String? { let o = _accessor.offset(VTOFFSET.message.v); return o == 0 ? nil : _accessor.string(at: o) }
|
public var message: String? { let o = _accessor.offset(VTOFFSET.message.v); return o == 0 ? nil : _accessor.string(at: o) }
|
||||||
public var messageSegmentArray: [UInt8]? { return _accessor.getVector(at: VTOFFSET.message.v) }
|
public var messageSegmentArray: [UInt8]? { return _accessor.getVector(at: VTOFFSET.message.v) }
|
||||||
public static func startHelloReply(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
public static func startHelloReply(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
public static func add(message: Offset<String>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: message, at: VTOFFSET.message.p) }
|
public static func add(message: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: message, at: VTOFFSET.message.p) }
|
||||||
public static func endHelloReply(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endHelloReply(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createHelloReply(
|
public static func createHelloReply(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
messageOffset message: Offset<String> = Offset()
|
messageOffset message: Offset = Offset()
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = models_HelloReply.startHelloReply(&fbb)
|
let __start = models_HelloReply.startHelloReply(&fbb)
|
||||||
models_HelloReply.add(message: message, &fbb)
|
models_HelloReply.add(message: message, &fbb)
|
||||||
return models_HelloReply.endHelloReply(&fbb, start: __start)
|
return models_HelloReply.endHelloReply(&fbb, start: __start)
|
||||||
@@ -56,12 +56,12 @@ public struct models_HelloRequest: FlatBufferObject {
|
|||||||
public var name: String? { let o = _accessor.offset(VTOFFSET.name.v); return o == 0 ? nil : _accessor.string(at: o) }
|
public var name: String? { let o = _accessor.offset(VTOFFSET.name.v); return o == 0 ? nil : _accessor.string(at: o) }
|
||||||
public var nameSegmentArray: [UInt8]? { return _accessor.getVector(at: VTOFFSET.name.v) }
|
public var nameSegmentArray: [UInt8]? { return _accessor.getVector(at: VTOFFSET.name.v) }
|
||||||
public static func startHelloRequest(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
public static func startHelloRequest(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
public static func add(name: Offset<String>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: name, at: VTOFFSET.name.p) }
|
public static func add(name: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: name, at: VTOFFSET.name.p) }
|
||||||
public static func endHelloRequest(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endHelloRequest(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createHelloRequest(
|
public static func createHelloRequest(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
nameOffset name: Offset<String> = Offset()
|
nameOffset name: Offset = Offset()
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = models_HelloRequest.startHelloRequest(&fbb)
|
let __start = models_HelloRequest.startHelloRequest(&fbb)
|
||||||
models_HelloRequest.add(name: name, &fbb)
|
models_HelloRequest.add(name: name, &fbb)
|
||||||
return models_HelloRequest.endHelloRequest(&fbb, start: __start)
|
return models_HelloRequest.endHelloRequest(&fbb, start: __start)
|
||||||
|
|||||||
@@ -312,7 +312,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
std::string func_header = "";
|
std::string func_header = "";
|
||||||
GenerateStructArgs(struct_def, &func_header, "", "");
|
GenerateStructArgs(struct_def, &func_header, "", "");
|
||||||
code_ += func_header.substr(0, func_header.size() - 2) + "\\";
|
code_ += func_header.substr(0, func_header.size() - 2) + "\\";
|
||||||
code_ += ") -> Offset<UOffset> {";
|
code_ += ") -> Offset {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ +=
|
code_ +=
|
||||||
"builder.createStructOf(size: {{STRUCTNAME}}.size, alignment: "
|
"builder.createStructOf(size: {{STRUCTNAME}}.size, alignment: "
|
||||||
@@ -424,7 +424,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
code_ +=
|
code_ +=
|
||||||
"{{ACCESS_TYPE}} static func finish(_ fbb: inout "
|
"{{ACCESS_TYPE}} static func finish(_ fbb: inout "
|
||||||
"FlatBufferBuilder, end: "
|
"FlatBufferBuilder, end: "
|
||||||
"Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, "
|
"Offset, prefix: Bool = false) { fbb.finish(offset: end, "
|
||||||
"fileId: "
|
"fileId: "
|
||||||
"\"{{FILENAME}}\", addPrefix: prefix) }";
|
"\"{{FILENAME}}\", addPrefix: prefix) }";
|
||||||
}
|
}
|
||||||
@@ -470,7 +470,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
"{{ACCESS_TYPE}} static func end{{SHORT_STRUCTNAME}}(_ fbb: inout "
|
"{{ACCESS_TYPE}} static func end{{SHORT_STRUCTNAME}}(_ fbb: inout "
|
||||||
"FlatBufferBuilder, "
|
"FlatBufferBuilder, "
|
||||||
"start: "
|
"start: "
|
||||||
"UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: "
|
"UOffset) -> Offset { let end = Offset(offset: "
|
||||||
"fbb.endTable(at: start))\\";
|
"fbb.endTable(at: start))\\";
|
||||||
if (require_fields.capacity() != 0) {
|
if (require_fields.capacity() != 0) {
|
||||||
std::string fields = "";
|
std::string fields = "";
|
||||||
@@ -492,7 +492,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
}
|
}
|
||||||
code_ += "";
|
code_ += "";
|
||||||
Outdent();
|
Outdent();
|
||||||
code_ += ") -> Offset<UOffset> {";
|
code_ += ") -> Offset {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += "let __start = {{STRUCTNAME}}.start{{SHORT_STRUCTNAME}}(&fbb)";
|
code_ += "let __start = {{STRUCTNAME}}.start{{SHORT_STRUCTNAME}}(&fbb)";
|
||||||
for (auto it = create_func_body.begin(); it < create_func_body.end();
|
for (auto it = create_func_body.begin(); it < create_func_body.end();
|
||||||
@@ -514,8 +514,8 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
|
|
||||||
code_ +=
|
code_ +=
|
||||||
"{{ACCESS_TYPE}} static func "
|
"{{ACCESS_TYPE}} static func "
|
||||||
"sortVectorOf{{SHORT_VALUENAME}}(offsets:[Offset<UOffset>], "
|
"sortVectorOf{{SHORT_VALUENAME}}(offsets:[Offset], "
|
||||||
"_ fbb: inout FlatBufferBuilder) -> Offset<UOffset> {";
|
"_ fbb: inout FlatBufferBuilder) -> Offset {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += spacing + "var off = offsets";
|
code_ += spacing + "var off = offsets";
|
||||||
code_ +=
|
code_ +=
|
||||||
@@ -603,20 +603,18 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto offset_type =
|
|
||||||
IsString(field.value.type) ? "Offset<String>" : "Offset<UOffset>";
|
|
||||||
auto camel_case_name =
|
auto camel_case_name =
|
||||||
MakeCamel(name, false) +
|
MakeCamel(name, false) +
|
||||||
(IsVector(field.value.type) || IsArray(field.value.type)
|
(IsVector(field.value.type) || IsArray(field.value.type)
|
||||||
? "VectorOffset"
|
? "VectorOffset"
|
||||||
: "Offset");
|
: "Offset");
|
||||||
create_func_header.push_back(camel_case_name + " " + name + ": " +
|
create_func_header.push_back(camel_case_name + " " + name + ": " +
|
||||||
offset_type + " = Offset()");
|
"Offset = Offset()");
|
||||||
auto reader_type =
|
auto reader_type =
|
||||||
IsStruct(field.value.type) && field.value.type.struct_def->fixed
|
IsStruct(field.value.type) && field.value.type.struct_def->fixed
|
||||||
? "structOffset: {{TABLEOFFSET}}.{{OFFSET}}.p) }"
|
? "structOffset: {{TABLEOFFSET}}.{{OFFSET}}.p) }"
|
||||||
: "offset: {{VALUENAME}}, at: {{TABLEOFFSET}}.{{OFFSET}}.p) }";
|
: "offset: {{VALUENAME}}, at: {{TABLEOFFSET}}.{{OFFSET}}.p) }";
|
||||||
code_ += offset_type + builder_string + "fbb.add(" + reader_type;
|
code_ += "Offset" + builder_string + "fbb.add(" + reader_type;
|
||||||
|
|
||||||
auto vectortype = field.value.type.VectorType();
|
auto vectortype = field.value.type.VectorType();
|
||||||
|
|
||||||
@@ -731,7 +729,8 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
case BASE_TYPE_UNION:
|
case BASE_TYPE_UNION:
|
||||||
code_.SetValue("CONSTANT", "nil");
|
code_.SetValue("CONSTANT", "nil");
|
||||||
code_ +=
|
code_ +=
|
||||||
"{{ACCESS_TYPE}} func {{VALUENAME}}<T: FlatBufferObject>(type: "
|
"{{ACCESS_TYPE}} func {{VALUENAME}}<T: "
|
||||||
|
"FlatbuffersInitializable>(type: "
|
||||||
"T.Type) -> T" +
|
"T.Type) -> T" +
|
||||||
is_required + " { " + GenOffset() + required_reader +
|
is_required + " { " + GenOffset() + required_reader +
|
||||||
"{{ACCESS}}.union(o) }";
|
"{{ACCESS}}.union(o) }";
|
||||||
@@ -755,7 +754,8 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
code_ += GenArrayMainBody(nullable) + GenOffset() + "\\";
|
code_ += GenArrayMainBody(nullable) + GenOffset() + "\\";
|
||||||
} else {
|
} else {
|
||||||
code_ +=
|
code_ +=
|
||||||
"{{ACCESS_TYPE}} func {{VALUENAME}}<T: FlatBufferObject>(at index: "
|
"{{ACCESS_TYPE}} func {{VALUENAME}}<T: FlatbuffersInitializable>(at "
|
||||||
|
"index: "
|
||||||
"Int32, type: T.Type) -> T? { " +
|
"Int32, type: T.Type) -> T? { " +
|
||||||
GenOffset() + "\\";
|
GenOffset() + "\\";
|
||||||
}
|
}
|
||||||
@@ -884,7 +884,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
code_ += "}";
|
code_ += "}";
|
||||||
code_ +=
|
code_ +=
|
||||||
"{{ACCESS_TYPE}} func pack(builder: inout FlatBufferBuilder) -> "
|
"{{ACCESS_TYPE}} func pack(builder: inout FlatBufferBuilder) -> "
|
||||||
"Offset<UOffset> {";
|
"Offset {";
|
||||||
Indent();
|
Indent();
|
||||||
BuildUnionEnumSwitchCaseWritter(enum_def);
|
BuildUnionEnumSwitchCaseWritter(enum_def);
|
||||||
Outdent();
|
Outdent();
|
||||||
@@ -907,9 +907,9 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
"{{ACCESS_TYPE}} static func pack(_ builder: inout FlatBufferBuilder, "
|
"{{ACCESS_TYPE}} static func pack(_ builder: inout FlatBufferBuilder, "
|
||||||
"obj: "
|
"obj: "
|
||||||
"inout " +
|
"inout " +
|
||||||
name + "?) -> Offset<UOffset> {";
|
name + "?) -> Offset {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += "guard var obj = obj else { return Offset<UOffset>() }";
|
code_ += "guard var obj = obj else { return Offset() }";
|
||||||
code_ += "return pack(&builder, obj: &obj)";
|
code_ += "return pack(&builder, obj: &obj)";
|
||||||
Outdent();
|
Outdent();
|
||||||
code_ += "}";
|
code_ += "}";
|
||||||
@@ -918,7 +918,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
"{{ACCESS_TYPE}} static func pack(_ builder: inout FlatBufferBuilder, "
|
"{{ACCESS_TYPE}} static func pack(_ builder: inout FlatBufferBuilder, "
|
||||||
"obj: "
|
"obj: "
|
||||||
"inout " +
|
"inout " +
|
||||||
name + ") -> Offset<UOffset> {";
|
name + ") -> Offset {";
|
||||||
Indent();
|
Indent();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1032,8 +1032,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
code_ +=
|
code_ +=
|
||||||
"let __" + name + " = builder.create(string: obj." + name + ")";
|
"let __" + name + " = builder.create(string: obj." + name + ")";
|
||||||
} else {
|
} else {
|
||||||
BuildingOptionalObjects(name, "String",
|
BuildingOptionalObjects(name, "builder.create(string: s)");
|
||||||
"builder.create(string: s)");
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1059,7 +1058,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
auto vectortype = field.value.type.VectorType();
|
auto vectortype = field.value.type.VectorType();
|
||||||
switch (vectortype.base_type) {
|
switch (vectortype.base_type) {
|
||||||
case BASE_TYPE_UNION: {
|
case BASE_TYPE_UNION: {
|
||||||
code_ += "var __" + name + "__: [Offset<UOffset>] = []";
|
code_ += "var __" + name + "__: [Offset] = []";
|
||||||
code_ += "for i in obj." + name + " {";
|
code_ += "for i in obj." + name + " {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += "guard let off = i?.pack(builder: &builder) else { continue }";
|
code_ += "guard let off = i?.pack(builder: &builder) else { continue }";
|
||||||
@@ -1076,7 +1075,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
case BASE_TYPE_STRUCT: {
|
case BASE_TYPE_STRUCT: {
|
||||||
if (field.value.type.struct_def &&
|
if (field.value.type.struct_def &&
|
||||||
!field.value.type.struct_def->fixed) {
|
!field.value.type.struct_def->fixed) {
|
||||||
code_ += "var __" + name + "__: [Offset<UOffset>] = []";
|
code_ += "var __" + name + "__: [Offset] = []";
|
||||||
code_ += "for var i in obj." + name + " {";
|
code_ += "for var i in obj." + name + " {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ +=
|
code_ +=
|
||||||
@@ -1116,16 +1115,15 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void BuildingOptionalObjects(const std::string &name,
|
void BuildingOptionalObjects(const std::string &name,
|
||||||
const std::string &object_type,
|
|
||||||
const std::string &body_front) {
|
const std::string &body_front) {
|
||||||
code_ += "let __" + name + ": Offset<" + object_type + ">";
|
code_ += "let __" + name + ": Offset";
|
||||||
code_ += "if let s = obj." + name + " {";
|
code_ += "if let s = obj." + name + " {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += "__" + name + " = " + body_front;
|
code_ += "__" + name + " = " + body_front;
|
||||||
Outdent();
|
Outdent();
|
||||||
code_ += "} else {";
|
code_ += "} else {";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += "__" + name + " = Offset<" + object_type + ">()";
|
code_ += "__" + name + " = Offset()";
|
||||||
Outdent();
|
Outdent();
|
||||||
code_ += "}";
|
code_ += "}";
|
||||||
code_ += "";
|
code_ += "";
|
||||||
@@ -1304,10 +1302,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
auto ev_name = Name(field);
|
auto ev_name = Name(field);
|
||||||
auto type = GenType(field.union_type);
|
auto type = GenType(field.union_type);
|
||||||
auto is_struct = IsStruct(field.union_type) ? type + Mutable() : type;
|
auto is_struct = IsStruct(field.union_type) ? type + Mutable() : type;
|
||||||
if (field.union_type.base_type == BASE_TYPE_NONE ||
|
if (field.union_type.base_type == BASE_TYPE_NONE) { continue; }
|
||||||
IsString(field.union_type)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
code_ += "case ." + ev_name + ":";
|
code_ += "case ." + ev_name + ":";
|
||||||
Indent();
|
Indent();
|
||||||
code_ += "var __obj = value as? " + GenType(field.union_type, true);
|
code_ += "var __obj = value as? " + GenType(field.union_type, true);
|
||||||
@@ -1334,10 +1329,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
for (auto it = ev.Vals().begin(); it < ev.Vals().end(); ++it) {
|
for (auto it = ev.Vals().begin(); it < ev.Vals().end(); ++it) {
|
||||||
auto field = **it;
|
auto field = **it;
|
||||||
auto ev_name = Name(field);
|
auto ev_name = Name(field);
|
||||||
if (field.union_type.base_type == BASE_TYPE_NONE ||
|
if (field.union_type.base_type == BASE_TYPE_NONE) { continue; }
|
||||||
IsString(field.union_type)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
auto type = IsStruct(field.union_type)
|
auto type = IsStruct(field.union_type)
|
||||||
? GenType(field.union_type) + Mutable()
|
? GenType(field.union_type) + Mutable()
|
||||||
: GenType(field.union_type);
|
: GenType(field.union_type);
|
||||||
@@ -1515,7 +1507,7 @@ class SwiftGenerator : public BaseGenerator {
|
|||||||
return WrapInNameSpace(struct_.defined_namespace, Name(struct_));
|
return WrapInNameSpace(struct_.defined_namespace, Name(struct_));
|
||||||
}
|
}
|
||||||
case BASE_TYPE_UNION:
|
case BASE_TYPE_UNION:
|
||||||
default: return "FlatBufferObject";
|
default: return "FlatbuffersInitializable";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// A check if the buffer is being written into by a different table
|
/// A check if the buffer is being written into by a different table
|
||||||
private var isNested = false
|
private var isNested = false
|
||||||
/// Dictonary that stores a map of all the strings that were written to the buffer
|
/// Dictonary that stores a map of all the strings that were written to the buffer
|
||||||
private var stringOffsetMap: [String: Offset<String>] = [:]
|
private var stringOffsetMap: [String: Offset] = [:]
|
||||||
/// A check to see if finish(::) was ever called to retreive data object
|
/// A check to see if finish(::) was ever called to retreive data object
|
||||||
private var finished = false
|
private var finished = false
|
||||||
/// A check to see if the buffer should serialize Default values
|
/// A check to see if the buffer should serialize Default values
|
||||||
@@ -107,7 +107,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameters:
|
/// - Parameters:
|
||||||
/// - table: offset for the table
|
/// - table: offset for the table
|
||||||
/// - fields: Array of all the important fields to be serialized
|
/// - fields: Array of all the important fields to be serialized
|
||||||
mutating public func require(table: Offset<UOffset>, fields: [Int32]) {
|
mutating public func require(table: Offset, fields: [Int32]) {
|
||||||
for field in fields {
|
for field in fields {
|
||||||
let start = _bb.capacity &- Int(table.o)
|
let start = _bb.capacity &- Int(table.o)
|
||||||
let startTable = start &- Int(_bb.read(def: Int32.self, position: start))
|
let startTable = start &- Int(_bb.read(def: Int32.self, position: start))
|
||||||
@@ -121,7 +121,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - offset: Offset of the table
|
/// - offset: Offset of the table
|
||||||
/// - fileId: Takes the fileId
|
/// - fileId: Takes the fileId
|
||||||
/// - prefix: if false it wont add the size of the buffer
|
/// - prefix: if false it wont add the size of the buffer
|
||||||
mutating public func finish<T>(offset: Offset<T>, fileId: String, addPrefix prefix: Bool = false) {
|
mutating public func finish(offset: Offset, fileId: String, addPrefix prefix: Bool = false) {
|
||||||
let size = MemoryLayout<UOffset>.size
|
let size = MemoryLayout<UOffset>.size
|
||||||
preAlign(len: size &+ (prefix ? size : 0) &+ FileIdLength, alignment: _minAlignment)
|
preAlign(len: size &+ (prefix ? size : 0) &+ FileIdLength, alignment: _minAlignment)
|
||||||
assert(fileId.count == FileIdLength, "Flatbuffers requires file id to be 4")
|
assert(fileId.count == FileIdLength, "Flatbuffers requires file id to be 4")
|
||||||
@@ -133,7 +133,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameters:
|
/// - Parameters:
|
||||||
/// - offset: Offset of the table
|
/// - offset: Offset of the table
|
||||||
/// - prefix: if false it wont add the size of the buffer
|
/// - prefix: if false it wont add the size of the buffer
|
||||||
mutating public func finish<T>(offset: Offset<T>, addPrefix prefix: Bool = false) {
|
mutating public func finish(offset: Offset, addPrefix prefix: Bool = false) {
|
||||||
notNested()
|
notNested()
|
||||||
let size = MemoryLayout<UOffset>.size
|
let size = MemoryLayout<UOffset>.size
|
||||||
preAlign(len: size &+ (prefix ? size : 0), alignment: _minAlignment)
|
preAlign(len: size &+ (prefix ? size : 0), alignment: _minAlignment)
|
||||||
@@ -296,7 +296,7 @@ public struct FlatBufferBuilder {
|
|||||||
///
|
///
|
||||||
/// The current function will fatalError if startVector is called before serializing the vector
|
/// The current function will fatalError if startVector is called before serializing the vector
|
||||||
/// - Parameter len: Length of the buffer
|
/// - Parameter len: Length of the buffer
|
||||||
mutating public func endVector(len: Int) -> Offset<UOffset> {
|
mutating public func endVector(len: Int) -> Offset {
|
||||||
assert(isNested, "Calling endVector without calling startVector")
|
assert(isNested, "Calling endVector without calling startVector")
|
||||||
isNested = false
|
isNested = false
|
||||||
return Offset(offset: push(element: Int32(len)))
|
return Offset(offset: push(element: Int32(len)))
|
||||||
@@ -305,7 +305,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// Creates a vector of type Scalar in the buffer
|
/// Creates a vector of type Scalar in the buffer
|
||||||
/// - Parameter elements: elements to be written into the buffer
|
/// - Parameter elements: elements to be written into the buffer
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector<T: Scalar>(_ elements: [T]) -> Offset<UOffset> {
|
mutating public func createVector<T: Scalar>(_ elements: [T]) -> Offset {
|
||||||
createVector(elements, size: elements.count)
|
createVector(elements, size: elements.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -313,7 +313,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameter elements: Elements to be written into the buffer
|
/// - Parameter elements: Elements to be written into the buffer
|
||||||
/// - Parameter size: Count of elements
|
/// - Parameter size: Count of elements
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector<T: Scalar>(_ elements: [T], size: Int) -> Offset<UOffset> {
|
mutating public func createVector<T: Scalar>(_ elements: [T], size: Int) -> Offset {
|
||||||
let size = size
|
let size = size
|
||||||
startVector(size, elementSize: MemoryLayout<T>.size)
|
startVector(size, elementSize: MemoryLayout<T>.size)
|
||||||
_bb.push(elements: elements)
|
_bb.push(elements: elements)
|
||||||
@@ -323,7 +323,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// Creates a vector of type Enums in the buffer
|
/// Creates a vector of type Enums in the buffer
|
||||||
/// - Parameter elements: elements to be written into the buffer
|
/// - Parameter elements: elements to be written into the buffer
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector<T: Enum>(_ elements: [T]) -> Offset<UOffset> {
|
mutating public func createVector<T: Enum>(_ elements: [T]) -> Offset {
|
||||||
createVector(elements, size: elements.count)
|
createVector(elements, size: elements.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -331,7 +331,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameter elements: Elements to be written into the buffer
|
/// - Parameter elements: Elements to be written into the buffer
|
||||||
/// - Parameter size: Count of elements
|
/// - Parameter size: Count of elements
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector<T: Enum>(_ elements: [T], size: Int) -> Offset<UOffset> {
|
mutating public func createVector<T: Enum>(_ elements: [T], size: Int) -> Offset {
|
||||||
let size = size
|
let size = size
|
||||||
startVector(size, elementSize: T.byteSize)
|
startVector(size, elementSize: T.byteSize)
|
||||||
for e in elements.reversed() {
|
for e in elements.reversed() {
|
||||||
@@ -343,7 +343,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// Creates a vector of type Offsets in the buffer
|
/// Creates a vector of type Offsets in the buffer
|
||||||
/// - Parameter offsets:Array of offsets of type T
|
/// - Parameter offsets:Array of offsets of type T
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector<T>(ofOffsets offsets: [Offset<T>]) -> Offset<UOffset> {
|
mutating public func createVector(ofOffsets offsets: [Offset]) -> Offset {
|
||||||
createVector(ofOffsets: offsets, len: offsets.count)
|
createVector(ofOffsets: offsets, len: offsets.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -351,8 +351,8 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameter elements: Array of offsets of type T
|
/// - Parameter elements: Array of offsets of type T
|
||||||
/// - Parameter size: Count of elements
|
/// - Parameter size: Count of elements
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector<T>(ofOffsets offsets: [Offset<T>], len: Int) -> Offset<UOffset> {
|
mutating public func createVector(ofOffsets offsets: [Offset], len: Int) -> Offset {
|
||||||
startVector(len, elementSize: MemoryLayout<Offset<T>>.size)
|
startVector(len, elementSize: MemoryLayout<Offset>.size)
|
||||||
for o in offsets.reversed() {
|
for o in offsets.reversed() {
|
||||||
push(element: o)
|
push(element: o)
|
||||||
}
|
}
|
||||||
@@ -362,8 +362,8 @@ public struct FlatBufferBuilder {
|
|||||||
/// Creates a vector of Strings
|
/// Creates a vector of Strings
|
||||||
/// - Parameter str: a vector of strings that will be written into the buffer
|
/// - Parameter str: a vector of strings that will be written into the buffer
|
||||||
/// - returns: Offset of the vector
|
/// - returns: Offset of the vector
|
||||||
mutating public func createVector(ofStrings str: [String]) -> Offset<UOffset> {
|
mutating public func createVector(ofStrings str: [String]) -> Offset {
|
||||||
var offsets: [Offset<String>] = []
|
var offsets: [Offset] = []
|
||||||
for s in str {
|
for s in str {
|
||||||
offsets.append(create(string: s))
|
offsets.append(create(string: s))
|
||||||
}
|
}
|
||||||
@@ -373,7 +373,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// Creates a vector of `Native swift structs` which were padded to flatbuffers standards
|
/// Creates a vector of `Native swift structs` which were padded to flatbuffers standards
|
||||||
/// - Parameter structs: A vector of structs
|
/// - Parameter structs: A vector of structs
|
||||||
/// - Returns: offset of the vector
|
/// - Returns: offset of the vector
|
||||||
mutating public func createVector<T: NativeStruct>(ofStructs structs: [T]) -> Offset<UOffset> {
|
mutating public func createVector<T: NativeStruct>(ofStructs structs: [T]) -> Offset {
|
||||||
startVector(structs.count * MemoryLayout<T>.size, elementSize: MemoryLayout<T>.alignment)
|
startVector(structs.count * MemoryLayout<T>.size, elementSize: MemoryLayout<T>.alignment)
|
||||||
for i in structs.reversed() {
|
for i in structs.reversed() {
|
||||||
_ = create(struct: i)
|
_ = create(struct: i)
|
||||||
@@ -390,7 +390,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Returns: offset of written struct
|
/// - Returns: offset of written struct
|
||||||
@discardableResult
|
@discardableResult
|
||||||
mutating public func create<T: NativeStruct>(
|
mutating public func create<T: NativeStruct>(
|
||||||
struct s: T, position: VOffset) -> Offset<UOffset>
|
struct s: T, position: VOffset) -> Offset
|
||||||
{
|
{
|
||||||
let offset = create(struct: s)
|
let offset = create(struct: s)
|
||||||
_vtableStorage.add(loc: FieldLoc(offset: _bb.size, position: VOffset(position)))
|
_vtableStorage.add(loc: FieldLoc(offset: _bb.size, position: VOffset(position)))
|
||||||
@@ -403,7 +403,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Returns: offset of written struct
|
/// - Returns: offset of written struct
|
||||||
@discardableResult
|
@discardableResult
|
||||||
mutating public func create<T: NativeStruct>(
|
mutating public func create<T: NativeStruct>(
|
||||||
struct s: T) -> Offset<UOffset>
|
struct s: T) -> Offset
|
||||||
{
|
{
|
||||||
let size = MemoryLayout<T>.size
|
let size = MemoryLayout<T>.size
|
||||||
preAlign(len: size, alignment: MemoryLayout<T>.alignment)
|
preAlign(len: size, alignment: MemoryLayout<T>.alignment)
|
||||||
@@ -416,7 +416,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// Insets a string into the buffer using UTF8
|
/// Insets a string into the buffer using UTF8
|
||||||
/// - Parameter str: String to be serialized
|
/// - Parameter str: String to be serialized
|
||||||
/// - returns: The strings offset in the buffer
|
/// - returns: The strings offset in the buffer
|
||||||
mutating public func create(string str: String?) -> Offset<String> {
|
mutating public func create(string str: String?) -> Offset {
|
||||||
guard let str = str else { return Offset() }
|
guard let str = str else { return Offset() }
|
||||||
let len = str.utf8.count
|
let len = str.utf8.count
|
||||||
notNested()
|
notNested()
|
||||||
@@ -432,7 +432,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// The function checks the stringOffsetmap if it's seen a similar string before
|
/// The function checks the stringOffsetmap if it's seen a similar string before
|
||||||
/// - Parameter str: String to be serialized
|
/// - Parameter str: String to be serialized
|
||||||
/// - returns: The strings offset in the buffer
|
/// - returns: The strings offset in the buffer
|
||||||
mutating public func createShared(string str: String?) -> Offset<String> {
|
mutating public func createShared(string str: String?) -> Offset {
|
||||||
guard let str = str else { return Offset() }
|
guard let str = str else { return Offset() }
|
||||||
if let offset = stringOffsetMap[str] {
|
if let offset = stringOffsetMap[str] {
|
||||||
return offset
|
return offset
|
||||||
@@ -448,7 +448,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameters:
|
/// - Parameters:
|
||||||
/// - offset: Offset of another object to be written
|
/// - offset: Offset of another object to be written
|
||||||
/// - position: The predefined position of the object
|
/// - position: The predefined position of the object
|
||||||
mutating public func add<T>(offset: Offset<T>, at position: VOffset) {
|
mutating public func add(offset: Offset, at position: VOffset) {
|
||||||
if offset.isEmpty { return }
|
if offset.isEmpty { return }
|
||||||
add(element: refer(to: offset.o), def: 0, at: position)
|
add(element: refer(to: offset.o), def: 0, at: position)
|
||||||
}
|
}
|
||||||
@@ -457,7 +457,7 @@ public struct FlatBufferBuilder {
|
|||||||
/// - Parameter o: Offset
|
/// - Parameter o: Offset
|
||||||
/// - returns: Position of the offset
|
/// - returns: Position of the offset
|
||||||
@discardableResult
|
@discardableResult
|
||||||
mutating public func push<T>(element o: Offset<T>) -> UOffset {
|
mutating public func push(element o: Offset) -> UOffset {
|
||||||
push(element: refer(to: o.o))
|
push(element: refer(to: o.o))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,15 +20,21 @@ import Foundation
|
|||||||
/// since now we will be serializing native structs into the buffer.
|
/// since now we will be serializing native structs into the buffer.
|
||||||
public protocol NativeStruct {}
|
public protocol NativeStruct {}
|
||||||
|
|
||||||
/// FlatbufferObject structures all the Flatbuffers objects
|
/// FlatbuffersInitializable is a protocol that allows any object to be
|
||||||
public protocol FlatBufferObject {
|
/// Initialized from a ByteBuffer
|
||||||
var __buffer: ByteBuffer! { get }
|
public protocol FlatbuffersInitializable {
|
||||||
init(_ bb: ByteBuffer, o: Int32)
|
init(_ bb: ByteBuffer, o: Int32)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// FlatbufferObject structures all the Flatbuffers objects
|
||||||
|
public protocol FlatBufferObject: FlatbuffersInitializable {
|
||||||
|
var __buffer: ByteBuffer! { get }
|
||||||
|
}
|
||||||
|
|
||||||
public protocol ObjectAPIPacker {
|
public protocol ObjectAPIPacker {
|
||||||
associatedtype T
|
associatedtype T
|
||||||
static func pack(_ builder: inout FlatBufferBuilder, obj: inout T) -> Offset<UOffset>
|
static func pack(_ builder: inout FlatBufferBuilder, obj: inout T?) -> Offset
|
||||||
|
static func pack(_ builder: inout FlatBufferBuilder, obj: inout T) -> Offset
|
||||||
mutating func unpack() -> T
|
mutating func unpack() -> T
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
import Foundation
|
import Foundation
|
||||||
|
|
||||||
/// Offset object for all the Objects that are written into the buffer
|
/// Offset object for all the Objects that are written into the buffer
|
||||||
public struct Offset<T> {
|
public struct Offset {
|
||||||
/// Offset of the object in the buffer
|
/// Offset of the object in the buffer
|
||||||
public var o: UOffset
|
public var o: UOffset
|
||||||
/// Returns false if the offset is equal to zero
|
/// Returns false if the offset is equal to zero
|
||||||
|
|||||||
59
swift/Sources/FlatBuffers/String+extension.swift
Normal file
59
swift/Sources/FlatBuffers/String+extension.swift
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021 Google Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import Foundation
|
||||||
|
|
||||||
|
extension String: FlatbuffersInitializable {
|
||||||
|
|
||||||
|
/// Initailizes a string from a Flatbuffers ByteBuffer
|
||||||
|
/// - Parameters:
|
||||||
|
/// - bb: ByteBuffer containing the readable string
|
||||||
|
/// - o: Current position
|
||||||
|
public init(_ bb: ByteBuffer, o: Int32) {
|
||||||
|
let count = bb.read(def: Int32.self, position: Int(o))
|
||||||
|
self = bb.readString(
|
||||||
|
at: Int32(MemoryLayout<Int32>.size) + o,
|
||||||
|
count: count) ?? ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
extension String: ObjectAPIPacker {
|
||||||
|
|
||||||
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout String?) -> Offset {
|
||||||
|
guard var obj = obj else { return Offset() }
|
||||||
|
return pack(&builder, obj: &obj)
|
||||||
|
}
|
||||||
|
|
||||||
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout String) -> Offset {
|
||||||
|
builder.create(string: obj)
|
||||||
|
}
|
||||||
|
|
||||||
|
public mutating func unpack() -> String {
|
||||||
|
self
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
extension String: NativeObject {
|
||||||
|
|
||||||
|
public func serialize<T: ObjectAPIPacker>(type: T.Type) -> ByteBuffer where T.T == Self {
|
||||||
|
fatalError("serialize should never be called from string directly")
|
||||||
|
}
|
||||||
|
|
||||||
|
public func serialize<T: ObjectAPIPacker>(builder: inout FlatBufferBuilder, type: T.Type) -> ByteBuffer where T.T == Self {
|
||||||
|
fatalError("serialize should never be called from string directly")
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -80,12 +80,12 @@ public struct Table {
|
|||||||
return r
|
return r
|
||||||
}
|
}
|
||||||
|
|
||||||
public func union<T: FlatBufferObject>(_ o: Int32) -> T {
|
public func union<T: FlatbuffersInitializable>(_ o: Int32) -> T {
|
||||||
let o = o + postion
|
let o = o + postion
|
||||||
return directUnion(o)
|
return directUnion(o)
|
||||||
}
|
}
|
||||||
|
|
||||||
public func directUnion<T: FlatBufferObject>(_ o: Int32) -> T {
|
public func directUnion<T: FlatbuffersInitializable>(_ o: Int32) -> T {
|
||||||
T.init(bb, o: o + bb.read(def: Int32.self, position: Int(o)))
|
T.init(bb, o: o + bb.read(def: Int32.self, position: Int(o)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ func benchmarkThreeMillionStructs() {
|
|||||||
|
|
||||||
var fb = FlatBufferBuilder(initialSize: Int32(rawSize * 1600))
|
var fb = FlatBufferBuilder(initialSize: Int32(rawSize * 1600))
|
||||||
|
|
||||||
var offsets: [Offset<UOffset>] = []
|
var offsets: [Offset] = []
|
||||||
for _ in 0..<structCount {
|
for _ in 0..<structCount {
|
||||||
fb.startVector(5 * MemoryLayout<AA>.size, elementSize: MemoryLayout<AA>.alignment)
|
fb.startVector(5 * MemoryLayout<AA>.size, elementSize: MemoryLayout<AA>.alignment)
|
||||||
for _ in 0..<5 {
|
for _ in 0..<5 {
|
||||||
@@ -96,12 +96,12 @@ func benchmarkThreeMillionStructs() {
|
|||||||
let vector = fb.endVector(len: 5)
|
let vector = fb.endVector(len: 5)
|
||||||
let start = fb.startTable(with: 1)
|
let start = fb.startTable(with: 1)
|
||||||
fb.add(offset: vector, at: 4)
|
fb.add(offset: vector, at: 4)
|
||||||
offsets.append(Offset<UOffset>(offset: fb.endTable(at: start)))
|
offsets.append(Offset(offset: fb.endTable(at: start)))
|
||||||
}
|
}
|
||||||
let vector = fb.createVector(ofOffsets: offsets)
|
let vector = fb.createVector(ofOffsets: offsets)
|
||||||
let start = fb.startTable(with: 1)
|
let start = fb.startTable(with: 1)
|
||||||
fb.add(offset: vector, at: 4)
|
fb.add(offset: vector, at: 4)
|
||||||
let root = Offset<UOffset>(offset: fb.endTable(at: start))
|
let root = Offset(offset: fb.endTable(at: start))
|
||||||
fb.finish(offset: root)
|
fb.finish(offset: root)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ class FlatBuffersMonsterWriterTests: XCTestCase {
|
|||||||
func createMonster(withPrefix prefix: Bool) -> FlatBufferBuilder {
|
func createMonster(withPrefix prefix: Bool) -> FlatBufferBuilder {
|
||||||
var fbb = FlatBufferBuilder(initialSize: 1)
|
var fbb = FlatBufferBuilder(initialSize: 1)
|
||||||
let names = [fbb.create(string: "Frodo"), fbb.create(string: "Barney"), fbb.create(string: "Wilma")]
|
let names = [fbb.create(string: "Frodo"), fbb.create(string: "Barney"), fbb.create(string: "Wilma")]
|
||||||
var offsets: [Offset<UOffset>] = []
|
var offsets: [Offset] = []
|
||||||
let start1 = Monster.startMonster(&fbb)
|
let start1 = Monster.startMonster(&fbb)
|
||||||
Monster.add(name: names[0], &fbb)
|
Monster.add(name: names[0], &fbb)
|
||||||
offsets.append(Monster.endMonster(&fbb, start: start1))
|
offsets.append(Monster.endMonster(&fbb, start: start1))
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ final class FlatBuffersTests: XCTestCase {
|
|||||||
func testEndian() { XCTAssertEqual(isLitteEndian, true) }
|
func testEndian() { XCTAssertEqual(isLitteEndian, true) }
|
||||||
|
|
||||||
func testOffset() {
|
func testOffset() {
|
||||||
let o = Offset<Int>()
|
let o = Offset()
|
||||||
let b = Offset<Int>(offset: 1)
|
let b = Offset(offset: 1)
|
||||||
XCTAssertEqual(o.isEmpty, true)
|
XCTAssertEqual(o.isEmpty, true)
|
||||||
XCTAssertEqual(b.isEmpty, false)
|
XCTAssertEqual(b.isEmpty, false)
|
||||||
}
|
}
|
||||||
@@ -130,7 +130,7 @@ class Country {
|
|||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
name: String,
|
name: String,
|
||||||
log: Int32,
|
log: Int32,
|
||||||
lan: Int32) -> Offset<Country>
|
lan: Int32) -> Offset
|
||||||
{
|
{
|
||||||
createCountry(builder: &builder, offset: builder.create(string: name), log: log, lan: lan)
|
createCountry(builder: &builder, offset: builder.create(string: name), log: log, lan: lan)
|
||||||
}
|
}
|
||||||
@@ -138,9 +138,9 @@ class Country {
|
|||||||
@inlinable
|
@inlinable
|
||||||
static func createCountry(
|
static func createCountry(
|
||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
offset: Offset<String>,
|
offset: Offset,
|
||||||
log: Int32,
|
log: Int32,
|
||||||
lan: Int32) -> Offset<Country>
|
lan: Int32) -> Offset
|
||||||
{
|
{
|
||||||
let _start = builder.startTable(with: 3)
|
let _start = builder.startTable(with: 3)
|
||||||
Country.add(builder: &builder, lng: log)
|
Country.add(builder: &builder, lng: log)
|
||||||
@@ -150,7 +150,7 @@ class Country {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@inlinable
|
@inlinable
|
||||||
static func end(builder: inout FlatBufferBuilder, startOffset: UOffset) -> Offset<Country> {
|
static func end(builder: inout FlatBufferBuilder, startOffset: UOffset) -> Offset {
|
||||||
Offset(offset: builder.endTable(at: startOffset))
|
Offset(offset: builder.endTable(at: startOffset))
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -160,7 +160,7 @@ class Country {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@inlinable
|
@inlinable
|
||||||
static func add(builder: inout FlatBufferBuilder, name: Offset<String>) {
|
static func add(builder: inout FlatBufferBuilder, name: Offset) {
|
||||||
builder.add(offset: name, at: Country.offsets.name)
|
builder.add(offset: name, at: Country.offsets.name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -138,6 +138,46 @@ final class FlatBuffersUnionTests: XCTestCase {
|
|||||||
XCTAssertEqual(packedMovie.characters(at: 1, type: Attacker.self)?.swordAttackDamage, movie.characters(at: 1, type: Attacker.self)?.swordAttackDamage)
|
XCTAssertEqual(packedMovie.characters(at: 1, type: Attacker.self)?.swordAttackDamage, movie.characters(at: 1, type: Attacker.self)?.swordAttackDamage)
|
||||||
XCTAssertEqual(packedMovie.characters(at: 2, type: BookReader_Mutable.self)?.booksRead, movie.characters(at: 2, type: BookReader_Mutable.self)?.booksRead)
|
XCTAssertEqual(packedMovie.characters(at: 2, type: BookReader_Mutable.self)?.booksRead, movie.characters(at: 2, type: BookReader_Mutable.self)?.booksRead)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func testStringUnion() {
|
||||||
|
let string = "Awesome \\\\t\t\nstring!"
|
||||||
|
var fb = FlatBufferBuilder()
|
||||||
|
let stringOffset = fb.create(string: string)
|
||||||
|
let characterType: [Character] = [.bookfan, .other]
|
||||||
|
|
||||||
|
let characters = [
|
||||||
|
fb.create(struct: BookReader(booksRead: 7)),
|
||||||
|
stringOffset,
|
||||||
|
]
|
||||||
|
let types = fb.createVector(characterType)
|
||||||
|
let characterVector = fb.createVector(ofOffsets: characters)
|
||||||
|
|
||||||
|
let end = Movie.createMovie(
|
||||||
|
&fb,
|
||||||
|
mainCharacterType: .other,
|
||||||
|
mainCharacterOffset: Offset(offset: stringOffset.o),
|
||||||
|
charactersTypeVectorOffset: types,
|
||||||
|
charactersVectorOffset: characterVector)
|
||||||
|
Movie.finish(&fb, end: end)
|
||||||
|
|
||||||
|
var movie = Movie.getRootAsMovie(bb: fb.sizedBuffer)
|
||||||
|
XCTAssertEqual(movie.mainCharacter(type: String.self), string)
|
||||||
|
XCTAssertEqual(movie.characters(at: 0, type: BookReader_Mutable.self)?.booksRead, 7)
|
||||||
|
XCTAssertEqual(movie.characters(at: 1, type: String.self), string)
|
||||||
|
|
||||||
|
var objc: MovieT? = movie.unpack()
|
||||||
|
XCTAssertEqual(objc?.mainCharacter?.value as? String, string)
|
||||||
|
XCTAssertEqual((objc?.characters[0]?.value as? BookReader)?.booksRead, 7)
|
||||||
|
XCTAssertEqual(objc?.characters[1]?.value as? String, string)
|
||||||
|
fb.clear()
|
||||||
|
let newMovie = Movie.pack(&fb, obj: &objc)
|
||||||
|
fb.finish(offset: newMovie)
|
||||||
|
|
||||||
|
let packedMovie = Movie.getRootAsMovie(bb: fb.buffer)
|
||||||
|
XCTAssertEqual(packedMovie.mainCharacter(type: String.self), string)
|
||||||
|
XCTAssertEqual(packedMovie.characters(at: 0, type: BookReader_Mutable.self)?.booksRead, 7)
|
||||||
|
XCTAssertEqual(packedMovie.characters(at: 1, type: String.self), string)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum ColorsNameSpace {
|
public enum ColorsNameSpace {
|
||||||
@@ -165,10 +205,10 @@ public enum ColorsNameSpace {
|
|||||||
of: Int32.self,
|
of: Int32.self,
|
||||||
offset: _accessor.vector(at: o) + index * 4)) }
|
offset: _accessor.vector(at: o) + index * 4)) }
|
||||||
static func startMonster(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
static func startMonster(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
static func add(colors: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(
|
static func add(colors: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(
|
||||||
offset: colors,
|
offset: colors,
|
||||||
at: 4) }
|
at: 4) }
|
||||||
static func endMonster(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
static func endMonster(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -184,13 +224,13 @@ struct FinalMonster {
|
|||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
position: Vec,
|
position: Vec,
|
||||||
hp: Int16,
|
hp: Int16,
|
||||||
name: Offset<String>,
|
name: Offset,
|
||||||
inventory: Offset<UOffset>,
|
inventory: Offset,
|
||||||
color: Color3,
|
color: Color3,
|
||||||
weapons: Offset<UOffset>,
|
weapons: Offset,
|
||||||
equipment: Equipment = .none,
|
equipment: Equipment = .none,
|
||||||
equippedOffset: Offset<Weapon>,
|
equippedOffset: Offset,
|
||||||
path: Offset<UOffset>) -> Offset<LocalMonster>
|
path: Offset) -> Offset
|
||||||
{
|
{
|
||||||
let start = builder.startTable(with: 11)
|
let start = builder.startTable(with: 11)
|
||||||
builder.create(struct: position, position: 4)
|
builder.create(struct: position, position: 4)
|
||||||
@@ -228,9 +268,9 @@ struct LocalMonster {
|
|||||||
@inlinable
|
@inlinable
|
||||||
static func createMonster(
|
static func createMonster(
|
||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
offset: Offset<UOffset>,
|
offset: Offset,
|
||||||
equipment: Equipment = .none,
|
equipment: Equipment = .none,
|
||||||
equippedOffset: UOffset) -> Offset<LocalMonster>
|
equippedOffset: UOffset) -> Offset
|
||||||
{
|
{
|
||||||
let start = builder.startTable(with: 3)
|
let start = builder.startTable(with: 3)
|
||||||
builder.add(element: equippedOffset, def: 0, at: 8)
|
builder.add(element: equippedOffset, def: 0, at: 8)
|
||||||
@@ -259,8 +299,8 @@ struct Weapon: FlatBufferObject {
|
|||||||
@inlinable
|
@inlinable
|
||||||
static func createWeapon(
|
static func createWeapon(
|
||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
offset: Offset<String>,
|
offset: Offset,
|
||||||
dmg: Int16) -> Offset<Weapon>
|
dmg: Int16) -> Offset
|
||||||
{
|
{
|
||||||
let _start = builder.startTable(with: 2)
|
let _start = builder.startTable(with: 2)
|
||||||
Weapon.add(builder: &builder, name: offset)
|
Weapon.add(builder: &builder, name: offset)
|
||||||
@@ -269,12 +309,12 @@ struct Weapon: FlatBufferObject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@inlinable
|
@inlinable
|
||||||
static func end(builder: inout FlatBufferBuilder, startOffset: UOffset) -> Offset<Weapon> {
|
static func end(builder: inout FlatBufferBuilder, startOffset: UOffset) -> Offset {
|
||||||
Offset(offset: builder.endTable(at: startOffset))
|
Offset(offset: builder.endTable(at: startOffset))
|
||||||
}
|
}
|
||||||
|
|
||||||
@inlinable
|
@inlinable
|
||||||
static func add(builder: inout FlatBufferBuilder, name: Offset<String>) {
|
static func add(builder: inout FlatBufferBuilder, name: Offset) {
|
||||||
builder.add(offset: name, at: Weapon.offsets.name)
|
builder.add(offset: name, at: Weapon.offsets.name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -109,23 +109,23 @@ struct Numbers {
|
|||||||
var vArrayDouble: [Double]? { __t.getVector(at: 4) }
|
var vArrayDouble: [Double]? { __t.getVector(at: 4) }
|
||||||
var vArrayFloat: [Float32]? { __t.getVector(at: 4) }
|
var vArrayFloat: [Float32]? { __t.getVector(at: 4) }
|
||||||
|
|
||||||
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Int]) -> Offset<UOffset> {
|
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Int]) -> Offset {
|
||||||
b.createVector(array, size: array.count)
|
b.createVector(array, size: array.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Int32]) -> Offset<UOffset> {
|
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Int32]) -> Offset {
|
||||||
b.createVector(array, size: array.count)
|
b.createVector(array, size: array.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Double]) -> Offset<UOffset> {
|
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Double]) -> Offset {
|
||||||
b.createVector(array, size: array.count)
|
b.createVector(array, size: array.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Float32]) -> Offset<UOffset> {
|
static func createNumbersVector(b: inout FlatBufferBuilder, array: [Float32]) -> Offset {
|
||||||
b.createVector(array, size: array.count)
|
b.createVector(array, size: array.count)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func createNumbers(b: inout FlatBufferBuilder, o: Offset<UOffset>) -> Offset<UOffset> {
|
static func createNumbers(b: inout FlatBufferBuilder, o: Offset) -> Offset {
|
||||||
let start = b.startTable(with: 1)
|
let start = b.startTable(with: 1)
|
||||||
b.add(offset: o, at: 4)
|
b.add(offset: o, at: 4)
|
||||||
return Offset(offset: b.endTable(at: start))
|
return Offset(offset: b.endTable(at: start))
|
||||||
|
|||||||
@@ -55,16 +55,16 @@ class CountryDouble {
|
|||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
name: String,
|
name: String,
|
||||||
log: Double,
|
log: Double,
|
||||||
lan: Double) -> Offset<Country>
|
lan: Double) -> Offset
|
||||||
{
|
{
|
||||||
createCountry(builder: &builder, offset: builder.create(string: name), log: log, lan: lan)
|
createCountry(builder: &builder, offset: builder.create(string: name), log: log, lan: lan)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func createCountry(
|
static func createCountry(
|
||||||
builder: inout FlatBufferBuilder,
|
builder: inout FlatBufferBuilder,
|
||||||
offset: Offset<String>,
|
offset: Offset,
|
||||||
log: Double,
|
log: Double,
|
||||||
lan: Double) -> Offset<Country>
|
lan: Double) -> Offset
|
||||||
{
|
{
|
||||||
let _start = builder.startTable(with: 3)
|
let _start = builder.startTable(with: 3)
|
||||||
CountryDouble.add(builder: &builder, lng: log)
|
CountryDouble.add(builder: &builder, lng: log)
|
||||||
@@ -73,7 +73,7 @@ class CountryDouble {
|
|||||||
return CountryDouble.end(builder: &builder, startOffset: _start)
|
return CountryDouble.end(builder: &builder, startOffset: _start)
|
||||||
}
|
}
|
||||||
|
|
||||||
static func end(builder: inout FlatBufferBuilder, startOffset: UOffset) -> Offset<Country> {
|
static func end(builder: inout FlatBufferBuilder, startOffset: UOffset) -> Offset {
|
||||||
Offset(offset: builder.endTable(at: startOffset))
|
Offset(offset: builder.endTable(at: startOffset))
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -81,7 +81,7 @@ class CountryDouble {
|
|||||||
add(builder: &builder, name: builder.create(string: name))
|
add(builder: &builder, name: builder.create(string: name))
|
||||||
}
|
}
|
||||||
|
|
||||||
static func add(builder: inout FlatBufferBuilder, name: Offset<String>) {
|
static func add(builder: inout FlatBufferBuilder, name: Offset) {
|
||||||
builder.add(offset: name, at: Country.offsets.name)
|
builder.add(offset: name, at: Country.offsets.name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -44,6 +44,6 @@ public struct TestMutatingBool: FlatBufferObject {
|
|||||||
public var mutableB: Property_Mutable? { let o = _accessor.offset(VTOFFSET.b.v); return o == 0 ? nil : Property_Mutable(_accessor.bb, o: o + _accessor.postion) }
|
public var mutableB: Property_Mutable? { let o = _accessor.offset(VTOFFSET.b.v); return o == 0 ? nil : Property_Mutable(_accessor.bb, o: o + _accessor.postion) }
|
||||||
public static func startTestMutatingBool(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
public static func startTestMutatingBool(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
public static func add(b: Property?, _ fbb: inout FlatBufferBuilder) { guard let b = b else { return }; _ = fbb.create(struct: b, position: VTOFFSET.b.p) }
|
public static func add(b: Property?, _ fbb: inout FlatBufferBuilder) { guard let b = b else { return }; _ = fbb.create(struct: b, position: VTOFFSET.b.p) }
|
||||||
public static func endTestMutatingBool(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endTestMutatingBool(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ extension FlatBuffersUnionTests {
|
|||||||
("testCreateMonstor", testCreateMonstor),
|
("testCreateMonstor", testCreateMonstor),
|
||||||
("testEndTableFinish", testEndTableFinish),
|
("testEndTableFinish", testEndTableFinish),
|
||||||
("testEnumVector", testEnumVector),
|
("testEnumVector", testEnumVector),
|
||||||
|
("testStringUnion", testStringUnion),
|
||||||
("testUnionVector", testUnionVector),
|
("testUnionVector", testUnionVector),
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public struct MyGame_Example_Any_Union {
|
|||||||
self.type = type
|
self.type = type
|
||||||
self.value = v
|
self.value = v
|
||||||
}
|
}
|
||||||
public func pack(builder: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public func pack(builder: inout FlatBufferBuilder) -> Offset {
|
||||||
switch type {
|
switch type {
|
||||||
case .monster:
|
case .monster:
|
||||||
var __obj = value as? MyGame_Example_MonsterT
|
var __obj = value as? MyGame_Example_MonsterT
|
||||||
@@ -92,7 +92,7 @@ public struct MyGame_Example_AnyUniqueAliasesUnion {
|
|||||||
self.type = type
|
self.type = type
|
||||||
self.value = v
|
self.value = v
|
||||||
}
|
}
|
||||||
public func pack(builder: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public func pack(builder: inout FlatBufferBuilder) -> Offset {
|
||||||
switch type {
|
switch type {
|
||||||
case .m:
|
case .m:
|
||||||
var __obj = value as? MyGame_Example_MonsterT
|
var __obj = value as? MyGame_Example_MonsterT
|
||||||
@@ -128,7 +128,7 @@ public struct MyGame_Example_AnyAmbiguousAliasesUnion {
|
|||||||
self.type = type
|
self.type = type
|
||||||
self.value = v
|
self.value = v
|
||||||
}
|
}
|
||||||
public func pack(builder: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public func pack(builder: inout FlatBufferBuilder) -> Offset {
|
||||||
switch type {
|
switch type {
|
||||||
case .m1:
|
case .m1:
|
||||||
var __obj = value as? MyGame_Example_MonsterT
|
var __obj = value as? MyGame_Example_MonsterT
|
||||||
@@ -187,12 +187,12 @@ public struct MyGame_Example_Test_Mutable: FlatBufferObject {
|
|||||||
public mutating func unpack() -> MyGame_Example_Test {
|
public mutating func unpack() -> MyGame_Example_Test {
|
||||||
return MyGame_Example_Test(&self)
|
return MyGame_Example_Test(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Test?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Test?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Test) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Test) -> Offset {
|
||||||
return builder.create(struct: obj)
|
return builder.create(struct: obj)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -271,12 +271,12 @@ public struct MyGame_Example_Vec3_Mutable: FlatBufferObject {
|
|||||||
public mutating func unpack() -> MyGame_Example_Vec3 {
|
public mutating func unpack() -> MyGame_Example_Vec3 {
|
||||||
return MyGame_Example_Vec3(&self)
|
return MyGame_Example_Vec3(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Vec3?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Vec3?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Vec3) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Vec3) -> Offset {
|
||||||
return builder.create(struct: obj)
|
return builder.create(struct: obj)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -324,12 +324,12 @@ public struct MyGame_Example_Ability_Mutable: FlatBufferObject {
|
|||||||
public mutating func unpack() -> MyGame_Example_Ability {
|
public mutating func unpack() -> MyGame_Example_Ability {
|
||||||
return MyGame_Example_Ability(&self)
|
return MyGame_Example_Ability(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Ability?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Ability?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Ability) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_Ability) -> Offset {
|
||||||
return builder.create(struct: obj)
|
return builder.create(struct: obj)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -384,12 +384,12 @@ public struct MyGame_Example_StructOfStructs_Mutable: FlatBufferObject {
|
|||||||
public mutating func unpack() -> MyGame_Example_StructOfStructs {
|
public mutating func unpack() -> MyGame_Example_StructOfStructs {
|
||||||
return MyGame_Example_StructOfStructs(&self)
|
return MyGame_Example_StructOfStructs(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StructOfStructs?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StructOfStructs?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StructOfStructs) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StructOfStructs) -> Offset {
|
||||||
return builder.create(struct: obj)
|
return builder.create(struct: obj)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -400,25 +400,25 @@ public struct MyGame_InParentNamespace: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
public static func getRootAsInParentNamespace(bb: ByteBuffer) -> MyGame_InParentNamespace { return MyGame_InParentNamespace(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsInParentNamespace(bb: ByteBuffer) -> MyGame_InParentNamespace { return MyGame_InParentNamespace(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
public init(_ bb: ByteBuffer, o: Int32) { _accessor = Table(bb: bb, position: o) }
|
public init(_ bb: ByteBuffer, o: Int32) { _accessor = Table(bb: bb, position: o) }
|
||||||
|
|
||||||
public static func startInParentNamespace(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 0) }
|
public static func startInParentNamespace(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 0) }
|
||||||
public static func endInParentNamespace(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endInParentNamespace(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
|
|
||||||
|
|
||||||
public mutating func unpack() -> MyGame_InParentNamespaceT {
|
public mutating func unpack() -> MyGame_InParentNamespaceT {
|
||||||
return MyGame_InParentNamespaceT(&self)
|
return MyGame_InParentNamespaceT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_InParentNamespaceT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_InParentNamespaceT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_InParentNamespaceT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_InParentNamespaceT) -> Offset {
|
||||||
let __root = MyGame_InParentNamespace.startInParentNamespace(&builder)
|
let __root = MyGame_InParentNamespace.startInParentNamespace(&builder)
|
||||||
return MyGame_InParentNamespace.endInParentNamespace(&builder, start: __root)
|
return MyGame_InParentNamespace.endInParentNamespace(&builder, start: __root)
|
||||||
}
|
}
|
||||||
@@ -442,25 +442,25 @@ public struct MyGame_Example2_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
public static func getRootAsMonster(bb: ByteBuffer) -> MyGame_Example2_Monster { return MyGame_Example2_Monster(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsMonster(bb: ByteBuffer) -> MyGame_Example2_Monster { return MyGame_Example2_Monster(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
public init(_ bb: ByteBuffer, o: Int32) { _accessor = Table(bb: bb, position: o) }
|
public init(_ bb: ByteBuffer, o: Int32) { _accessor = Table(bb: bb, position: o) }
|
||||||
|
|
||||||
public static func startMonster(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 0) }
|
public static func startMonster(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 0) }
|
||||||
public static func endMonster(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endMonster(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
|
|
||||||
|
|
||||||
public mutating func unpack() -> MyGame_Example2_MonsterT {
|
public mutating func unpack() -> MyGame_Example2_MonsterT {
|
||||||
return MyGame_Example2_MonsterT(&self)
|
return MyGame_Example2_MonsterT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example2_MonsterT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example2_MonsterT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example2_MonsterT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example2_MonsterT) -> Offset {
|
||||||
let __root = MyGame_Example2_Monster.startMonster(&builder)
|
let __root = MyGame_Example2_Monster.startMonster(&builder)
|
||||||
return MyGame_Example2_Monster.endMonster(&builder, start: __root)
|
return MyGame_Example2_Monster.endMonster(&builder, start: __root)
|
||||||
}
|
}
|
||||||
@@ -484,7 +484,7 @@ internal struct MyGame_Example_TestSimpleTableWithEnum: FlatBufferObject, Object
|
|||||||
internal var __buffer: ByteBuffer! { return _accessor.bb }
|
internal var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
internal static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
internal static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
internal static func getRootAsTestSimpleTableWithEnum(bb: ByteBuffer) -> MyGame_Example_TestSimpleTableWithEnum { return MyGame_Example_TestSimpleTableWithEnum(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
internal static func getRootAsTestSimpleTableWithEnum(bb: ByteBuffer) -> MyGame_Example_TestSimpleTableWithEnum { return MyGame_Example_TestSimpleTableWithEnum(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -500,11 +500,11 @@ internal struct MyGame_Example_TestSimpleTableWithEnum: FlatBufferObject, Object
|
|||||||
@discardableResult internal func mutate(color: MyGame_Example_Color) -> Bool {let o = _accessor.offset(VTOFFSET.color.v); return _accessor.mutate(color.rawValue, index: o) }
|
@discardableResult internal func mutate(color: MyGame_Example_Color) -> Bool {let o = _accessor.offset(VTOFFSET.color.v); return _accessor.mutate(color.rawValue, index: o) }
|
||||||
internal static func startTestSimpleTableWithEnum(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
internal static func startTestSimpleTableWithEnum(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
internal static func add(color: MyGame_Example_Color, _ fbb: inout FlatBufferBuilder) { fbb.add(element: color.rawValue, def: 2, at: VTOFFSET.color.p) }
|
internal static func add(color: MyGame_Example_Color, _ fbb: inout FlatBufferBuilder) { fbb.add(element: color.rawValue, def: 2, at: VTOFFSET.color.p) }
|
||||||
internal static func endTestSimpleTableWithEnum(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
internal static func endTestSimpleTableWithEnum(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
internal static func createTestSimpleTableWithEnum(
|
internal static func createTestSimpleTableWithEnum(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
color: MyGame_Example_Color = .green
|
color: MyGame_Example_Color = .green
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = MyGame_Example_TestSimpleTableWithEnum.startTestSimpleTableWithEnum(&fbb)
|
let __start = MyGame_Example_TestSimpleTableWithEnum.startTestSimpleTableWithEnum(&fbb)
|
||||||
MyGame_Example_TestSimpleTableWithEnum.add(color: color, &fbb)
|
MyGame_Example_TestSimpleTableWithEnum.add(color: color, &fbb)
|
||||||
return MyGame_Example_TestSimpleTableWithEnum.endTestSimpleTableWithEnum(&fbb, start: __start)
|
return MyGame_Example_TestSimpleTableWithEnum.endTestSimpleTableWithEnum(&fbb, start: __start)
|
||||||
@@ -514,12 +514,12 @@ internal struct MyGame_Example_TestSimpleTableWithEnum: FlatBufferObject, Object
|
|||||||
internal mutating func unpack() -> MyGame_Example_TestSimpleTableWithEnumT {
|
internal mutating func unpack() -> MyGame_Example_TestSimpleTableWithEnumT {
|
||||||
return MyGame_Example_TestSimpleTableWithEnumT(&self)
|
return MyGame_Example_TestSimpleTableWithEnumT(&self)
|
||||||
}
|
}
|
||||||
internal static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TestSimpleTableWithEnumT?) -> Offset<UOffset> {
|
internal static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TestSimpleTableWithEnumT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TestSimpleTableWithEnumT) -> Offset<UOffset> {
|
internal static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TestSimpleTableWithEnumT) -> Offset {
|
||||||
let __root = MyGame_Example_TestSimpleTableWithEnum.startTestSimpleTableWithEnum(&builder)
|
let __root = MyGame_Example_TestSimpleTableWithEnum.startTestSimpleTableWithEnum(&builder)
|
||||||
MyGame_Example_TestSimpleTableWithEnum.add(color: obj.color, &builder)
|
MyGame_Example_TestSimpleTableWithEnum.add(color: obj.color, &builder)
|
||||||
return MyGame_Example_TestSimpleTableWithEnum.endTestSimpleTableWithEnum(&builder, start: __root)
|
return MyGame_Example_TestSimpleTableWithEnum.endTestSimpleTableWithEnum(&builder, start: __root)
|
||||||
@@ -547,7 +547,7 @@ public struct MyGame_Example_Stat: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
public static func getRootAsStat(bb: ByteBuffer) -> MyGame_Example_Stat { return MyGame_Example_Stat(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsStat(bb: ByteBuffer) -> MyGame_Example_Stat { return MyGame_Example_Stat(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -568,23 +568,23 @@ public struct MyGame_Example_Stat: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var count: UInt16 { let o = _accessor.offset(VTOFFSET.count.v); return o == 0 ? 0 : _accessor.readBuffer(of: UInt16.self, at: o) }
|
public var count: UInt16 { let o = _accessor.offset(VTOFFSET.count.v); return o == 0 ? 0 : _accessor.readBuffer(of: UInt16.self, at: o) }
|
||||||
@discardableResult public func mutate(count: UInt16) -> Bool {let o = _accessor.offset(VTOFFSET.count.v); return _accessor.mutate(count, index: o) }
|
@discardableResult public func mutate(count: UInt16) -> Bool {let o = _accessor.offset(VTOFFSET.count.v); return _accessor.mutate(count, index: o) }
|
||||||
public static func startStat(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 3) }
|
public static func startStat(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 3) }
|
||||||
public static func add(id: Offset<String>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: id, at: VTOFFSET.id.p) }
|
public static func add(id: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: id, at: VTOFFSET.id.p) }
|
||||||
public static func add(val: Int64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: val, def: 0, at: VTOFFSET.val.p) }
|
public static func add(val: Int64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: val, def: 0, at: VTOFFSET.val.p) }
|
||||||
public static func add(count: UInt16, _ fbb: inout FlatBufferBuilder) { fbb.add(element: count, def: 0, at: VTOFFSET.count.p) }
|
public static func add(count: UInt16, _ fbb: inout FlatBufferBuilder) { fbb.add(element: count, def: 0, at: VTOFFSET.count.p) }
|
||||||
public static func endStat(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endStat(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createStat(
|
public static func createStat(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
idOffset id: Offset<String> = Offset(),
|
idOffset id: Offset = Offset(),
|
||||||
val: Int64 = 0,
|
val: Int64 = 0,
|
||||||
count: UInt16 = 0
|
count: UInt16 = 0
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = MyGame_Example_Stat.startStat(&fbb)
|
let __start = MyGame_Example_Stat.startStat(&fbb)
|
||||||
MyGame_Example_Stat.add(id: id, &fbb)
|
MyGame_Example_Stat.add(id: id, &fbb)
|
||||||
MyGame_Example_Stat.add(val: val, &fbb)
|
MyGame_Example_Stat.add(val: val, &fbb)
|
||||||
MyGame_Example_Stat.add(count: count, &fbb)
|
MyGame_Example_Stat.add(count: count, &fbb)
|
||||||
return MyGame_Example_Stat.endStat(&fbb, start: __start)
|
return MyGame_Example_Stat.endStat(&fbb, start: __start)
|
||||||
}
|
}
|
||||||
public static func sortVectorOfStat(offsets:[Offset<UOffset>], _ fbb: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public static func sortVectorOfStat(offsets:[Offset], _ fbb: inout FlatBufferBuilder) -> Offset {
|
||||||
var off = offsets
|
var off = offsets
|
||||||
off.sort { Table.compare(Table.offset(Int32($1.o), vOffset: 8, fbb: fbb.buffer), Table.offset(Int32($0.o), vOffset: 8, fbb: fbb.buffer), fbb: fbb.buffer) < 0 }
|
off.sort { Table.compare(Table.offset(Int32($1.o), vOffset: 8, fbb: fbb.buffer), Table.offset(Int32($0.o), vOffset: 8, fbb: fbb.buffer), fbb: fbb.buffer) < 0 }
|
||||||
return fbb.createVector(ofOffsets: off)
|
return fbb.createVector(ofOffsets: off)
|
||||||
@@ -613,17 +613,17 @@ public struct MyGame_Example_Stat: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> MyGame_Example_StatT {
|
public mutating func unpack() -> MyGame_Example_StatT {
|
||||||
return MyGame_Example_StatT(&self)
|
return MyGame_Example_StatT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StatT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StatT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StatT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_StatT) -> Offset {
|
||||||
let __id: Offset<String>
|
let __id: Offset
|
||||||
if let s = obj.id {
|
if let s = obj.id {
|
||||||
__id = builder.create(string: s)
|
__id = builder.create(string: s)
|
||||||
} else {
|
} else {
|
||||||
__id = Offset<String>()
|
__id = Offset()
|
||||||
}
|
}
|
||||||
|
|
||||||
let __root = MyGame_Example_Stat.startStat(&builder)
|
let __root = MyGame_Example_Stat.startStat(&builder)
|
||||||
@@ -660,7 +660,7 @@ public struct MyGame_Example_Referrable: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
public static func getRootAsReferrable(bb: ByteBuffer) -> MyGame_Example_Referrable { return MyGame_Example_Referrable(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsReferrable(bb: ByteBuffer) -> MyGame_Example_Referrable { return MyGame_Example_Referrable(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -676,16 +676,16 @@ public struct MyGame_Example_Referrable: FlatBufferObject, ObjectAPIPacker {
|
|||||||
@discardableResult public func mutate(id: UInt64) -> Bool {let o = _accessor.offset(VTOFFSET.id.v); return _accessor.mutate(id, index: o) }
|
@discardableResult public func mutate(id: UInt64) -> Bool {let o = _accessor.offset(VTOFFSET.id.v); return _accessor.mutate(id, index: o) }
|
||||||
public static func startReferrable(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
public static func startReferrable(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
public static func add(id: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: id, def: 0, at: VTOFFSET.id.p) }
|
public static func add(id: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: id, def: 0, at: VTOFFSET.id.p) }
|
||||||
public static func endReferrable(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endReferrable(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createReferrable(
|
public static func createReferrable(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
id: UInt64 = 0
|
id: UInt64 = 0
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = MyGame_Example_Referrable.startReferrable(&fbb)
|
let __start = MyGame_Example_Referrable.startReferrable(&fbb)
|
||||||
MyGame_Example_Referrable.add(id: id, &fbb)
|
MyGame_Example_Referrable.add(id: id, &fbb)
|
||||||
return MyGame_Example_Referrable.endReferrable(&fbb, start: __start)
|
return MyGame_Example_Referrable.endReferrable(&fbb, start: __start)
|
||||||
}
|
}
|
||||||
public static func sortVectorOfReferrable(offsets:[Offset<UOffset>], _ fbb: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public static func sortVectorOfReferrable(offsets:[Offset], _ fbb: inout FlatBufferBuilder) -> Offset {
|
||||||
var off = offsets
|
var off = offsets
|
||||||
off.sort { Table.compare(Table.offset(Int32($1.o), vOffset: 4, fbb: fbb.buffer), Table.offset(Int32($0.o), vOffset: 4, fbb: fbb.buffer), fbb: fbb.buffer) < 0 }
|
off.sort { Table.compare(Table.offset(Int32($1.o), vOffset: 4, fbb: fbb.buffer), Table.offset(Int32($0.o), vOffset: 4, fbb: fbb.buffer), fbb: fbb.buffer) < 0 }
|
||||||
return fbb.createVector(ofOffsets: off)
|
return fbb.createVector(ofOffsets: off)
|
||||||
@@ -714,12 +714,12 @@ public struct MyGame_Example_Referrable: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> MyGame_Example_ReferrableT {
|
public mutating func unpack() -> MyGame_Example_ReferrableT {
|
||||||
return MyGame_Example_ReferrableT(&self)
|
return MyGame_Example_ReferrableT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_ReferrableT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_ReferrableT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_ReferrableT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_ReferrableT) -> Offset {
|
||||||
let __root = MyGame_Example_Referrable.startReferrable(&builder)
|
let __root = MyGame_Example_Referrable.startReferrable(&builder)
|
||||||
MyGame_Example_Referrable.add(id: obj.id, &builder)
|
MyGame_Example_Referrable.add(id: obj.id, &builder)
|
||||||
return MyGame_Example_Referrable.endReferrable(&builder, start: __root)
|
return MyGame_Example_Referrable.endReferrable(&builder, start: __root)
|
||||||
@@ -748,7 +748,7 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
public static func getRootAsMonster(bb: ByteBuffer) -> MyGame_Example_Monster { return MyGame_Example_Monster(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsMonster(bb: ByteBuffer) -> MyGame_Example_Monster { return MyGame_Example_Monster(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -824,7 +824,7 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var color: MyGame_Example_Color { let o = _accessor.offset(VTOFFSET.color.v); return o == 0 ? .blue : MyGame_Example_Color(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .blue }
|
public var color: MyGame_Example_Color { let o = _accessor.offset(VTOFFSET.color.v); return o == 0 ? .blue : MyGame_Example_Color(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .blue }
|
||||||
@discardableResult public func mutate(color: MyGame_Example_Color) -> Bool {let o = _accessor.offset(VTOFFSET.color.v); return _accessor.mutate(color.rawValue, index: o) }
|
@discardableResult public func mutate(color: MyGame_Example_Color) -> Bool {let o = _accessor.offset(VTOFFSET.color.v); return _accessor.mutate(color.rawValue, index: o) }
|
||||||
public var testType: MyGame_Example_Any_ { let o = _accessor.offset(VTOFFSET.testType.v); return o == 0 ? .none_ : MyGame_Example_Any_(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
public var testType: MyGame_Example_Any_ { let o = _accessor.offset(VTOFFSET.testType.v); return o == 0 ? .none_ : MyGame_Example_Any_(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
||||||
public func test<T: FlatBufferObject>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.test.v); return o == 0 ? nil : _accessor.union(o) }
|
public func test<T: FlatbuffersInitializable>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.test.v); return o == 0 ? nil : _accessor.union(o) }
|
||||||
public var test4Count: Int32 { let o = _accessor.offset(VTOFFSET.test4.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
public var test4Count: Int32 { let o = _accessor.offset(VTOFFSET.test4.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
||||||
public func test4(at index: Int32) -> MyGame_Example_Test? { let o = _accessor.offset(VTOFFSET.test4.v); return o == 0 ? nil : _accessor.directRead(of: MyGame_Example_Test.self, offset: _accessor.vector(at: o) + index * 4) }
|
public func test4(at index: Int32) -> MyGame_Example_Test? { let o = _accessor.offset(VTOFFSET.test4.v); return o == 0 ? nil : _accessor.directRead(of: MyGame_Example_Test.self, offset: _accessor.vector(at: o) + index * 4) }
|
||||||
public func mutableTest4(at index: Int32) -> MyGame_Example_Test_Mutable? { let o = _accessor.offset(VTOFFSET.test4.v); return o == 0 ? nil : MyGame_Example_Test_Mutable(_accessor.bb, o: _accessor.vector(at: o) + index * 4) }
|
public func mutableTest4(at index: Int32) -> MyGame_Example_Test_Mutable? { let o = _accessor.offset(VTOFFSET.test4.v); return o == 0 ? nil : MyGame_Example_Test_Mutable(_accessor.bb, o: _accessor.vector(at: o) + index * 4) }
|
||||||
@@ -915,9 +915,9 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var vectorOfNonOwningReferences: [UInt64] { return _accessor.getVector(at: VTOFFSET.vectorOfNonOwningReferences.v) ?? [] }
|
public var vectorOfNonOwningReferences: [UInt64] { return _accessor.getVector(at: VTOFFSET.vectorOfNonOwningReferences.v) ?? [] }
|
||||||
public func mutate(vectorOfNonOwningReferences: UInt64, at index: Int32) -> Bool { let o = _accessor.offset(VTOFFSET.vectorOfNonOwningReferences.v); return _accessor.directMutate(vectorOfNonOwningReferences, index: _accessor.vector(at: o) + index * 8) }
|
public func mutate(vectorOfNonOwningReferences: UInt64, at index: Int32) -> Bool { let o = _accessor.offset(VTOFFSET.vectorOfNonOwningReferences.v); return _accessor.directMutate(vectorOfNonOwningReferences, index: _accessor.vector(at: o) + index * 8) }
|
||||||
public var anyUniqueType: MyGame_Example_AnyUniqueAliases { let o = _accessor.offset(VTOFFSET.anyUniqueType.v); return o == 0 ? .none_ : MyGame_Example_AnyUniqueAliases(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
public var anyUniqueType: MyGame_Example_AnyUniqueAliases { let o = _accessor.offset(VTOFFSET.anyUniqueType.v); return o == 0 ? .none_ : MyGame_Example_AnyUniqueAliases(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
||||||
public func anyUnique<T: FlatBufferObject>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.anyUnique.v); return o == 0 ? nil : _accessor.union(o) }
|
public func anyUnique<T: FlatbuffersInitializable>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.anyUnique.v); return o == 0 ? nil : _accessor.union(o) }
|
||||||
public var anyAmbiguousType: MyGame_Example_AnyAmbiguousAliases { let o = _accessor.offset(VTOFFSET.anyAmbiguousType.v); return o == 0 ? .none_ : MyGame_Example_AnyAmbiguousAliases(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
public var anyAmbiguousType: MyGame_Example_AnyAmbiguousAliases { let o = _accessor.offset(VTOFFSET.anyAmbiguousType.v); return o == 0 ? .none_ : MyGame_Example_AnyAmbiguousAliases(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
||||||
public func anyAmbiguous<T: FlatBufferObject>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.anyAmbiguous.v); return o == 0 ? nil : _accessor.union(o) }
|
public func anyAmbiguous<T: FlatbuffersInitializable>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.anyAmbiguous.v); return o == 0 ? nil : _accessor.union(o) }
|
||||||
public var vectorOfEnumsCount: Int32 { let o = _accessor.offset(VTOFFSET.vectorOfEnums.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
public var vectorOfEnumsCount: Int32 { let o = _accessor.offset(VTOFFSET.vectorOfEnums.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
||||||
public func vectorOfEnums(at index: Int32) -> MyGame_Example_Color? { let o = _accessor.offset(VTOFFSET.vectorOfEnums.v); return o == 0 ? MyGame_Example_Color.red : MyGame_Example_Color(rawValue: _accessor.directRead(of: UInt8.self, offset: _accessor.vector(at: o) + index * 1)) }
|
public func vectorOfEnums(at index: Int32) -> MyGame_Example_Color? { let o = _accessor.offset(VTOFFSET.vectorOfEnums.v); return o == 0 ? MyGame_Example_Color.red : MyGame_Example_Color(rawValue: _accessor.directRead(of: UInt8.self, offset: _accessor.vector(at: o) + index * 1)) }
|
||||||
public var signedEnum: MyGame_Example_Race { let o = _accessor.offset(VTOFFSET.signedEnum.v); return o == 0 ? .none_ : MyGame_Example_Race(rawValue: _accessor.readBuffer(of: Int8.self, at: o)) ?? .none_ }
|
public var signedEnum: MyGame_Example_Race { let o = _accessor.offset(VTOFFSET.signedEnum.v); return o == 0 ? .none_ : MyGame_Example_Race(rawValue: _accessor.readBuffer(of: Int8.self, at: o)) ?? .none_ }
|
||||||
@@ -933,20 +933,20 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public static func add(pos: MyGame_Example_Vec3?, _ fbb: inout FlatBufferBuilder) { guard let pos = pos else { return }; fbb.create(struct: pos, position: VTOFFSET.pos.p) }
|
public static func add(pos: MyGame_Example_Vec3?, _ fbb: inout FlatBufferBuilder) { guard let pos = pos else { return }; fbb.create(struct: pos, position: VTOFFSET.pos.p) }
|
||||||
public static func add(mana: Int16, _ fbb: inout FlatBufferBuilder) { fbb.add(element: mana, def: 150, at: VTOFFSET.mana.p) }
|
public static func add(mana: Int16, _ fbb: inout FlatBufferBuilder) { fbb.add(element: mana, def: 150, at: VTOFFSET.mana.p) }
|
||||||
public static func add(hp: Int16, _ fbb: inout FlatBufferBuilder) { fbb.add(element: hp, def: 100, at: VTOFFSET.hp.p) }
|
public static func add(hp: Int16, _ fbb: inout FlatBufferBuilder) { fbb.add(element: hp, def: 100, at: VTOFFSET.hp.p) }
|
||||||
public static func add(name: Offset<String>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: name, at: VTOFFSET.name.p) }
|
public static func add(name: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: name, at: VTOFFSET.name.p) }
|
||||||
public static func addVectorOf(inventory: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: inventory, at: VTOFFSET.inventory.p) }
|
public static func addVectorOf(inventory: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: inventory, at: VTOFFSET.inventory.p) }
|
||||||
public static func add(color: MyGame_Example_Color, _ fbb: inout FlatBufferBuilder) { fbb.add(element: color.rawValue, def: 8, at: VTOFFSET.color.p) }
|
public static func add(color: MyGame_Example_Color, _ fbb: inout FlatBufferBuilder) { fbb.add(element: color.rawValue, def: 8, at: VTOFFSET.color.p) }
|
||||||
public static func add(testType: MyGame_Example_Any_, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testType.rawValue, def: 0, at: VTOFFSET.testType.p) }
|
public static func add(testType: MyGame_Example_Any_, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testType.rawValue, def: 0, at: VTOFFSET.testType.p) }
|
||||||
public static func add(test: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: test, at: VTOFFSET.test.p) }
|
public static func add(test: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: test, at: VTOFFSET.test.p) }
|
||||||
public static func addVectorOf(test4: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: test4, at: VTOFFSET.test4.p) }
|
public static func addVectorOf(test4: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: test4, at: VTOFFSET.test4.p) }
|
||||||
public static func startVectorOfTest4(_ size: Int, in builder: inout FlatBufferBuilder) {
|
public static func startVectorOfTest4(_ size: Int, in builder: inout FlatBufferBuilder) {
|
||||||
builder.startVector(size * MemoryLayout<MyGame_Example_Test>.size, elementSize: MemoryLayout<MyGame_Example_Test>.alignment)
|
builder.startVector(size * MemoryLayout<MyGame_Example_Test>.size, elementSize: MemoryLayout<MyGame_Example_Test>.alignment)
|
||||||
}
|
}
|
||||||
public static func addVectorOf(testarrayofstring: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofstring, at: VTOFFSET.testarrayofstring.p) }
|
public static func addVectorOf(testarrayofstring: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofstring, at: VTOFFSET.testarrayofstring.p) }
|
||||||
public static func addVectorOf(testarrayoftables: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayoftables, at: VTOFFSET.testarrayoftables.p) }
|
public static func addVectorOf(testarrayoftables: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayoftables, at: VTOFFSET.testarrayoftables.p) }
|
||||||
public static func add(enemy: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: enemy, at: VTOFFSET.enemy.p) }
|
public static func add(enemy: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: enemy, at: VTOFFSET.enemy.p) }
|
||||||
public static func addVectorOf(testnestedflatbuffer: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testnestedflatbuffer, at: VTOFFSET.testnestedflatbuffer.p) }
|
public static func addVectorOf(testnestedflatbuffer: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testnestedflatbuffer, at: VTOFFSET.testnestedflatbuffer.p) }
|
||||||
public static func add(testempty: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testempty, at: VTOFFSET.testempty.p) }
|
public static func add(testempty: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testempty, at: VTOFFSET.testempty.p) }
|
||||||
public static func add(testbool: Bool, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testbool, def: false,
|
public static func add(testbool: Bool, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testbool, def: false,
|
||||||
at: VTOFFSET.testbool.p) }
|
at: VTOFFSET.testbool.p) }
|
||||||
public static func add(testhashs32Fnv1: Int32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashs32Fnv1, def: 0, at: VTOFFSET.testhashs32Fnv1.p) }
|
public static func add(testhashs32Fnv1: Int32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashs32Fnv1, def: 0, at: VTOFFSET.testhashs32Fnv1.p) }
|
||||||
@@ -957,56 +957,56 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public static func add(testhashu32Fnv1a: UInt32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashu32Fnv1a, def: 0, at: VTOFFSET.testhashu32Fnv1a.p) }
|
public static func add(testhashu32Fnv1a: UInt32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashu32Fnv1a, def: 0, at: VTOFFSET.testhashu32Fnv1a.p) }
|
||||||
public static func add(testhashs64Fnv1a: Int64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashs64Fnv1a, def: 0, at: VTOFFSET.testhashs64Fnv1a.p) }
|
public static func add(testhashs64Fnv1a: Int64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashs64Fnv1a, def: 0, at: VTOFFSET.testhashs64Fnv1a.p) }
|
||||||
public static func add(testhashu64Fnv1a: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashu64Fnv1a, def: 0, at: VTOFFSET.testhashu64Fnv1a.p) }
|
public static func add(testhashu64Fnv1a: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testhashu64Fnv1a, def: 0, at: VTOFFSET.testhashu64Fnv1a.p) }
|
||||||
public static func addVectorOf(testarrayofbools: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofbools, at: VTOFFSET.testarrayofbools.p) }
|
public static func addVectorOf(testarrayofbools: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofbools, at: VTOFFSET.testarrayofbools.p) }
|
||||||
public static func add(testf: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testf, def: 3.14159, at: VTOFFSET.testf.p) }
|
public static func add(testf: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testf, def: 3.14159, at: VTOFFSET.testf.p) }
|
||||||
public static func add(testf2: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testf2, def: 3.0, at: VTOFFSET.testf2.p) }
|
public static func add(testf2: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testf2, def: 3.0, at: VTOFFSET.testf2.p) }
|
||||||
public static func add(testf3: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testf3, def: 0.0, at: VTOFFSET.testf3.p) }
|
public static func add(testf3: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: testf3, def: 0.0, at: VTOFFSET.testf3.p) }
|
||||||
public static func addVectorOf(testarrayofstring2: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofstring2, at: VTOFFSET.testarrayofstring2.p) }
|
public static func addVectorOf(testarrayofstring2: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofstring2, at: VTOFFSET.testarrayofstring2.p) }
|
||||||
public static func addVectorOf(testarrayofsortedstruct: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofsortedstruct, at: VTOFFSET.testarrayofsortedstruct.p) }
|
public static func addVectorOf(testarrayofsortedstruct: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testarrayofsortedstruct, at: VTOFFSET.testarrayofsortedstruct.p) }
|
||||||
public static func startVectorOfTestarrayofsortedstruct(_ size: Int, in builder: inout FlatBufferBuilder) {
|
public static func startVectorOfTestarrayofsortedstruct(_ size: Int, in builder: inout FlatBufferBuilder) {
|
||||||
builder.startVector(size * MemoryLayout<MyGame_Example_Ability>.size, elementSize: MemoryLayout<MyGame_Example_Ability>.alignment)
|
builder.startVector(size * MemoryLayout<MyGame_Example_Ability>.size, elementSize: MemoryLayout<MyGame_Example_Ability>.alignment)
|
||||||
}
|
}
|
||||||
public static func addVectorOf(flex: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: flex, at: VTOFFSET.flex.p) }
|
public static func addVectorOf(flex: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: flex, at: VTOFFSET.flex.p) }
|
||||||
public static func addVectorOf(test5: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: test5, at: VTOFFSET.test5.p) }
|
public static func addVectorOf(test5: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: test5, at: VTOFFSET.test5.p) }
|
||||||
public static func startVectorOfTest5(_ size: Int, in builder: inout FlatBufferBuilder) {
|
public static func startVectorOfTest5(_ size: Int, in builder: inout FlatBufferBuilder) {
|
||||||
builder.startVector(size * MemoryLayout<MyGame_Example_Test>.size, elementSize: MemoryLayout<MyGame_Example_Test>.alignment)
|
builder.startVector(size * MemoryLayout<MyGame_Example_Test>.size, elementSize: MemoryLayout<MyGame_Example_Test>.alignment)
|
||||||
}
|
}
|
||||||
public static func addVectorOf(vectorOfLongs: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfLongs, at: VTOFFSET.vectorOfLongs.p) }
|
public static func addVectorOf(vectorOfLongs: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfLongs, at: VTOFFSET.vectorOfLongs.p) }
|
||||||
public static func addVectorOf(vectorOfDoubles: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfDoubles, at: VTOFFSET.vectorOfDoubles.p) }
|
public static func addVectorOf(vectorOfDoubles: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfDoubles, at: VTOFFSET.vectorOfDoubles.p) }
|
||||||
public static func add(parentNamespaceTest: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: parentNamespaceTest, at: VTOFFSET.parentNamespaceTest.p) }
|
public static func add(parentNamespaceTest: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: parentNamespaceTest, at: VTOFFSET.parentNamespaceTest.p) }
|
||||||
public static func addVectorOf(vectorOfReferrables: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfReferrables, at: VTOFFSET.vectorOfReferrables.p) }
|
public static func addVectorOf(vectorOfReferrables: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfReferrables, at: VTOFFSET.vectorOfReferrables.p) }
|
||||||
public static func add(singleWeakReference: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: singleWeakReference, def: 0, at: VTOFFSET.singleWeakReference.p) }
|
public static func add(singleWeakReference: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: singleWeakReference, def: 0, at: VTOFFSET.singleWeakReference.p) }
|
||||||
public static func addVectorOf(vectorOfWeakReferences: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfWeakReferences, at: VTOFFSET.vectorOfWeakReferences.p) }
|
public static func addVectorOf(vectorOfWeakReferences: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfWeakReferences, at: VTOFFSET.vectorOfWeakReferences.p) }
|
||||||
public static func addVectorOf(vectorOfStrongReferrables: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfStrongReferrables, at: VTOFFSET.vectorOfStrongReferrables.p) }
|
public static func addVectorOf(vectorOfStrongReferrables: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfStrongReferrables, at: VTOFFSET.vectorOfStrongReferrables.p) }
|
||||||
public static func add(coOwningReference: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: coOwningReference, def: 0, at: VTOFFSET.coOwningReference.p) }
|
public static func add(coOwningReference: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: coOwningReference, def: 0, at: VTOFFSET.coOwningReference.p) }
|
||||||
public static func addVectorOf(vectorOfCoOwningReferences: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfCoOwningReferences, at: VTOFFSET.vectorOfCoOwningReferences.p) }
|
public static func addVectorOf(vectorOfCoOwningReferences: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfCoOwningReferences, at: VTOFFSET.vectorOfCoOwningReferences.p) }
|
||||||
public static func add(nonOwningReference: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: nonOwningReference, def: 0, at: VTOFFSET.nonOwningReference.p) }
|
public static func add(nonOwningReference: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: nonOwningReference, def: 0, at: VTOFFSET.nonOwningReference.p) }
|
||||||
public static func addVectorOf(vectorOfNonOwningReferences: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfNonOwningReferences, at: VTOFFSET.vectorOfNonOwningReferences.p) }
|
public static func addVectorOf(vectorOfNonOwningReferences: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfNonOwningReferences, at: VTOFFSET.vectorOfNonOwningReferences.p) }
|
||||||
public static func add(anyUniqueType: MyGame_Example_AnyUniqueAliases, _ fbb: inout FlatBufferBuilder) { fbb.add(element: anyUniqueType.rawValue, def: 0, at: VTOFFSET.anyUniqueType.p) }
|
public static func add(anyUniqueType: MyGame_Example_AnyUniqueAliases, _ fbb: inout FlatBufferBuilder) { fbb.add(element: anyUniqueType.rawValue, def: 0, at: VTOFFSET.anyUniqueType.p) }
|
||||||
public static func add(anyUnique: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: anyUnique, at: VTOFFSET.anyUnique.p) }
|
public static func add(anyUnique: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: anyUnique, at: VTOFFSET.anyUnique.p) }
|
||||||
public static func add(anyAmbiguousType: MyGame_Example_AnyAmbiguousAliases, _ fbb: inout FlatBufferBuilder) { fbb.add(element: anyAmbiguousType.rawValue, def: 0, at: VTOFFSET.anyAmbiguousType.p) }
|
public static func add(anyAmbiguousType: MyGame_Example_AnyAmbiguousAliases, _ fbb: inout FlatBufferBuilder) { fbb.add(element: anyAmbiguousType.rawValue, def: 0, at: VTOFFSET.anyAmbiguousType.p) }
|
||||||
public static func add(anyAmbiguous: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: anyAmbiguous, at: VTOFFSET.anyAmbiguous.p) }
|
public static func add(anyAmbiguous: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: anyAmbiguous, at: VTOFFSET.anyAmbiguous.p) }
|
||||||
public static func addVectorOf(vectorOfEnums: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfEnums, at: VTOFFSET.vectorOfEnums.p) }
|
public static func addVectorOf(vectorOfEnums: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vectorOfEnums, at: VTOFFSET.vectorOfEnums.p) }
|
||||||
public static func add(signedEnum: MyGame_Example_Race, _ fbb: inout FlatBufferBuilder) { fbb.add(element: signedEnum.rawValue, def: -1, at: VTOFFSET.signedEnum.p) }
|
public static func add(signedEnum: MyGame_Example_Race, _ fbb: inout FlatBufferBuilder) { fbb.add(element: signedEnum.rawValue, def: -1, at: VTOFFSET.signedEnum.p) }
|
||||||
public static func addVectorOf(testrequirednestedflatbuffer: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testrequirednestedflatbuffer, at: VTOFFSET.testrequirednestedflatbuffer.p) }
|
public static func addVectorOf(testrequirednestedflatbuffer: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: testrequirednestedflatbuffer, at: VTOFFSET.testrequirednestedflatbuffer.p) }
|
||||||
public static func addVectorOf(scalarKeySortedTables: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: scalarKeySortedTables, at: VTOFFSET.scalarKeySortedTables.p) }
|
public static func addVectorOf(scalarKeySortedTables: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: scalarKeySortedTables, at: VTOFFSET.scalarKeySortedTables.p) }
|
||||||
public static func endMonster(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); fbb.require(table: end, fields: [10]); return end }
|
public static func endMonster(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); fbb.require(table: end, fields: [10]); return end }
|
||||||
public static func createMonster(
|
public static func createMonster(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
pos: MyGame_Example_Vec3? = nil,
|
pos: MyGame_Example_Vec3? = nil,
|
||||||
mana: Int16 = 150,
|
mana: Int16 = 150,
|
||||||
hp: Int16 = 100,
|
hp: Int16 = 100,
|
||||||
nameOffset name: Offset<String> = Offset(),
|
nameOffset name: Offset = Offset(),
|
||||||
inventoryVectorOffset inventory: Offset<UOffset> = Offset(),
|
inventoryVectorOffset inventory: Offset = Offset(),
|
||||||
color: MyGame_Example_Color = .blue,
|
color: MyGame_Example_Color = .blue,
|
||||||
testType: MyGame_Example_Any_ = .none_,
|
testType: MyGame_Example_Any_ = .none_,
|
||||||
testOffset test: Offset<UOffset> = Offset(),
|
testOffset test: Offset = Offset(),
|
||||||
test4VectorOffset test4: Offset<UOffset> = Offset(),
|
test4VectorOffset test4: Offset = Offset(),
|
||||||
testarrayofstringVectorOffset testarrayofstring: Offset<UOffset> = Offset(),
|
testarrayofstringVectorOffset testarrayofstring: Offset = Offset(),
|
||||||
testarrayoftablesVectorOffset testarrayoftables: Offset<UOffset> = Offset(),
|
testarrayoftablesVectorOffset testarrayoftables: Offset = Offset(),
|
||||||
enemyOffset enemy: Offset<UOffset> = Offset(),
|
enemyOffset enemy: Offset = Offset(),
|
||||||
testnestedflatbufferVectorOffset testnestedflatbuffer: Offset<UOffset> = Offset(),
|
testnestedflatbufferVectorOffset testnestedflatbuffer: Offset = Offset(),
|
||||||
testemptyOffset testempty: Offset<UOffset> = Offset(),
|
testemptyOffset testempty: Offset = Offset(),
|
||||||
testbool: Bool = false,
|
testbool: Bool = false,
|
||||||
testhashs32Fnv1: Int32 = 0,
|
testhashs32Fnv1: Int32 = 0,
|
||||||
testhashu32Fnv1: UInt32 = 0,
|
testhashu32Fnv1: UInt32 = 0,
|
||||||
@@ -1016,34 +1016,34 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
testhashu32Fnv1a: UInt32 = 0,
|
testhashu32Fnv1a: UInt32 = 0,
|
||||||
testhashs64Fnv1a: Int64 = 0,
|
testhashs64Fnv1a: Int64 = 0,
|
||||||
testhashu64Fnv1a: UInt64 = 0,
|
testhashu64Fnv1a: UInt64 = 0,
|
||||||
testarrayofboolsVectorOffset testarrayofbools: Offset<UOffset> = Offset(),
|
testarrayofboolsVectorOffset testarrayofbools: Offset = Offset(),
|
||||||
testf: Float32 = 3.14159,
|
testf: Float32 = 3.14159,
|
||||||
testf2: Float32 = 3.0,
|
testf2: Float32 = 3.0,
|
||||||
testf3: Float32 = 0.0,
|
testf3: Float32 = 0.0,
|
||||||
testarrayofstring2VectorOffset testarrayofstring2: Offset<UOffset> = Offset(),
|
testarrayofstring2VectorOffset testarrayofstring2: Offset = Offset(),
|
||||||
testarrayofsortedstructVectorOffset testarrayofsortedstruct: Offset<UOffset> = Offset(),
|
testarrayofsortedstructVectorOffset testarrayofsortedstruct: Offset = Offset(),
|
||||||
flexVectorOffset flex: Offset<UOffset> = Offset(),
|
flexVectorOffset flex: Offset = Offset(),
|
||||||
test5VectorOffset test5: Offset<UOffset> = Offset(),
|
test5VectorOffset test5: Offset = Offset(),
|
||||||
vectorOfLongsVectorOffset vectorOfLongs: Offset<UOffset> = Offset(),
|
vectorOfLongsVectorOffset vectorOfLongs: Offset = Offset(),
|
||||||
vectorOfDoublesVectorOffset vectorOfDoubles: Offset<UOffset> = Offset(),
|
vectorOfDoublesVectorOffset vectorOfDoubles: Offset = Offset(),
|
||||||
parentNamespaceTestOffset parentNamespaceTest: Offset<UOffset> = Offset(),
|
parentNamespaceTestOffset parentNamespaceTest: Offset = Offset(),
|
||||||
vectorOfReferrablesVectorOffset vectorOfReferrables: Offset<UOffset> = Offset(),
|
vectorOfReferrablesVectorOffset vectorOfReferrables: Offset = Offset(),
|
||||||
singleWeakReference: UInt64 = 0,
|
singleWeakReference: UInt64 = 0,
|
||||||
vectorOfWeakReferencesVectorOffset vectorOfWeakReferences: Offset<UOffset> = Offset(),
|
vectorOfWeakReferencesVectorOffset vectorOfWeakReferences: Offset = Offset(),
|
||||||
vectorOfStrongReferrablesVectorOffset vectorOfStrongReferrables: Offset<UOffset> = Offset(),
|
vectorOfStrongReferrablesVectorOffset vectorOfStrongReferrables: Offset = Offset(),
|
||||||
coOwningReference: UInt64 = 0,
|
coOwningReference: UInt64 = 0,
|
||||||
vectorOfCoOwningReferencesVectorOffset vectorOfCoOwningReferences: Offset<UOffset> = Offset(),
|
vectorOfCoOwningReferencesVectorOffset vectorOfCoOwningReferences: Offset = Offset(),
|
||||||
nonOwningReference: UInt64 = 0,
|
nonOwningReference: UInt64 = 0,
|
||||||
vectorOfNonOwningReferencesVectorOffset vectorOfNonOwningReferences: Offset<UOffset> = Offset(),
|
vectorOfNonOwningReferencesVectorOffset vectorOfNonOwningReferences: Offset = Offset(),
|
||||||
anyUniqueType: MyGame_Example_AnyUniqueAliases = .none_,
|
anyUniqueType: MyGame_Example_AnyUniqueAliases = .none_,
|
||||||
anyUniqueOffset anyUnique: Offset<UOffset> = Offset(),
|
anyUniqueOffset anyUnique: Offset = Offset(),
|
||||||
anyAmbiguousType: MyGame_Example_AnyAmbiguousAliases = .none_,
|
anyAmbiguousType: MyGame_Example_AnyAmbiguousAliases = .none_,
|
||||||
anyAmbiguousOffset anyAmbiguous: Offset<UOffset> = Offset(),
|
anyAmbiguousOffset anyAmbiguous: Offset = Offset(),
|
||||||
vectorOfEnumsVectorOffset vectorOfEnums: Offset<UOffset> = Offset(),
|
vectorOfEnumsVectorOffset vectorOfEnums: Offset = Offset(),
|
||||||
signedEnum: MyGame_Example_Race = .none_,
|
signedEnum: MyGame_Example_Race = .none_,
|
||||||
testrequirednestedflatbufferVectorOffset testrequirednestedflatbuffer: Offset<UOffset> = Offset(),
|
testrequirednestedflatbufferVectorOffset testrequirednestedflatbuffer: Offset = Offset(),
|
||||||
scalarKeySortedTablesVectorOffset scalarKeySortedTables: Offset<UOffset> = Offset()
|
scalarKeySortedTablesVectorOffset scalarKeySortedTables: Offset = Offset()
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = MyGame_Example_Monster.startMonster(&fbb)
|
let __start = MyGame_Example_Monster.startMonster(&fbb)
|
||||||
MyGame_Example_Monster.add(pos: pos, &fbb)
|
MyGame_Example_Monster.add(pos: pos, &fbb)
|
||||||
MyGame_Example_Monster.add(mana: mana, &fbb)
|
MyGame_Example_Monster.add(mana: mana, &fbb)
|
||||||
@@ -1097,7 +1097,7 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
MyGame_Example_Monster.addVectorOf(scalarKeySortedTables: scalarKeySortedTables, &fbb)
|
MyGame_Example_Monster.addVectorOf(scalarKeySortedTables: scalarKeySortedTables, &fbb)
|
||||||
return MyGame_Example_Monster.endMonster(&fbb, start: __start)
|
return MyGame_Example_Monster.endMonster(&fbb, start: __start)
|
||||||
}
|
}
|
||||||
public static func sortVectorOfMonster(offsets:[Offset<UOffset>], _ fbb: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public static func sortVectorOfMonster(offsets:[Offset], _ fbb: inout FlatBufferBuilder) -> Offset {
|
||||||
var off = offsets
|
var off = offsets
|
||||||
off.sort { Table.compare(Table.offset(Int32($1.o), vOffset: 10, fbb: fbb.buffer), Table.offset(Int32($0.o), vOffset: 10, fbb: fbb.buffer), fbb: fbb.buffer) < 0 }
|
off.sort { Table.compare(Table.offset(Int32($1.o), vOffset: 10, fbb: fbb.buffer), Table.offset(Int32($0.o), vOffset: 10, fbb: fbb.buffer), fbb: fbb.buffer) < 0 }
|
||||||
return fbb.createVector(ofOffsets: off)
|
return fbb.createVector(ofOffsets: off)
|
||||||
@@ -1127,12 +1127,12 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> MyGame_Example_MonsterT {
|
public mutating func unpack() -> MyGame_Example_MonsterT {
|
||||||
return MyGame_Example_MonsterT(&self)
|
return MyGame_Example_MonsterT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_MonsterT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_MonsterT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_MonsterT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_MonsterT) -> Offset {
|
||||||
let __name = builder.create(string: obj.name)
|
let __name = builder.create(string: obj.name)
|
||||||
let __inventory = builder.createVector(obj.inventory)
|
let __inventory = builder.createVector(obj.inventory)
|
||||||
let __test = obj.test?.pack(builder: &builder) ?? Offset()
|
let __test = obj.test?.pack(builder: &builder) ?? Offset()
|
||||||
@@ -1143,7 +1143,7 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
}
|
}
|
||||||
let __test4 = builder.endVector(len: obj.test4.count)
|
let __test4 = builder.endVector(len: obj.test4.count)
|
||||||
let __testarrayofstring = builder.createVector(ofStrings: obj.testarrayofstring.compactMap({ $0 }) )
|
let __testarrayofstring = builder.createVector(ofStrings: obj.testarrayofstring.compactMap({ $0 }) )
|
||||||
var __testarrayoftables__: [Offset<UOffset>] = []
|
var __testarrayoftables__: [Offset] = []
|
||||||
for var i in obj.testarrayoftables {
|
for var i in obj.testarrayoftables {
|
||||||
__testarrayoftables__.append(MyGame_Example_Monster.pack(&builder, obj: &i))
|
__testarrayoftables__.append(MyGame_Example_Monster.pack(&builder, obj: &i))
|
||||||
}
|
}
|
||||||
@@ -1169,13 +1169,13 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
let __vectorOfLongs = builder.createVector(obj.vectorOfLongs)
|
let __vectorOfLongs = builder.createVector(obj.vectorOfLongs)
|
||||||
let __vectorOfDoubles = builder.createVector(obj.vectorOfDoubles)
|
let __vectorOfDoubles = builder.createVector(obj.vectorOfDoubles)
|
||||||
let __parentNamespaceTest = MyGame_InParentNamespace.pack(&builder, obj: &obj.parentNamespaceTest)
|
let __parentNamespaceTest = MyGame_InParentNamespace.pack(&builder, obj: &obj.parentNamespaceTest)
|
||||||
var __vectorOfReferrables__: [Offset<UOffset>] = []
|
var __vectorOfReferrables__: [Offset] = []
|
||||||
for var i in obj.vectorOfReferrables {
|
for var i in obj.vectorOfReferrables {
|
||||||
__vectorOfReferrables__.append(MyGame_Example_Referrable.pack(&builder, obj: &i))
|
__vectorOfReferrables__.append(MyGame_Example_Referrable.pack(&builder, obj: &i))
|
||||||
}
|
}
|
||||||
let __vectorOfReferrables = builder.createVector(ofOffsets: __vectorOfReferrables__)
|
let __vectorOfReferrables = builder.createVector(ofOffsets: __vectorOfReferrables__)
|
||||||
let __vectorOfWeakReferences = builder.createVector(obj.vectorOfWeakReferences)
|
let __vectorOfWeakReferences = builder.createVector(obj.vectorOfWeakReferences)
|
||||||
var __vectorOfStrongReferrables__: [Offset<UOffset>] = []
|
var __vectorOfStrongReferrables__: [Offset] = []
|
||||||
for var i in obj.vectorOfStrongReferrables {
|
for var i in obj.vectorOfStrongReferrables {
|
||||||
__vectorOfStrongReferrables__.append(MyGame_Example_Referrable.pack(&builder, obj: &i))
|
__vectorOfStrongReferrables__.append(MyGame_Example_Referrable.pack(&builder, obj: &i))
|
||||||
}
|
}
|
||||||
@@ -1186,7 +1186,7 @@ public struct MyGame_Example_Monster: FlatBufferObject, ObjectAPIPacker {
|
|||||||
let __anyAmbiguous = obj.anyAmbiguous?.pack(builder: &builder) ?? Offset()
|
let __anyAmbiguous = obj.anyAmbiguous?.pack(builder: &builder) ?? Offset()
|
||||||
let __vectorOfEnums = builder.createVector(obj.vectorOfEnums)
|
let __vectorOfEnums = builder.createVector(obj.vectorOfEnums)
|
||||||
let __testrequirednestedflatbuffer = builder.createVector(obj.testrequirednestedflatbuffer)
|
let __testrequirednestedflatbuffer = builder.createVector(obj.testrequirednestedflatbuffer)
|
||||||
var __scalarKeySortedTables__: [Offset<UOffset>] = []
|
var __scalarKeySortedTables__: [Offset] = []
|
||||||
for var i in obj.scalarKeySortedTables {
|
for var i in obj.scalarKeySortedTables {
|
||||||
__scalarKeySortedTables__.append(MyGame_Example_Stat.pack(&builder, obj: &i))
|
__scalarKeySortedTables__.append(MyGame_Example_Stat.pack(&builder, obj: &i))
|
||||||
}
|
}
|
||||||
@@ -1511,7 +1511,7 @@ public struct MyGame_Example_TypeAliases: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MONS", addPrefix: prefix) }
|
||||||
public static func getRootAsTypeAliases(bb: ByteBuffer) -> MyGame_Example_TypeAliases { return MyGame_Example_TypeAliases(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsTypeAliases(bb: ByteBuffer) -> MyGame_Example_TypeAliases { return MyGame_Example_TypeAliases(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -1573,9 +1573,9 @@ public struct MyGame_Example_TypeAliases: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public static func add(u64: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: u64, def: 0, at: VTOFFSET.u64.p) }
|
public static func add(u64: UInt64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: u64, def: 0, at: VTOFFSET.u64.p) }
|
||||||
public static func add(f32: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: f32, def: 0.0, at: VTOFFSET.f32.p) }
|
public static func add(f32: Float32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: f32, def: 0.0, at: VTOFFSET.f32.p) }
|
||||||
public static func add(f64: Double, _ fbb: inout FlatBufferBuilder) { fbb.add(element: f64, def: 0.0, at: VTOFFSET.f64.p) }
|
public static func add(f64: Double, _ fbb: inout FlatBufferBuilder) { fbb.add(element: f64, def: 0.0, at: VTOFFSET.f64.p) }
|
||||||
public static func addVectorOf(v8: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: v8, at: VTOFFSET.v8.p) }
|
public static func addVectorOf(v8: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: v8, at: VTOFFSET.v8.p) }
|
||||||
public static func addVectorOf(vf64: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vf64, at: VTOFFSET.vf64.p) }
|
public static func addVectorOf(vf64: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: vf64, at: VTOFFSET.vf64.p) }
|
||||||
public static func endTypeAliases(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endTypeAliases(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createTypeAliases(
|
public static func createTypeAliases(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
i8: Int8 = 0,
|
i8: Int8 = 0,
|
||||||
@@ -1588,9 +1588,9 @@ public struct MyGame_Example_TypeAliases: FlatBufferObject, ObjectAPIPacker {
|
|||||||
u64: UInt64 = 0,
|
u64: UInt64 = 0,
|
||||||
f32: Float32 = 0.0,
|
f32: Float32 = 0.0,
|
||||||
f64: Double = 0.0,
|
f64: Double = 0.0,
|
||||||
v8VectorOffset v8: Offset<UOffset> = Offset(),
|
v8VectorOffset v8: Offset = Offset(),
|
||||||
vf64VectorOffset vf64: Offset<UOffset> = Offset()
|
vf64VectorOffset vf64: Offset = Offset()
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = MyGame_Example_TypeAliases.startTypeAliases(&fbb)
|
let __start = MyGame_Example_TypeAliases.startTypeAliases(&fbb)
|
||||||
MyGame_Example_TypeAliases.add(i8: i8, &fbb)
|
MyGame_Example_TypeAliases.add(i8: i8, &fbb)
|
||||||
MyGame_Example_TypeAliases.add(u8: u8, &fbb)
|
MyGame_Example_TypeAliases.add(u8: u8, &fbb)
|
||||||
@@ -1611,12 +1611,12 @@ public struct MyGame_Example_TypeAliases: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> MyGame_Example_TypeAliasesT {
|
public mutating func unpack() -> MyGame_Example_TypeAliasesT {
|
||||||
return MyGame_Example_TypeAliasesT(&self)
|
return MyGame_Example_TypeAliasesT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TypeAliasesT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TypeAliasesT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TypeAliasesT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MyGame_Example_TypeAliasesT) -> Offset {
|
||||||
let __v8 = builder.createVector(obj.v8)
|
let __v8 = builder.createVector(obj.v8)
|
||||||
let __vf64 = builder.createVector(obj.vf64)
|
let __vf64 = builder.createVector(obj.vf64)
|
||||||
let __root = MyGame_Example_TypeAliases.startTypeAliases(&builder)
|
let __root = MyGame_Example_TypeAliases.startTypeAliases(&builder)
|
||||||
|
|||||||
@@ -55,22 +55,22 @@ public struct MoreDefaults: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public func bools(at index: Int32) -> Bool { let o = _accessor.offset(VTOFFSET.bools.v); return o == 0 ? true : _accessor.directRead(of: Bool.self, offset: _accessor.vector(at: o) + index * 1) }
|
public func bools(at index: Int32) -> Bool { let o = _accessor.offset(VTOFFSET.bools.v); return o == 0 ? true : _accessor.directRead(of: Bool.self, offset: _accessor.vector(at: o) + index * 1) }
|
||||||
public var bools: [Bool] { return _accessor.getVector(at: VTOFFSET.bools.v) ?? [] }
|
public var bools: [Bool] { return _accessor.getVector(at: VTOFFSET.bools.v) ?? [] }
|
||||||
public static func startMoreDefaults(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 6) }
|
public static func startMoreDefaults(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 6) }
|
||||||
public static func addVectorOf(ints: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: ints, at: VTOFFSET.ints.p) }
|
public static func addVectorOf(ints: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: ints, at: VTOFFSET.ints.p) }
|
||||||
public static func addVectorOf(floats: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: floats, at: VTOFFSET.floats.p) }
|
public static func addVectorOf(floats: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: floats, at: VTOFFSET.floats.p) }
|
||||||
public static func add(emptyString: Offset<String>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: emptyString, at: VTOFFSET.emptyString.p) }
|
public static func add(emptyString: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: emptyString, at: VTOFFSET.emptyString.p) }
|
||||||
public static func add(someString: Offset<String>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: someString, at: VTOFFSET.someString.p) }
|
public static func add(someString: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: someString, at: VTOFFSET.someString.p) }
|
||||||
public static func addVectorOf(abcs: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: abcs, at: VTOFFSET.abcs.p) }
|
public static func addVectorOf(abcs: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: abcs, at: VTOFFSET.abcs.p) }
|
||||||
public static func addVectorOf(bools: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: bools, at: VTOFFSET.bools.p) }
|
public static func addVectorOf(bools: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: bools, at: VTOFFSET.bools.p) }
|
||||||
public static func endMoreDefaults(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endMoreDefaults(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createMoreDefaults(
|
public static func createMoreDefaults(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
intsVectorOffset ints: Offset<UOffset> = Offset(),
|
intsVectorOffset ints: Offset = Offset(),
|
||||||
floatsVectorOffset floats: Offset<UOffset> = Offset(),
|
floatsVectorOffset floats: Offset = Offset(),
|
||||||
emptyStringOffset emptyString: Offset<String> = Offset(),
|
emptyStringOffset emptyString: Offset = Offset(),
|
||||||
someStringOffset someString: Offset<String> = Offset(),
|
someStringOffset someString: Offset = Offset(),
|
||||||
abcsVectorOffset abcs: Offset<UOffset> = Offset(),
|
abcsVectorOffset abcs: Offset = Offset(),
|
||||||
boolsVectorOffset bools: Offset<UOffset> = Offset()
|
boolsVectorOffset bools: Offset = Offset()
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = MoreDefaults.startMoreDefaults(&fbb)
|
let __start = MoreDefaults.startMoreDefaults(&fbb)
|
||||||
MoreDefaults.addVectorOf(ints: ints, &fbb)
|
MoreDefaults.addVectorOf(ints: ints, &fbb)
|
||||||
MoreDefaults.addVectorOf(floats: floats, &fbb)
|
MoreDefaults.addVectorOf(floats: floats, &fbb)
|
||||||
@@ -85,26 +85,26 @@ public struct MoreDefaults: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> MoreDefaultsT {
|
public mutating func unpack() -> MoreDefaultsT {
|
||||||
return MoreDefaultsT(&self)
|
return MoreDefaultsT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MoreDefaultsT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MoreDefaultsT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MoreDefaultsT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MoreDefaultsT) -> Offset {
|
||||||
let __ints = builder.createVector(obj.ints)
|
let __ints = builder.createVector(obj.ints)
|
||||||
let __floats = builder.createVector(obj.floats)
|
let __floats = builder.createVector(obj.floats)
|
||||||
let __emptyString: Offset<String>
|
let __emptyString: Offset
|
||||||
if let s = obj.emptyString {
|
if let s = obj.emptyString {
|
||||||
__emptyString = builder.create(string: s)
|
__emptyString = builder.create(string: s)
|
||||||
} else {
|
} else {
|
||||||
__emptyString = Offset<String>()
|
__emptyString = Offset()
|
||||||
}
|
}
|
||||||
|
|
||||||
let __someString: Offset<String>
|
let __someString: Offset
|
||||||
if let s = obj.someString {
|
if let s = obj.someString {
|
||||||
__someString = builder.create(string: s)
|
__someString = builder.create(string: s)
|
||||||
} else {
|
} else {
|
||||||
__someString = Offset<String>()
|
__someString = Offset()
|
||||||
}
|
}
|
||||||
|
|
||||||
let __abcs = builder.createVector(obj.abcs)
|
let __abcs = builder.createVector(obj.abcs)
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ public struct optional_scalars_ScalarStuff: FlatBufferObject {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "NULL", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "NULL", addPrefix: prefix) }
|
||||||
public static func getRootAsScalarStuff(bb: ByteBuffer) -> optional_scalars_ScalarStuff { return optional_scalars_ScalarStuff(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsScalarStuff(bb: ByteBuffer) -> optional_scalars_ScalarStuff { return optional_scalars_ScalarStuff(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -145,7 +145,7 @@ public struct optional_scalars_ScalarStuff: FlatBufferObject {
|
|||||||
public static func add(justEnum: optional_scalars_OptionalByte, _ fbb: inout FlatBufferBuilder) { fbb.add(element: justEnum.rawValue, def: 0, at: VTOFFSET.justEnum.p) }
|
public static func add(justEnum: optional_scalars_OptionalByte, _ fbb: inout FlatBufferBuilder) { fbb.add(element: justEnum.rawValue, def: 0, at: VTOFFSET.justEnum.p) }
|
||||||
public static func add(maybeEnum: optional_scalars_OptionalByte?, _ fbb: inout FlatBufferBuilder) { fbb.add(element: maybeEnum?.rawValue, at: VTOFFSET.maybeEnum.p) }
|
public static func add(maybeEnum: optional_scalars_OptionalByte?, _ fbb: inout FlatBufferBuilder) { fbb.add(element: maybeEnum?.rawValue, at: VTOFFSET.maybeEnum.p) }
|
||||||
public static func add(defaultEnum: optional_scalars_OptionalByte, _ fbb: inout FlatBufferBuilder) { fbb.add(element: defaultEnum.rawValue, def: 1, at: VTOFFSET.defaultEnum.p) }
|
public static func add(defaultEnum: optional_scalars_OptionalByte, _ fbb: inout FlatBufferBuilder) { fbb.add(element: defaultEnum.rawValue, def: 1, at: VTOFFSET.defaultEnum.p) }
|
||||||
public static func endScalarStuff(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endScalarStuff(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createScalarStuff(
|
public static func createScalarStuff(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
justI8: Int8 = 0,
|
justI8: Int8 = 0,
|
||||||
@@ -184,7 +184,7 @@ public struct optional_scalars_ScalarStuff: FlatBufferObject {
|
|||||||
justEnum: optional_scalars_OptionalByte = .none_,
|
justEnum: optional_scalars_OptionalByte = .none_,
|
||||||
maybeEnum: optional_scalars_OptionalByte? = nil,
|
maybeEnum: optional_scalars_OptionalByte? = nil,
|
||||||
defaultEnum: optional_scalars_OptionalByte = .one
|
defaultEnum: optional_scalars_OptionalByte = .one
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = optional_scalars_ScalarStuff.startScalarStuff(&fbb)
|
let __start = optional_scalars_ScalarStuff.startScalarStuff(&fbb)
|
||||||
optional_scalars_ScalarStuff.add(justI8: justI8, &fbb)
|
optional_scalars_ScalarStuff.add(justI8: justI8, &fbb)
|
||||||
optional_scalars_ScalarStuff.add(maybeI8: maybeI8, &fbb)
|
optional_scalars_ScalarStuff.add(maybeI8: maybeI8, &fbb)
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ public struct CharacterUnion {
|
|||||||
self.type = type
|
self.type = type
|
||||||
self.value = v
|
self.value = v
|
||||||
}
|
}
|
||||||
public func pack(builder: inout FlatBufferBuilder) -> Offset<UOffset> {
|
public func pack(builder: inout FlatBufferBuilder) -> Offset {
|
||||||
switch type {
|
switch type {
|
||||||
case .mulan:
|
case .mulan:
|
||||||
var __obj = value as? AttackerT
|
var __obj = value as? AttackerT
|
||||||
@@ -42,6 +42,12 @@ public struct CharacterUnion {
|
|||||||
case .bookfan:
|
case .bookfan:
|
||||||
var __obj = value as? BookReader
|
var __obj = value as? BookReader
|
||||||
return BookReader_Mutable.pack(&builder, obj: &__obj)
|
return BookReader_Mutable.pack(&builder, obj: &__obj)
|
||||||
|
case .other:
|
||||||
|
var __obj = value as? String
|
||||||
|
return String.pack(&builder, obj: &__obj)
|
||||||
|
case .unused:
|
||||||
|
var __obj = value as? String
|
||||||
|
return String.pack(&builder, obj: &__obj)
|
||||||
default: return Offset()
|
default: return Offset()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -82,12 +88,12 @@ public struct Rapunzel_Mutable: FlatBufferObject {
|
|||||||
public mutating func unpack() -> Rapunzel {
|
public mutating func unpack() -> Rapunzel {
|
||||||
return Rapunzel(&self)
|
return Rapunzel(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout Rapunzel?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout Rapunzel?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout Rapunzel) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout Rapunzel) -> Offset {
|
||||||
return builder.create(struct: obj)
|
return builder.create(struct: obj)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -128,12 +134,12 @@ public struct BookReader_Mutable: FlatBufferObject {
|
|||||||
public mutating func unpack() -> BookReader {
|
public mutating func unpack() -> BookReader {
|
||||||
return BookReader(&self)
|
return BookReader(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout BookReader?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout BookReader?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout BookReader) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout BookReader) -> Offset {
|
||||||
return builder.create(struct: obj)
|
return builder.create(struct: obj)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -144,7 +150,7 @@ public struct Attacker: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MOVI", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MOVI", addPrefix: prefix) }
|
||||||
public static func getRootAsAttacker(bb: ByteBuffer) -> Attacker { return Attacker(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsAttacker(bb: ByteBuffer) -> Attacker { return Attacker(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -160,11 +166,11 @@ public struct Attacker: FlatBufferObject, ObjectAPIPacker {
|
|||||||
@discardableResult public func mutate(swordAttackDamage: Int32) -> Bool {let o = _accessor.offset(VTOFFSET.swordAttackDamage.v); return _accessor.mutate(swordAttackDamage, index: o) }
|
@discardableResult public func mutate(swordAttackDamage: Int32) -> Bool {let o = _accessor.offset(VTOFFSET.swordAttackDamage.v); return _accessor.mutate(swordAttackDamage, index: o) }
|
||||||
public static func startAttacker(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
public static func startAttacker(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
|
||||||
public static func add(swordAttackDamage: Int32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: swordAttackDamage, def: 0, at: VTOFFSET.swordAttackDamage.p) }
|
public static func add(swordAttackDamage: Int32, _ fbb: inout FlatBufferBuilder) { fbb.add(element: swordAttackDamage, def: 0, at: VTOFFSET.swordAttackDamage.p) }
|
||||||
public static func endAttacker(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endAttacker(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createAttacker(
|
public static func createAttacker(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
swordAttackDamage: Int32 = 0
|
swordAttackDamage: Int32 = 0
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = Attacker.startAttacker(&fbb)
|
let __start = Attacker.startAttacker(&fbb)
|
||||||
Attacker.add(swordAttackDamage: swordAttackDamage, &fbb)
|
Attacker.add(swordAttackDamage: swordAttackDamage, &fbb)
|
||||||
return Attacker.endAttacker(&fbb, start: __start)
|
return Attacker.endAttacker(&fbb, start: __start)
|
||||||
@@ -174,12 +180,12 @@ public struct Attacker: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> AttackerT {
|
public mutating func unpack() -> AttackerT {
|
||||||
return AttackerT(&self)
|
return AttackerT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout AttackerT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout AttackerT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout AttackerT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout AttackerT) -> Offset {
|
||||||
let __root = Attacker.startAttacker(&builder)
|
let __root = Attacker.startAttacker(&builder)
|
||||||
Attacker.add(swordAttackDamage: obj.swordAttackDamage, &builder)
|
Attacker.add(swordAttackDamage: obj.swordAttackDamage, &builder)
|
||||||
return Attacker.endAttacker(&builder, start: __root)
|
return Attacker.endAttacker(&builder, start: __root)
|
||||||
@@ -207,7 +213,7 @@ public struct Movie: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public var __buffer: ByteBuffer! { return _accessor.bb }
|
public var __buffer: ByteBuffer! { return _accessor.bb }
|
||||||
private var _accessor: Table
|
private var _accessor: Table
|
||||||
|
|
||||||
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset<UOffset>, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MOVI", addPrefix: prefix) }
|
public static func finish(_ fbb: inout FlatBufferBuilder, end: Offset, prefix: Bool = false) { fbb.finish(offset: end, fileId: "MOVI", addPrefix: prefix) }
|
||||||
public static func getRootAsMovie(bb: ByteBuffer) -> Movie { return Movie(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
public static func getRootAsMovie(bb: ByteBuffer) -> Movie { return Movie(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
|
||||||
|
|
||||||
private init(_ t: Table) { _accessor = t }
|
private init(_ t: Table) { _accessor = t }
|
||||||
@@ -223,24 +229,24 @@ public struct Movie: FlatBufferObject, ObjectAPIPacker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public var mainCharacterType: Character { let o = _accessor.offset(VTOFFSET.mainCharacterType.v); return o == 0 ? .none_ : Character(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
public var mainCharacterType: Character { let o = _accessor.offset(VTOFFSET.mainCharacterType.v); return o == 0 ? .none_ : Character(rawValue: _accessor.readBuffer(of: UInt8.self, at: o)) ?? .none_ }
|
||||||
public func mainCharacter<T: FlatBufferObject>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.mainCharacter.v); return o == 0 ? nil : _accessor.union(o) }
|
public func mainCharacter<T: FlatbuffersInitializable>(type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.mainCharacter.v); return o == 0 ? nil : _accessor.union(o) }
|
||||||
public var charactersTypeCount: Int32 { let o = _accessor.offset(VTOFFSET.charactersType.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
public var charactersTypeCount: Int32 { let o = _accessor.offset(VTOFFSET.charactersType.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
||||||
public func charactersType(at index: Int32) -> Character? { let o = _accessor.offset(VTOFFSET.charactersType.v); return o == 0 ? Character.none_ : Character(rawValue: _accessor.directRead(of: UInt8.self, offset: _accessor.vector(at: o) + index * 1)) }
|
public func charactersType(at index: Int32) -> Character? { let o = _accessor.offset(VTOFFSET.charactersType.v); return o == 0 ? Character.none_ : Character(rawValue: _accessor.directRead(of: UInt8.self, offset: _accessor.vector(at: o) + index * 1)) }
|
||||||
public var charactersCount: Int32 { let o = _accessor.offset(VTOFFSET.characters.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
public var charactersCount: Int32 { let o = _accessor.offset(VTOFFSET.characters.v); return o == 0 ? 0 : _accessor.vector(count: o) }
|
||||||
public func characters<T: FlatBufferObject>(at index: Int32, type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.characters.v); return o == 0 ? nil : _accessor.directUnion(_accessor.vector(at: o) + index * 4) }
|
public func characters<T: FlatbuffersInitializable>(at index: Int32, type: T.Type) -> T? { let o = _accessor.offset(VTOFFSET.characters.v); return o == 0 ? nil : _accessor.directUnion(_accessor.vector(at: o) + index * 4) }
|
||||||
public static func startMovie(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 4) }
|
public static func startMovie(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 4) }
|
||||||
public static func add(mainCharacterType: Character, _ fbb: inout FlatBufferBuilder) { fbb.add(element: mainCharacterType.rawValue, def: 0, at: VTOFFSET.mainCharacterType.p) }
|
public static func add(mainCharacterType: Character, _ fbb: inout FlatBufferBuilder) { fbb.add(element: mainCharacterType.rawValue, def: 0, at: VTOFFSET.mainCharacterType.p) }
|
||||||
public static func add(mainCharacter: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: mainCharacter, at: VTOFFSET.mainCharacter.p) }
|
public static func add(mainCharacter: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: mainCharacter, at: VTOFFSET.mainCharacter.p) }
|
||||||
public static func addVectorOf(charactersType: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: charactersType, at: VTOFFSET.charactersType.p) }
|
public static func addVectorOf(charactersType: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: charactersType, at: VTOFFSET.charactersType.p) }
|
||||||
public static func addVectorOf(characters: Offset<UOffset>, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: characters, at: VTOFFSET.characters.p) }
|
public static func addVectorOf(characters: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: characters, at: VTOFFSET.characters.p) }
|
||||||
public static func endMovie(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset<UOffset> { let end = Offset<UOffset>(offset: fbb.endTable(at: start)); return end }
|
public static func endMovie(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
|
||||||
public static func createMovie(
|
public static func createMovie(
|
||||||
_ fbb: inout FlatBufferBuilder,
|
_ fbb: inout FlatBufferBuilder,
|
||||||
mainCharacterType: Character = .none_,
|
mainCharacterType: Character = .none_,
|
||||||
mainCharacterOffset mainCharacter: Offset<UOffset> = Offset(),
|
mainCharacterOffset mainCharacter: Offset = Offset(),
|
||||||
charactersTypeVectorOffset charactersType: Offset<UOffset> = Offset(),
|
charactersTypeVectorOffset charactersType: Offset = Offset(),
|
||||||
charactersVectorOffset characters: Offset<UOffset> = Offset()
|
charactersVectorOffset characters: Offset = Offset()
|
||||||
) -> Offset<UOffset> {
|
) -> Offset {
|
||||||
let __start = Movie.startMovie(&fbb)
|
let __start = Movie.startMovie(&fbb)
|
||||||
Movie.add(mainCharacterType: mainCharacterType, &fbb)
|
Movie.add(mainCharacterType: mainCharacterType, &fbb)
|
||||||
Movie.add(mainCharacter: mainCharacter, &fbb)
|
Movie.add(mainCharacter: mainCharacter, &fbb)
|
||||||
@@ -253,14 +259,14 @@ public struct Movie: FlatBufferObject, ObjectAPIPacker {
|
|||||||
public mutating func unpack() -> MovieT {
|
public mutating func unpack() -> MovieT {
|
||||||
return MovieT(&self)
|
return MovieT(&self)
|
||||||
}
|
}
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MovieT?) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MovieT?) -> Offset {
|
||||||
guard var obj = obj else { return Offset<UOffset>() }
|
guard var obj = obj else { return Offset() }
|
||||||
return pack(&builder, obj: &obj)
|
return pack(&builder, obj: &obj)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MovieT) -> Offset<UOffset> {
|
public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MovieT) -> Offset {
|
||||||
let __mainCharacter = obj.mainCharacter?.pack(builder: &builder) ?? Offset()
|
let __mainCharacter = obj.mainCharacter?.pack(builder: &builder) ?? Offset()
|
||||||
var __characters__: [Offset<UOffset>] = []
|
var __characters__: [Offset] = []
|
||||||
for i in obj.characters {
|
for i in obj.characters {
|
||||||
guard let off = i?.pack(builder: &builder) else { continue }
|
guard let off = i?.pack(builder: &builder) else { continue }
|
||||||
__characters__.append(off)
|
__characters__.append(off)
|
||||||
@@ -298,6 +304,12 @@ public class MovieT: NativeObject {
|
|||||||
case .bookfan:
|
case .bookfan:
|
||||||
var _v = _t.mainCharacter(type: BookReader_Mutable.self)
|
var _v = _t.mainCharacter(type: BookReader_Mutable.self)
|
||||||
mainCharacter = CharacterUnion(_v?.unpack(), type: .bookfan)
|
mainCharacter = CharacterUnion(_v?.unpack(), type: .bookfan)
|
||||||
|
case .other:
|
||||||
|
var _v = _t.mainCharacter(type: String.self)
|
||||||
|
mainCharacter = CharacterUnion(_v?.unpack(), type: .other)
|
||||||
|
case .unused:
|
||||||
|
var _v = _t.mainCharacter(type: String.self)
|
||||||
|
mainCharacter = CharacterUnion(_v?.unpack(), type: .unused)
|
||||||
default: break
|
default: break
|
||||||
}
|
}
|
||||||
characters = []
|
characters = []
|
||||||
@@ -315,6 +327,12 @@ public class MovieT: NativeObject {
|
|||||||
case .bookfan:
|
case .bookfan:
|
||||||
var _v = _t.characters(at: index, type: BookReader_Mutable.self)
|
var _v = _t.characters(at: index, type: BookReader_Mutable.self)
|
||||||
characters.append(CharacterUnion(_v?.unpack(), type: .bookfan))
|
characters.append(CharacterUnion(_v?.unpack(), type: .bookfan))
|
||||||
|
case .other:
|
||||||
|
var _v = _t.characters(at: index, type: String.self)
|
||||||
|
characters.append(CharacterUnion(_v?.unpack(), type: .other))
|
||||||
|
case .unused:
|
||||||
|
var _v = _t.characters(at: index, type: String.self)
|
||||||
|
characters.append(CharacterUnion(_v?.unpack(), type: .unused))
|
||||||
default: break
|
default: break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user