xref: /aosp_15_r20/external/flatbuffers/tests/MyGame/Example/Referrable.cs (revision 890232f25432b36107d06881e0a25aaa6b473652)
1 // <auto-generated>
2 //  automatically generated by the FlatBuffers compiler, do not modify
3 // </auto-generated>
4 
5 namespace MyGame.Example
6 {
7 
8 using global::System;
9 using global::System.Collections.Generic;
10 using global::FlatBuffers;
11 
12 public struct Referrable : IFlatbufferObject
13 {
14   private Table __p;
15   public ByteBuffer ByteBuffer { get { return __p.bb; } }
ValidateVersionMyGame.Example.Referrable16   public static void ValidateVersion() { FlatBufferConstants.FLATBUFFERS_2_0_0(); }
GetRootAsReferrableMyGame.Example.Referrable17   public static Referrable GetRootAsReferrable(ByteBuffer _bb) { return GetRootAsReferrable(_bb, new Referrable()); }
GetRootAsReferrableMyGame.Example.Referrable18   public static Referrable GetRootAsReferrable(ByteBuffer _bb, Referrable obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
__initMyGame.Example.Referrable19   public void __init(int _i, ByteBuffer _bb) { __p = new Table(_i, _bb); }
__assignMyGame.Example.Referrable20   public Referrable __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; }
21 
22   public ulong Id { get { int o = __p.__offset(4); return o != 0 ? __p.bb.GetUlong(o + __p.bb_pos) : (ulong)0; } }
MutateIdMyGame.Example.Referrable23   public bool MutateId(ulong id) { int o = __p.__offset(4); if (o != 0) { __p.bb.PutUlong(o + __p.bb_pos, id); return true; } else { return false; } }
24 
CreateReferrableMyGame.Example.Referrable25   public static Offset<MyGame.Example.Referrable> CreateReferrable(FlatBufferBuilder builder,
26       ulong id = 0) {
27     builder.StartTable(1);
28     Referrable.AddId(builder, id);
29     return Referrable.EndReferrable(builder);
30   }
31 
StartReferrableMyGame.Example.Referrable32   public static void StartReferrable(FlatBufferBuilder builder) { builder.StartTable(1); }
AddIdMyGame.Example.Referrable33   public static void AddId(FlatBufferBuilder builder, ulong id) { builder.AddUlong(0, id, 0); }
EndReferrableMyGame.Example.Referrable34   public static Offset<MyGame.Example.Referrable> EndReferrable(FlatBufferBuilder builder) {
35     int o = builder.EndTable();
36     return new Offset<MyGame.Example.Referrable>(o);
37   }
38 
CreateSortedVectorOfReferrableMyGame.Example.Referrable39   public static VectorOffset CreateSortedVectorOfReferrable(FlatBufferBuilder builder, Offset<Referrable>[] offsets) {
40     Array.Sort(offsets,
41       (Offset<Referrable> o1, Offset<Referrable> o2) =>
42         new Referrable().__assign(builder.DataBuffer.Length - o1.Value, builder.DataBuffer).Id.CompareTo(new Referrable().__assign(builder.DataBuffer.Length - o2.Value, builder.DataBuffer).Id));
43     return builder.CreateVectorOfTables(offsets);
44   }
45 
__lookup_by_keyMyGame.Example.Referrable46   public static Referrable? __lookup_by_key(int vectorLocation, ulong key, ByteBuffer bb) {
47     Referrable obj_ = new Referrable();
48     int span = bb.GetInt(vectorLocation - 4);
49     int start = 0;
50     while (span != 0) {
51       int middle = span / 2;
52       int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb);
53       obj_.__assign(tableOffset, bb);
54       int comp = obj_.Id.CompareTo(key);
55       if (comp > 0) {
56         span = middle;
57       } else if (comp < 0) {
58         middle++;
59         start += middle;
60         span -= middle;
61       } else {
62         return obj_;
63       }
64     }
65     return null;
66   }
UnPackMyGame.Example.Referrable67   public ReferrableT UnPack() {
68     var _o = new ReferrableT();
69     this.UnPackTo(_o);
70     return _o;
71   }
UnPackToMyGame.Example.Referrable72   public void UnPackTo(ReferrableT _o) {
73     _o.Id = this.Id;
74   }
PackMyGame.Example.Referrable75   public static Offset<MyGame.Example.Referrable> Pack(FlatBufferBuilder builder, ReferrableT _o) {
76     if (_o == null) return default(Offset<MyGame.Example.Referrable>);
77     return CreateReferrable(
78       builder,
79       _o.Id);
80   }
81 }
82 
83 public class ReferrableT
84 {
85   [Newtonsoft.Json.JsonProperty("id")]
86   [Newtonsoft.Json.JsonIgnore()]
87   public ulong Id { get; set; }
88 
ReferrableT()89   public ReferrableT() {
90     this.Id = 0;
91   }
92 }
93 
94 
95 }
96