1 // automatically generated by the FlatBuffers compiler, do not modify
2 // swiftlint:disable all
3 // swiftformat:disable all
4 
5 public struct BytesCount: NativeStruct, Verifiable, FlatbuffersInitializable, NativeObject {
6 
validateVersionnull7   static func validateVersion() { FlatBuffersVersion_2_0_0() }
8 
9   private var _x: Int64
10 
11   public init(_ bb: ByteBuffer, o: Int32) {
12     let _accessor = Struct(bb: bb, position: o)
13     _x = _accessor.readBuffer(of: Int64.self, at: 0)
14   }
15 
16   public init(x: Int64) {
17     _x = x
18   }
19 
20   public init() {
21     _x = 0
22   }
23 
24   public init(_ _t: inout BytesCount_Mutable) {
25     _x = _t.x
26   }
27 
28   public var x: Int64 { _x }
29 
verify<T>null30   public static func verify<T>(_ verifier: inout Verifier, at position: Int, of type: T.Type) throws where T: Verifiable {
31     try verifier.inBuffer(position: position, of: BytesCount.self)
32   }
33 }
34 
35 extension BytesCount: Encodable {
36 
37   enum CodingKeys: String, CodingKey {
38     case x = "x"
39   }
encodenull40   public func encode(to encoder: Encoder) throws {
41     var container = encoder.container(keyedBy: CodingKeys.self)
42     if x != 0 {
43       try container.encodeIfPresent(x, forKey: .x)
44     }
45   }
46 }
47 
48 public struct BytesCount_Mutable: FlatBufferObject {
49 
validateVersionnull50   static func validateVersion() { FlatBuffersVersion_2_0_0() }
51   public var __buffer: ByteBuffer! { return _accessor.bb }
52   private var _accessor: Struct
53 
54   public init(_ bb: ByteBuffer, o: Int32) { _accessor = Struct(bb: bb, position: o) }
55 
56   public var x: Int64 { return _accessor.readBuffer(of: Int64.self, at: 0) }
mutatenull57   @discardableResult public func mutate(x: Int64) -> Bool { return _accessor.mutate(x, index: 0) }
58 
59 
unpacknull60   public mutating func unpack() -> BytesCount {
61     return BytesCount(&self)
62   }
packnull63   public static func pack(_ builder: inout FlatBufferBuilder, obj: inout BytesCount?) -> Offset {
64     guard var obj = obj else { return Offset() }
65     return pack(&builder, obj: &obj)
66   }
67 
packnull68   public static func pack(_ builder: inout FlatBufferBuilder, obj: inout BytesCount) -> Offset {
69     return builder.create(struct: obj)
70   }
71 }
72 
73 public struct InternalMessage: FlatBufferObject, Verifiable, ObjectAPIPacker {
74 
validateVersionnull75   static func validateVersion() { FlatBuffersVersion_2_0_0() }
76   public var __buffer: ByteBuffer! { return _accessor.bb }
77   private var _accessor: Table
78 
getRootAsInternalMessagenull79   public static func getRootAsInternalMessage(bb: ByteBuffer) -> InternalMessage { return InternalMessage(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
80 
81   private init(_ t: Table) { _accessor = t }
82   public init(_ bb: ByteBuffer, o: Int32) { _accessor = Table(bb: bb, position: o) }
83 
84   private enum VTOFFSET: VOffset {
85     case str = 4
86     var v: Int32 { Int32(self.rawValue) }
87     var p: VOffset { self.rawValue }
88   }
89 
90   public var str: String? { let o = _accessor.offset(VTOFFSET.str.v); return o == 0 ? nil : _accessor.string(at: o) }
91   public var strSegmentArray: [UInt8]? { return _accessor.getVector(at: VTOFFSET.str.v) }
startInternalMessagenull92   public static func startInternalMessage(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 1) }
addnull93   public static func add(str: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: str, at: VTOFFSET.str.p) }
endInternalMessagenull94   public static func endInternalMessage(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); return end }
95   public static func createInternalMessage(
96     _ fbb: inout FlatBufferBuilder,
97     strOffset str: Offset = Offset()
98   ) -> Offset {
99     let __start = InternalMessage.startInternalMessage(&fbb)
100     InternalMessage.add(str: str, &fbb)
101     return InternalMessage.endInternalMessage(&fbb, start: __start)
102   }
103 
104 
unpacknull105   public mutating func unpack() -> InternalMessageT {
106     return InternalMessageT(&self)
107   }
packnull108   public static func pack(_ builder: inout FlatBufferBuilder, obj: inout InternalMessageT?) -> Offset {
109     guard var obj = obj else { return Offset() }
110     return pack(&builder, obj: &obj)
111   }
112 
packnull113   public static func pack(_ builder: inout FlatBufferBuilder, obj: inout InternalMessageT) -> Offset {
114     let __str: Offset
115     if let s = obj.str {
116       __str = builder.create(string: s)
117     } else {
118       __str = Offset()
119     }
120 
121     let __root = InternalMessage.startInternalMessage(&builder)
122     InternalMessage.add(str: __str, &builder)
123     return InternalMessage.endInternalMessage(&builder, start: __root)
124   }
125 
verify<T>null126   public static func verify<T>(_ verifier: inout Verifier, at position: Int, of type: T.Type) throws where T: Verifiable {
127     var _v = try verifier.visitTable(at: position)
128     try _v.visit(field: VTOFFSET.str.p, fieldName: "str", required: false, type: ForwardOffset<String>.self)
129     _v.finish()
130   }
131 }
132 
133 extension InternalMessage: Encodable {
134 
135   enum CodingKeys: String, CodingKey {
136     case str = "str"
137   }
encodenull138   public func encode(to encoder: Encoder) throws {
139     var container = encoder.container(keyedBy: CodingKeys.self)
140     try container.encodeIfPresent(str, forKey: .str)
141   }
142 }
143 
144 public class InternalMessageT: NativeObject {
145 
146   public var str: String?
147 
148   public init(_ _t: inout InternalMessage) {
149     str = _t.str
150   }
151 
152   public init() {
153   }
154 
serializenull155   public func serialize() -> ByteBuffer { return serialize(type: InternalMessage.self) }
156 
157 }
158 public struct Message: FlatBufferObject, Verifiable, ObjectAPIPacker {
159 
validateVersionnull160   static func validateVersion() { FlatBuffersVersion_2_0_0() }
161   public var __buffer: ByteBuffer! { return _accessor.bb }
162   private var _accessor: Table
163 
getRootAsMessagenull164   public static func getRootAsMessage(bb: ByteBuffer) -> Message { return Message(Table(bb: bb, position: Int32(bb.read(def: UOffset.self, position: bb.reader)) + Int32(bb.reader))) }
165 
166   private init(_ t: Table) { _accessor = t }
167   public init(_ bb: ByteBuffer, o: Int32) { _accessor = Table(bb: bb, position: o) }
168 
169   private enum VTOFFSET: VOffset {
170     case id = 4
171     case position = 6
172     case pointer = 8
173     var v: Int32 { Int32(self.rawValue) }
174     var p: VOffset { self.rawValue }
175   }
176 
177   public var id: Int64 { let o = _accessor.offset(VTOFFSET.id.v); return o == 0 ? 0 : _accessor.readBuffer(of: Int64.self, at: o) }
mutatenull178   @discardableResult public func mutate(id: Int64) -> Bool {let o = _accessor.offset(VTOFFSET.id.v);  return _accessor.mutate(id, index: o) }
179   public var position: BytesCount! { let o = _accessor.offset(VTOFFSET.position.v); return _accessor.readBuffer(of: BytesCount.self, at: o) }
180   public var mutablePosition: BytesCount_Mutable! { let o = _accessor.offset(VTOFFSET.position.v); return BytesCount_Mutable(_accessor.bb, o: o + _accessor.postion) }
181   public var pointer: InternalMessage! { let o = _accessor.offset(VTOFFSET.pointer.v); return InternalMessage(_accessor.bb, o: _accessor.indirect(o + _accessor.postion)) }
startMessagenull182   public static func startMessage(_ fbb: inout FlatBufferBuilder) -> UOffset { fbb.startTable(with: 3) }
addnull183   public static func add(id: Int64, _ fbb: inout FlatBufferBuilder) { fbb.add(element: id, def: 0, at: VTOFFSET.id.p) }
addnull184   public static func add(position: BytesCount?, _ fbb: inout FlatBufferBuilder) { guard let position = position else { return }; fbb.create(struct: position, position: VTOFFSET.position.p) }
addnull185   public static func add(pointer: Offset, _ fbb: inout FlatBufferBuilder) { fbb.add(offset: pointer, at: VTOFFSET.pointer.p) }
endMessagenull186   public static func endMessage(_ fbb: inout FlatBufferBuilder, start: UOffset) -> Offset { let end = Offset(offset: fbb.endTable(at: start)); fbb.require(table: end, fields: [6, 8]); return end }
187   public static func createMessage(
188     _ fbb: inout FlatBufferBuilder,
189     id: Int64 = 0,
190     position: BytesCount,
191     pointerOffset pointer: Offset
192   ) -> Offset {
193     let __start = Message.startMessage(&fbb)
194     Message.add(id: id, &fbb)
195     Message.add(position: position, &fbb)
196     Message.add(pointer: pointer, &fbb)
197     return Message.endMessage(&fbb, start: __start)
198   }
199 
200 
unpacknull201   public mutating func unpack() -> MessageT {
202     return MessageT(&self)
203   }
packnull204   public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MessageT?) -> Offset {
205     guard var obj = obj else { return Offset() }
206     return pack(&builder, obj: &obj)
207   }
208 
packnull209   public static func pack(_ builder: inout FlatBufferBuilder, obj: inout MessageT) -> Offset {
210     let __pointer = InternalMessage.pack(&builder, obj: &obj.pointer)
211     let __root = Message.startMessage(&builder)
212     Message.add(id: obj.id, &builder)
213     Message.add(position: obj.position, &builder)
214     Message.add(pointer: __pointer, &builder)
215     return Message.endMessage(&builder, start: __root)
216   }
217 
verify<T>null218   public static func verify<T>(_ verifier: inout Verifier, at position: Int, of type: T.Type) throws where T: Verifiable {
219     var _v = try verifier.visitTable(at: position)
220     try _v.visit(field: VTOFFSET.id.p, fieldName: "id", required: false, type: Int64.self)
221     try _v.visit(field: VTOFFSET.position.p, fieldName: "position", required: true, type: BytesCount.self)
222     try _v.visit(field: VTOFFSET.pointer.p, fieldName: "pointer", required: true, type: ForwardOffset<InternalMessage>.self)
223     _v.finish()
224   }
225 }
226 
227 extension Message: Encodable {
228 
229   enum CodingKeys: String, CodingKey {
230     case id = "id"
231     case position = "position"
232     case pointer = "pointer"
233   }
encodenull234   public func encode(to encoder: Encoder) throws {
235     var container = encoder.container(keyedBy: CodingKeys.self)
236     if id != 0 {
237       try container.encodeIfPresent(id, forKey: .id)
238     }
239     try container.encodeIfPresent(position, forKey: .position)
240     try container.encodeIfPresent(pointer, forKey: .pointer)
241   }
242 }
243 
244 public class MessageT: NativeObject {
245 
246   public var id: Int64
247   public var position: BytesCount
248   public var pointer: InternalMessageT
249 
250   public init(_ _t: inout Message) {
251     id = _t.id
252     position = _t.position
253     var __pointer = _t.pointer
254     pointer = __pointer!.unpack()
255   }
256 
257   public init() {
258     id = 0
259     position = BytesCount()
260     pointer = InternalMessageT()
261   }
262 
serializenull263   public func serialize() -> ByteBuffer { return serialize(type: Message.self) }
264 
265 }
266