github.com/dolthub/dolt/go@v0.40.5-0.20240520175717-68db7794bea6/gen/fb/serial/schema.go (about)

     1  // Copyright 2022-2023 Dolthub, Inc.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by the FlatBuffers compiler. DO NOT EDIT.
    16  
    17  package serial
    18  
    19  import (
    20  	flatbuffers "github.com/dolthub/flatbuffers/v23/go"
    21  )
    22  
    23  type TableSchema struct {
    24  	_tab flatbuffers.Table
    25  }
    26  
    27  func InitTableSchemaRoot(o *TableSchema, buf []byte, offset flatbuffers.UOffsetT) error {
    28  	n := flatbuffers.GetUOffsetT(buf[offset:])
    29  	return o.Init(buf, n+offset)
    30  }
    31  
    32  func TryGetRootAsTableSchema(buf []byte, offset flatbuffers.UOffsetT) (*TableSchema, error) {
    33  	x := &TableSchema{}
    34  	return x, InitTableSchemaRoot(x, buf, offset)
    35  }
    36  
    37  func TryGetSizePrefixedRootAsTableSchema(buf []byte, offset flatbuffers.UOffsetT) (*TableSchema, error) {
    38  	x := &TableSchema{}
    39  	return x, InitTableSchemaRoot(x, buf, offset+flatbuffers.SizeUint32)
    40  }
    41  
    42  func (rcv *TableSchema) Init(buf []byte, i flatbuffers.UOffsetT) error {
    43  	rcv._tab.Bytes = buf
    44  	rcv._tab.Pos = i
    45  	if TableSchemaNumFields < rcv.Table().NumFields() {
    46  		return flatbuffers.ErrTableHasUnknownFields
    47  	}
    48  	return nil
    49  }
    50  
    51  func (rcv *TableSchema) Table() flatbuffers.Table {
    52  	return rcv._tab
    53  }
    54  
    55  func (rcv *TableSchema) TryColumns(obj *Column, j int) (bool, error) {
    56  	o := flatbuffers.UOffsetT(rcv._tab.Offset(4))
    57  	if o != 0 {
    58  		x := rcv._tab.Vector(o)
    59  		x += flatbuffers.UOffsetT(j) * 4
    60  		x = rcv._tab.Indirect(x)
    61  		obj.Init(rcv._tab.Bytes, x)
    62  		if ColumnNumFields < obj.Table().NumFields() {
    63  			return false, flatbuffers.ErrTableHasUnknownFields
    64  		}
    65  		return true, nil
    66  	}
    67  	return false, nil
    68  }
    69  
    70  func (rcv *TableSchema) ColumnsLength() int {
    71  	o := flatbuffers.UOffsetT(rcv._tab.Offset(4))
    72  	if o != 0 {
    73  		return rcv._tab.VectorLen(o)
    74  	}
    75  	return 0
    76  }
    77  
    78  func (rcv *TableSchema) TryClusteredIndex(obj *Index) (*Index, error) {
    79  	o := flatbuffers.UOffsetT(rcv._tab.Offset(6))
    80  	if o != 0 {
    81  		x := rcv._tab.Indirect(o + rcv._tab.Pos)
    82  		if obj == nil {
    83  			obj = new(Index)
    84  		}
    85  		obj.Init(rcv._tab.Bytes, x)
    86  		if IndexNumFields < obj.Table().NumFields() {
    87  			return nil, flatbuffers.ErrTableHasUnknownFields
    88  		}
    89  		return obj, nil
    90  	}
    91  	return nil, nil
    92  }
    93  
    94  func (rcv *TableSchema) TrySecondaryIndexes(obj *Index, j int) (bool, error) {
    95  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
    96  	if o != 0 {
    97  		x := rcv._tab.Vector(o)
    98  		x += flatbuffers.UOffsetT(j) * 4
    99  		x = rcv._tab.Indirect(x)
   100  		obj.Init(rcv._tab.Bytes, x)
   101  		if IndexNumFields < obj.Table().NumFields() {
   102  			return false, flatbuffers.ErrTableHasUnknownFields
   103  		}
   104  		return true, nil
   105  	}
   106  	return false, nil
   107  }
   108  
   109  func (rcv *TableSchema) SecondaryIndexesLength() int {
   110  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   111  	if o != 0 {
   112  		return rcv._tab.VectorLen(o)
   113  	}
   114  	return 0
   115  }
   116  
   117  func (rcv *TableSchema) TryChecks(obj *CheckConstraint, j int) (bool, error) {
   118  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   119  	if o != 0 {
   120  		x := rcv._tab.Vector(o)
   121  		x += flatbuffers.UOffsetT(j) * 4
   122  		x = rcv._tab.Indirect(x)
   123  		obj.Init(rcv._tab.Bytes, x)
   124  		if CheckConstraintNumFields < obj.Table().NumFields() {
   125  			return false, flatbuffers.ErrTableHasUnknownFields
   126  		}
   127  		return true, nil
   128  	}
   129  	return false, nil
   130  }
   131  
   132  func (rcv *TableSchema) ChecksLength() int {
   133  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   134  	if o != 0 {
   135  		return rcv._tab.VectorLen(o)
   136  	}
   137  	return 0
   138  }
   139  
   140  func (rcv *TableSchema) Collation() Collation {
   141  	o := flatbuffers.UOffsetT(rcv._tab.Offset(12))
   142  	if o != 0 {
   143  		return Collation(rcv._tab.GetUint16(o + rcv._tab.Pos))
   144  	}
   145  	return 0
   146  }
   147  
   148  func (rcv *TableSchema) MutateCollation(n Collation) bool {
   149  	return rcv._tab.MutateUint16Slot(12, uint16(n))
   150  }
   151  
   152  func (rcv *TableSchema) HasFeaturesAfterTryAccessors() bool {
   153  	o := flatbuffers.UOffsetT(rcv._tab.Offset(14))
   154  	if o != 0 {
   155  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   156  	}
   157  	return false
   158  }
   159  
   160  func (rcv *TableSchema) MutateHasFeaturesAfterTryAccessors(n bool) bool {
   161  	return rcv._tab.MutateBoolSlot(14, n)
   162  }
   163  
   164  func (rcv *TableSchema) Comment() []byte {
   165  	o := flatbuffers.UOffsetT(rcv._tab.Offset(16))
   166  	if o != 0 {
   167  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   168  	}
   169  	return nil
   170  }
   171  
   172  const TableSchemaNumFields = 7
   173  
   174  func TableSchemaStart(builder *flatbuffers.Builder) {
   175  	builder.StartObject(TableSchemaNumFields)
   176  }
   177  func TableSchemaAddColumns(builder *flatbuffers.Builder, columns flatbuffers.UOffsetT) {
   178  	builder.PrependUOffsetTSlot(0, flatbuffers.UOffsetT(columns), 0)
   179  }
   180  func TableSchemaStartColumnsVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   181  	return builder.StartVector(4, numElems, 4)
   182  }
   183  func TableSchemaAddClusteredIndex(builder *flatbuffers.Builder, clusteredIndex flatbuffers.UOffsetT) {
   184  	builder.PrependUOffsetTSlot(1, flatbuffers.UOffsetT(clusteredIndex), 0)
   185  }
   186  func TableSchemaAddSecondaryIndexes(builder *flatbuffers.Builder, secondaryIndexes flatbuffers.UOffsetT) {
   187  	builder.PrependUOffsetTSlot(2, flatbuffers.UOffsetT(secondaryIndexes), 0)
   188  }
   189  func TableSchemaStartSecondaryIndexesVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   190  	return builder.StartVector(4, numElems, 4)
   191  }
   192  func TableSchemaAddChecks(builder *flatbuffers.Builder, checks flatbuffers.UOffsetT) {
   193  	builder.PrependUOffsetTSlot(3, flatbuffers.UOffsetT(checks), 0)
   194  }
   195  func TableSchemaStartChecksVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   196  	return builder.StartVector(4, numElems, 4)
   197  }
   198  func TableSchemaAddCollation(builder *flatbuffers.Builder, collation Collation) {
   199  	builder.PrependUint16Slot(4, uint16(collation), 0)
   200  }
   201  func TableSchemaAddHasFeaturesAfterTryAccessors(builder *flatbuffers.Builder, hasFeaturesAfterTryAccessors bool) {
   202  	builder.PrependBoolSlot(5, hasFeaturesAfterTryAccessors, false)
   203  }
   204  func TableSchemaAddComment(builder *flatbuffers.Builder, comment flatbuffers.UOffsetT) {
   205  	builder.PrependUOffsetTSlot(6, flatbuffers.UOffsetT(comment), 0)
   206  }
   207  func TableSchemaEnd(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
   208  	return builder.EndObject()
   209  }
   210  
   211  type Column struct {
   212  	_tab flatbuffers.Table
   213  }
   214  
   215  func InitColumnRoot(o *Column, buf []byte, offset flatbuffers.UOffsetT) error {
   216  	n := flatbuffers.GetUOffsetT(buf[offset:])
   217  	return o.Init(buf, n+offset)
   218  }
   219  
   220  func TryGetRootAsColumn(buf []byte, offset flatbuffers.UOffsetT) (*Column, error) {
   221  	x := &Column{}
   222  	return x, InitColumnRoot(x, buf, offset)
   223  }
   224  
   225  func TryGetSizePrefixedRootAsColumn(buf []byte, offset flatbuffers.UOffsetT) (*Column, error) {
   226  	x := &Column{}
   227  	return x, InitColumnRoot(x, buf, offset+flatbuffers.SizeUint32)
   228  }
   229  
   230  func (rcv *Column) Init(buf []byte, i flatbuffers.UOffsetT) error {
   231  	rcv._tab.Bytes = buf
   232  	rcv._tab.Pos = i
   233  	if ColumnNumFields < rcv.Table().NumFields() {
   234  		return flatbuffers.ErrTableHasUnknownFields
   235  	}
   236  	return nil
   237  }
   238  
   239  func (rcv *Column) Table() flatbuffers.Table {
   240  	return rcv._tab
   241  }
   242  
   243  func (rcv *Column) Name() []byte {
   244  	o := flatbuffers.UOffsetT(rcv._tab.Offset(4))
   245  	if o != 0 {
   246  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   247  	}
   248  	return nil
   249  }
   250  
   251  func (rcv *Column) SqlType() []byte {
   252  	o := flatbuffers.UOffsetT(rcv._tab.Offset(6))
   253  	if o != 0 {
   254  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   255  	}
   256  	return nil
   257  }
   258  
   259  func (rcv *Column) DefaultValue() []byte {
   260  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   261  	if o != 0 {
   262  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   263  	}
   264  	return nil
   265  }
   266  
   267  func (rcv *Column) Comment() []byte {
   268  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   269  	if o != 0 {
   270  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   271  	}
   272  	return nil
   273  }
   274  
   275  func (rcv *Column) DisplayOrder() int16 {
   276  	o := flatbuffers.UOffsetT(rcv._tab.Offset(12))
   277  	if o != 0 {
   278  		return rcv._tab.GetInt16(o + rcv._tab.Pos)
   279  	}
   280  	return 0
   281  }
   282  
   283  func (rcv *Column) MutateDisplayOrder(n int16) bool {
   284  	return rcv._tab.MutateInt16Slot(12, n)
   285  }
   286  
   287  func (rcv *Column) Tag() uint64 {
   288  	o := flatbuffers.UOffsetT(rcv._tab.Offset(14))
   289  	if o != 0 {
   290  		return rcv._tab.GetUint64(o + rcv._tab.Pos)
   291  	}
   292  	return 0
   293  }
   294  
   295  func (rcv *Column) MutateTag(n uint64) bool {
   296  	return rcv._tab.MutateUint64Slot(14, n)
   297  }
   298  
   299  func (rcv *Column) Encoding() Encoding {
   300  	o := flatbuffers.UOffsetT(rcv._tab.Offset(16))
   301  	if o != 0 {
   302  		return Encoding(rcv._tab.GetByte(o + rcv._tab.Pos))
   303  	}
   304  	return 0
   305  }
   306  
   307  func (rcv *Column) MutateEncoding(n Encoding) bool {
   308  	return rcv._tab.MutateByteSlot(16, byte(n))
   309  }
   310  
   311  func (rcv *Column) PrimaryKey() bool {
   312  	o := flatbuffers.UOffsetT(rcv._tab.Offset(18))
   313  	if o != 0 {
   314  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   315  	}
   316  	return false
   317  }
   318  
   319  func (rcv *Column) MutatePrimaryKey(n bool) bool {
   320  	return rcv._tab.MutateBoolSlot(18, n)
   321  }
   322  
   323  func (rcv *Column) Nullable() bool {
   324  	o := flatbuffers.UOffsetT(rcv._tab.Offset(20))
   325  	if o != 0 {
   326  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   327  	}
   328  	return false
   329  }
   330  
   331  func (rcv *Column) MutateNullable(n bool) bool {
   332  	return rcv._tab.MutateBoolSlot(20, n)
   333  }
   334  
   335  func (rcv *Column) AutoIncrement() bool {
   336  	o := flatbuffers.UOffsetT(rcv._tab.Offset(22))
   337  	if o != 0 {
   338  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   339  	}
   340  	return false
   341  }
   342  
   343  func (rcv *Column) MutateAutoIncrement(n bool) bool {
   344  	return rcv._tab.MutateBoolSlot(22, n)
   345  }
   346  
   347  func (rcv *Column) Hidden() bool {
   348  	o := flatbuffers.UOffsetT(rcv._tab.Offset(24))
   349  	if o != 0 {
   350  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   351  	}
   352  	return false
   353  }
   354  
   355  func (rcv *Column) MutateHidden(n bool) bool {
   356  	return rcv._tab.MutateBoolSlot(24, n)
   357  }
   358  
   359  func (rcv *Column) Generated() bool {
   360  	o := flatbuffers.UOffsetT(rcv._tab.Offset(26))
   361  	if o != 0 {
   362  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   363  	}
   364  	return false
   365  }
   366  
   367  func (rcv *Column) MutateGenerated(n bool) bool {
   368  	return rcv._tab.MutateBoolSlot(26, n)
   369  }
   370  
   371  func (rcv *Column) Virtual() bool {
   372  	o := flatbuffers.UOffsetT(rcv._tab.Offset(28))
   373  	if o != 0 {
   374  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   375  	}
   376  	return false
   377  }
   378  
   379  func (rcv *Column) MutateVirtual(n bool) bool {
   380  	return rcv._tab.MutateBoolSlot(28, n)
   381  }
   382  
   383  func (rcv *Column) OnUpdateValue() []byte {
   384  	o := flatbuffers.UOffsetT(rcv._tab.Offset(30))
   385  	if o != 0 {
   386  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   387  	}
   388  	return nil
   389  }
   390  
   391  const ColumnNumFields = 14
   392  
   393  func ColumnStart(builder *flatbuffers.Builder) {
   394  	builder.StartObject(ColumnNumFields)
   395  }
   396  func ColumnAddName(builder *flatbuffers.Builder, name flatbuffers.UOffsetT) {
   397  	builder.PrependUOffsetTSlot(0, flatbuffers.UOffsetT(name), 0)
   398  }
   399  func ColumnAddSqlType(builder *flatbuffers.Builder, sqlType flatbuffers.UOffsetT) {
   400  	builder.PrependUOffsetTSlot(1, flatbuffers.UOffsetT(sqlType), 0)
   401  }
   402  func ColumnAddDefaultValue(builder *flatbuffers.Builder, defaultValue flatbuffers.UOffsetT) {
   403  	builder.PrependUOffsetTSlot(2, flatbuffers.UOffsetT(defaultValue), 0)
   404  }
   405  func ColumnAddComment(builder *flatbuffers.Builder, comment flatbuffers.UOffsetT) {
   406  	builder.PrependUOffsetTSlot(3, flatbuffers.UOffsetT(comment), 0)
   407  }
   408  func ColumnAddDisplayOrder(builder *flatbuffers.Builder, displayOrder int16) {
   409  	builder.PrependInt16Slot(4, displayOrder, 0)
   410  }
   411  func ColumnAddTag(builder *flatbuffers.Builder, tag uint64) {
   412  	builder.PrependUint64Slot(5, tag, 0)
   413  }
   414  func ColumnAddEncoding(builder *flatbuffers.Builder, encoding Encoding) {
   415  	builder.PrependByteSlot(6, byte(encoding), 0)
   416  }
   417  func ColumnAddPrimaryKey(builder *flatbuffers.Builder, primaryKey bool) {
   418  	builder.PrependBoolSlot(7, primaryKey, false)
   419  }
   420  func ColumnAddNullable(builder *flatbuffers.Builder, nullable bool) {
   421  	builder.PrependBoolSlot(8, nullable, false)
   422  }
   423  func ColumnAddAutoIncrement(builder *flatbuffers.Builder, autoIncrement bool) {
   424  	builder.PrependBoolSlot(9, autoIncrement, false)
   425  }
   426  func ColumnAddHidden(builder *flatbuffers.Builder, hidden bool) {
   427  	builder.PrependBoolSlot(10, hidden, false)
   428  }
   429  func ColumnAddGenerated(builder *flatbuffers.Builder, generated bool) {
   430  	builder.PrependBoolSlot(11, generated, false)
   431  }
   432  func ColumnAddVirtual(builder *flatbuffers.Builder, virtual bool) {
   433  	builder.PrependBoolSlot(12, virtual, false)
   434  }
   435  func ColumnAddOnUpdateValue(builder *flatbuffers.Builder, onUpdateValue flatbuffers.UOffsetT) {
   436  	builder.PrependUOffsetTSlot(13, flatbuffers.UOffsetT(onUpdateValue), 0)
   437  }
   438  func ColumnEnd(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
   439  	return builder.EndObject()
   440  }
   441  
   442  type Index struct {
   443  	_tab flatbuffers.Table
   444  }
   445  
   446  func InitIndexRoot(o *Index, buf []byte, offset flatbuffers.UOffsetT) error {
   447  	n := flatbuffers.GetUOffsetT(buf[offset:])
   448  	return o.Init(buf, n+offset)
   449  }
   450  
   451  func TryGetRootAsIndex(buf []byte, offset flatbuffers.UOffsetT) (*Index, error) {
   452  	x := &Index{}
   453  	return x, InitIndexRoot(x, buf, offset)
   454  }
   455  
   456  func TryGetSizePrefixedRootAsIndex(buf []byte, offset flatbuffers.UOffsetT) (*Index, error) {
   457  	x := &Index{}
   458  	return x, InitIndexRoot(x, buf, offset+flatbuffers.SizeUint32)
   459  }
   460  
   461  func (rcv *Index) Init(buf []byte, i flatbuffers.UOffsetT) error {
   462  	rcv._tab.Bytes = buf
   463  	rcv._tab.Pos = i
   464  	if IndexNumFields < rcv.Table().NumFields() {
   465  		return flatbuffers.ErrTableHasUnknownFields
   466  	}
   467  	return nil
   468  }
   469  
   470  func (rcv *Index) Table() flatbuffers.Table {
   471  	return rcv._tab
   472  }
   473  
   474  func (rcv *Index) Name() []byte {
   475  	o := flatbuffers.UOffsetT(rcv._tab.Offset(4))
   476  	if o != 0 {
   477  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   478  	}
   479  	return nil
   480  }
   481  
   482  func (rcv *Index) Comment() []byte {
   483  	o := flatbuffers.UOffsetT(rcv._tab.Offset(6))
   484  	if o != 0 {
   485  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   486  	}
   487  	return nil
   488  }
   489  
   490  func (rcv *Index) IndexColumns(j int) uint16 {
   491  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   492  	if o != 0 {
   493  		a := rcv._tab.Vector(o)
   494  		return rcv._tab.GetUint16(a + flatbuffers.UOffsetT(j*2))
   495  	}
   496  	return 0
   497  }
   498  
   499  func (rcv *Index) IndexColumnsLength() int {
   500  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   501  	if o != 0 {
   502  		return rcv._tab.VectorLen(o)
   503  	}
   504  	return 0
   505  }
   506  
   507  func (rcv *Index) MutateIndexColumns(j int, n uint16) bool {
   508  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   509  	if o != 0 {
   510  		a := rcv._tab.Vector(o)
   511  		return rcv._tab.MutateUint16(a+flatbuffers.UOffsetT(j*2), n)
   512  	}
   513  	return false
   514  }
   515  
   516  func (rcv *Index) KeyColumns(j int) uint16 {
   517  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   518  	if o != 0 {
   519  		a := rcv._tab.Vector(o)
   520  		return rcv._tab.GetUint16(a + flatbuffers.UOffsetT(j*2))
   521  	}
   522  	return 0
   523  }
   524  
   525  func (rcv *Index) KeyColumnsLength() int {
   526  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   527  	if o != 0 {
   528  		return rcv._tab.VectorLen(o)
   529  	}
   530  	return 0
   531  }
   532  
   533  func (rcv *Index) MutateKeyColumns(j int, n uint16) bool {
   534  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   535  	if o != 0 {
   536  		a := rcv._tab.Vector(o)
   537  		return rcv._tab.MutateUint16(a+flatbuffers.UOffsetT(j*2), n)
   538  	}
   539  	return false
   540  }
   541  
   542  func (rcv *Index) ValueColumns(j int) uint16 {
   543  	o := flatbuffers.UOffsetT(rcv._tab.Offset(12))
   544  	if o != 0 {
   545  		a := rcv._tab.Vector(o)
   546  		return rcv._tab.GetUint16(a + flatbuffers.UOffsetT(j*2))
   547  	}
   548  	return 0
   549  }
   550  
   551  func (rcv *Index) ValueColumnsLength() int {
   552  	o := flatbuffers.UOffsetT(rcv._tab.Offset(12))
   553  	if o != 0 {
   554  		return rcv._tab.VectorLen(o)
   555  	}
   556  	return 0
   557  }
   558  
   559  func (rcv *Index) MutateValueColumns(j int, n uint16) bool {
   560  	o := flatbuffers.UOffsetT(rcv._tab.Offset(12))
   561  	if o != 0 {
   562  		a := rcv._tab.Vector(o)
   563  		return rcv._tab.MutateUint16(a+flatbuffers.UOffsetT(j*2), n)
   564  	}
   565  	return false
   566  }
   567  
   568  func (rcv *Index) PrimaryKey() bool {
   569  	o := flatbuffers.UOffsetT(rcv._tab.Offset(14))
   570  	if o != 0 {
   571  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   572  	}
   573  	return false
   574  }
   575  
   576  func (rcv *Index) MutatePrimaryKey(n bool) bool {
   577  	return rcv._tab.MutateBoolSlot(14, n)
   578  }
   579  
   580  func (rcv *Index) UniqueKey() bool {
   581  	o := flatbuffers.UOffsetT(rcv._tab.Offset(16))
   582  	if o != 0 {
   583  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   584  	}
   585  	return false
   586  }
   587  
   588  func (rcv *Index) MutateUniqueKey(n bool) bool {
   589  	return rcv._tab.MutateBoolSlot(16, n)
   590  }
   591  
   592  func (rcv *Index) SystemDefined() bool {
   593  	o := flatbuffers.UOffsetT(rcv._tab.Offset(18))
   594  	if o != 0 {
   595  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   596  	}
   597  	return false
   598  }
   599  
   600  func (rcv *Index) MutateSystemDefined(n bool) bool {
   601  	return rcv._tab.MutateBoolSlot(18, n)
   602  }
   603  
   604  func (rcv *Index) PrefixLengths(j int) uint16 {
   605  	o := flatbuffers.UOffsetT(rcv._tab.Offset(20))
   606  	if o != 0 {
   607  		a := rcv._tab.Vector(o)
   608  		return rcv._tab.GetUint16(a + flatbuffers.UOffsetT(j*2))
   609  	}
   610  	return 0
   611  }
   612  
   613  func (rcv *Index) PrefixLengthsLength() int {
   614  	o := flatbuffers.UOffsetT(rcv._tab.Offset(20))
   615  	if o != 0 {
   616  		return rcv._tab.VectorLen(o)
   617  	}
   618  	return 0
   619  }
   620  
   621  func (rcv *Index) MutatePrefixLengths(j int, n uint16) bool {
   622  	o := flatbuffers.UOffsetT(rcv._tab.Offset(20))
   623  	if o != 0 {
   624  		a := rcv._tab.Vector(o)
   625  		return rcv._tab.MutateUint16(a+flatbuffers.UOffsetT(j*2), n)
   626  	}
   627  	return false
   628  }
   629  
   630  func (rcv *Index) SpatialKey() bool {
   631  	o := flatbuffers.UOffsetT(rcv._tab.Offset(22))
   632  	if o != 0 {
   633  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   634  	}
   635  	return false
   636  }
   637  
   638  func (rcv *Index) MutateSpatialKey(n bool) bool {
   639  	return rcv._tab.MutateBoolSlot(22, n)
   640  }
   641  
   642  func (rcv *Index) FulltextKey() bool {
   643  	o := flatbuffers.UOffsetT(rcv._tab.Offset(24))
   644  	if o != 0 {
   645  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   646  	}
   647  	return false
   648  }
   649  
   650  func (rcv *Index) MutateFulltextKey(n bool) bool {
   651  	return rcv._tab.MutateBoolSlot(24, n)
   652  }
   653  
   654  func (rcv *Index) TryFulltextInfo(obj *FulltextInfo) (*FulltextInfo, error) {
   655  	o := flatbuffers.UOffsetT(rcv._tab.Offset(26))
   656  	if o != 0 {
   657  		x := rcv._tab.Indirect(o + rcv._tab.Pos)
   658  		if obj == nil {
   659  			obj = new(FulltextInfo)
   660  		}
   661  		obj.Init(rcv._tab.Bytes, x)
   662  		if FulltextInfoNumFields < obj.Table().NumFields() {
   663  			return nil, flatbuffers.ErrTableHasUnknownFields
   664  		}
   665  		return obj, nil
   666  	}
   667  	return nil, nil
   668  }
   669  
   670  const IndexNumFields = 12
   671  
   672  func IndexStart(builder *flatbuffers.Builder) {
   673  	builder.StartObject(IndexNumFields)
   674  }
   675  func IndexAddName(builder *flatbuffers.Builder, name flatbuffers.UOffsetT) {
   676  	builder.PrependUOffsetTSlot(0, flatbuffers.UOffsetT(name), 0)
   677  }
   678  func IndexAddComment(builder *flatbuffers.Builder, comment flatbuffers.UOffsetT) {
   679  	builder.PrependUOffsetTSlot(1, flatbuffers.UOffsetT(comment), 0)
   680  }
   681  func IndexAddIndexColumns(builder *flatbuffers.Builder, indexColumns flatbuffers.UOffsetT) {
   682  	builder.PrependUOffsetTSlot(2, flatbuffers.UOffsetT(indexColumns), 0)
   683  }
   684  func IndexStartIndexColumnsVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   685  	return builder.StartVector(2, numElems, 2)
   686  }
   687  func IndexAddKeyColumns(builder *flatbuffers.Builder, keyColumns flatbuffers.UOffsetT) {
   688  	builder.PrependUOffsetTSlot(3, flatbuffers.UOffsetT(keyColumns), 0)
   689  }
   690  func IndexStartKeyColumnsVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   691  	return builder.StartVector(2, numElems, 2)
   692  }
   693  func IndexAddValueColumns(builder *flatbuffers.Builder, valueColumns flatbuffers.UOffsetT) {
   694  	builder.PrependUOffsetTSlot(4, flatbuffers.UOffsetT(valueColumns), 0)
   695  }
   696  func IndexStartValueColumnsVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   697  	return builder.StartVector(2, numElems, 2)
   698  }
   699  func IndexAddPrimaryKey(builder *flatbuffers.Builder, primaryKey bool) {
   700  	builder.PrependBoolSlot(5, primaryKey, false)
   701  }
   702  func IndexAddUniqueKey(builder *flatbuffers.Builder, uniqueKey bool) {
   703  	builder.PrependBoolSlot(6, uniqueKey, false)
   704  }
   705  func IndexAddSystemDefined(builder *flatbuffers.Builder, systemDefined bool) {
   706  	builder.PrependBoolSlot(7, systemDefined, false)
   707  }
   708  func IndexAddPrefixLengths(builder *flatbuffers.Builder, prefixLengths flatbuffers.UOffsetT) {
   709  	builder.PrependUOffsetTSlot(8, flatbuffers.UOffsetT(prefixLengths), 0)
   710  }
   711  func IndexStartPrefixLengthsVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   712  	return builder.StartVector(2, numElems, 2)
   713  }
   714  func IndexAddSpatialKey(builder *flatbuffers.Builder, spatialKey bool) {
   715  	builder.PrependBoolSlot(9, spatialKey, false)
   716  }
   717  func IndexAddFulltextKey(builder *flatbuffers.Builder, fulltextKey bool) {
   718  	builder.PrependBoolSlot(10, fulltextKey, false)
   719  }
   720  func IndexAddFulltextInfo(builder *flatbuffers.Builder, fulltextInfo flatbuffers.UOffsetT) {
   721  	builder.PrependUOffsetTSlot(11, flatbuffers.UOffsetT(fulltextInfo), 0)
   722  }
   723  func IndexEnd(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
   724  	return builder.EndObject()
   725  }
   726  
   727  type FulltextInfo struct {
   728  	_tab flatbuffers.Table
   729  }
   730  
   731  func InitFulltextInfoRoot(o *FulltextInfo, buf []byte, offset flatbuffers.UOffsetT) error {
   732  	n := flatbuffers.GetUOffsetT(buf[offset:])
   733  	return o.Init(buf, n+offset)
   734  }
   735  
   736  func TryGetRootAsFulltextInfo(buf []byte, offset flatbuffers.UOffsetT) (*FulltextInfo, error) {
   737  	x := &FulltextInfo{}
   738  	return x, InitFulltextInfoRoot(x, buf, offset)
   739  }
   740  
   741  func TryGetSizePrefixedRootAsFulltextInfo(buf []byte, offset flatbuffers.UOffsetT) (*FulltextInfo, error) {
   742  	x := &FulltextInfo{}
   743  	return x, InitFulltextInfoRoot(x, buf, offset+flatbuffers.SizeUint32)
   744  }
   745  
   746  func (rcv *FulltextInfo) Init(buf []byte, i flatbuffers.UOffsetT) error {
   747  	rcv._tab.Bytes = buf
   748  	rcv._tab.Pos = i
   749  	if FulltextInfoNumFields < rcv.Table().NumFields() {
   750  		return flatbuffers.ErrTableHasUnknownFields
   751  	}
   752  	return nil
   753  }
   754  
   755  func (rcv *FulltextInfo) Table() flatbuffers.Table {
   756  	return rcv._tab
   757  }
   758  
   759  func (rcv *FulltextInfo) ConfigTable() []byte {
   760  	o := flatbuffers.UOffsetT(rcv._tab.Offset(4))
   761  	if o != 0 {
   762  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   763  	}
   764  	return nil
   765  }
   766  
   767  func (rcv *FulltextInfo) PositionTable() []byte {
   768  	o := flatbuffers.UOffsetT(rcv._tab.Offset(6))
   769  	if o != 0 {
   770  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   771  	}
   772  	return nil
   773  }
   774  
   775  func (rcv *FulltextInfo) DocCountTable() []byte {
   776  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   777  	if o != 0 {
   778  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   779  	}
   780  	return nil
   781  }
   782  
   783  func (rcv *FulltextInfo) GlobalCountTable() []byte {
   784  	o := flatbuffers.UOffsetT(rcv._tab.Offset(10))
   785  	if o != 0 {
   786  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   787  	}
   788  	return nil
   789  }
   790  
   791  func (rcv *FulltextInfo) RowCountTable() []byte {
   792  	o := flatbuffers.UOffsetT(rcv._tab.Offset(12))
   793  	if o != 0 {
   794  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   795  	}
   796  	return nil
   797  }
   798  
   799  func (rcv *FulltextInfo) KeyType() byte {
   800  	o := flatbuffers.UOffsetT(rcv._tab.Offset(14))
   801  	if o != 0 {
   802  		return rcv._tab.GetByte(o + rcv._tab.Pos)
   803  	}
   804  	return 0
   805  }
   806  
   807  func (rcv *FulltextInfo) MutateKeyType(n byte) bool {
   808  	return rcv._tab.MutateByteSlot(14, n)
   809  }
   810  
   811  func (rcv *FulltextInfo) KeyName() []byte {
   812  	o := flatbuffers.UOffsetT(rcv._tab.Offset(16))
   813  	if o != 0 {
   814  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   815  	}
   816  	return nil
   817  }
   818  
   819  func (rcv *FulltextInfo) KeyPositions(j int) uint16 {
   820  	o := flatbuffers.UOffsetT(rcv._tab.Offset(18))
   821  	if o != 0 {
   822  		a := rcv._tab.Vector(o)
   823  		return rcv._tab.GetUint16(a + flatbuffers.UOffsetT(j*2))
   824  	}
   825  	return 0
   826  }
   827  
   828  func (rcv *FulltextInfo) KeyPositionsLength() int {
   829  	o := flatbuffers.UOffsetT(rcv._tab.Offset(18))
   830  	if o != 0 {
   831  		return rcv._tab.VectorLen(o)
   832  	}
   833  	return 0
   834  }
   835  
   836  func (rcv *FulltextInfo) MutateKeyPositions(j int, n uint16) bool {
   837  	o := flatbuffers.UOffsetT(rcv._tab.Offset(18))
   838  	if o != 0 {
   839  		a := rcv._tab.Vector(o)
   840  		return rcv._tab.MutateUint16(a+flatbuffers.UOffsetT(j*2), n)
   841  	}
   842  	return false
   843  }
   844  
   845  const FulltextInfoNumFields = 8
   846  
   847  func FulltextInfoStart(builder *flatbuffers.Builder) {
   848  	builder.StartObject(FulltextInfoNumFields)
   849  }
   850  func FulltextInfoAddConfigTable(builder *flatbuffers.Builder, configTable flatbuffers.UOffsetT) {
   851  	builder.PrependUOffsetTSlot(0, flatbuffers.UOffsetT(configTable), 0)
   852  }
   853  func FulltextInfoAddPositionTable(builder *flatbuffers.Builder, positionTable flatbuffers.UOffsetT) {
   854  	builder.PrependUOffsetTSlot(1, flatbuffers.UOffsetT(positionTable), 0)
   855  }
   856  func FulltextInfoAddDocCountTable(builder *flatbuffers.Builder, docCountTable flatbuffers.UOffsetT) {
   857  	builder.PrependUOffsetTSlot(2, flatbuffers.UOffsetT(docCountTable), 0)
   858  }
   859  func FulltextInfoAddGlobalCountTable(builder *flatbuffers.Builder, globalCountTable flatbuffers.UOffsetT) {
   860  	builder.PrependUOffsetTSlot(3, flatbuffers.UOffsetT(globalCountTable), 0)
   861  }
   862  func FulltextInfoAddRowCountTable(builder *flatbuffers.Builder, rowCountTable flatbuffers.UOffsetT) {
   863  	builder.PrependUOffsetTSlot(4, flatbuffers.UOffsetT(rowCountTable), 0)
   864  }
   865  func FulltextInfoAddKeyType(builder *flatbuffers.Builder, keyType byte) {
   866  	builder.PrependByteSlot(5, keyType, 0)
   867  }
   868  func FulltextInfoAddKeyName(builder *flatbuffers.Builder, keyName flatbuffers.UOffsetT) {
   869  	builder.PrependUOffsetTSlot(6, flatbuffers.UOffsetT(keyName), 0)
   870  }
   871  func FulltextInfoAddKeyPositions(builder *flatbuffers.Builder, keyPositions flatbuffers.UOffsetT) {
   872  	builder.PrependUOffsetTSlot(7, flatbuffers.UOffsetT(keyPositions), 0)
   873  }
   874  func FulltextInfoStartKeyPositionsVector(builder *flatbuffers.Builder, numElems int) flatbuffers.UOffsetT {
   875  	return builder.StartVector(2, numElems, 2)
   876  }
   877  func FulltextInfoEnd(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
   878  	return builder.EndObject()
   879  }
   880  
   881  type CheckConstraint struct {
   882  	_tab flatbuffers.Table
   883  }
   884  
   885  func InitCheckConstraintRoot(o *CheckConstraint, buf []byte, offset flatbuffers.UOffsetT) error {
   886  	n := flatbuffers.GetUOffsetT(buf[offset:])
   887  	return o.Init(buf, n+offset)
   888  }
   889  
   890  func TryGetRootAsCheckConstraint(buf []byte, offset flatbuffers.UOffsetT) (*CheckConstraint, error) {
   891  	x := &CheckConstraint{}
   892  	return x, InitCheckConstraintRoot(x, buf, offset)
   893  }
   894  
   895  func TryGetSizePrefixedRootAsCheckConstraint(buf []byte, offset flatbuffers.UOffsetT) (*CheckConstraint, error) {
   896  	x := &CheckConstraint{}
   897  	return x, InitCheckConstraintRoot(x, buf, offset+flatbuffers.SizeUint32)
   898  }
   899  
   900  func (rcv *CheckConstraint) Init(buf []byte, i flatbuffers.UOffsetT) error {
   901  	rcv._tab.Bytes = buf
   902  	rcv._tab.Pos = i
   903  	if CheckConstraintNumFields < rcv.Table().NumFields() {
   904  		return flatbuffers.ErrTableHasUnknownFields
   905  	}
   906  	return nil
   907  }
   908  
   909  func (rcv *CheckConstraint) Table() flatbuffers.Table {
   910  	return rcv._tab
   911  }
   912  
   913  func (rcv *CheckConstraint) Name() []byte {
   914  	o := flatbuffers.UOffsetT(rcv._tab.Offset(4))
   915  	if o != 0 {
   916  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   917  	}
   918  	return nil
   919  }
   920  
   921  func (rcv *CheckConstraint) Expression() []byte {
   922  	o := flatbuffers.UOffsetT(rcv._tab.Offset(6))
   923  	if o != 0 {
   924  		return rcv._tab.ByteVector(o + rcv._tab.Pos)
   925  	}
   926  	return nil
   927  }
   928  
   929  func (rcv *CheckConstraint) Enforced() bool {
   930  	o := flatbuffers.UOffsetT(rcv._tab.Offset(8))
   931  	if o != 0 {
   932  		return rcv._tab.GetBool(o + rcv._tab.Pos)
   933  	}
   934  	return false
   935  }
   936  
   937  func (rcv *CheckConstraint) MutateEnforced(n bool) bool {
   938  	return rcv._tab.MutateBoolSlot(8, n)
   939  }
   940  
   941  const CheckConstraintNumFields = 3
   942  
   943  func CheckConstraintStart(builder *flatbuffers.Builder) {
   944  	builder.StartObject(CheckConstraintNumFields)
   945  }
   946  func CheckConstraintAddName(builder *flatbuffers.Builder, name flatbuffers.UOffsetT) {
   947  	builder.PrependUOffsetTSlot(0, flatbuffers.UOffsetT(name), 0)
   948  }
   949  func CheckConstraintAddExpression(builder *flatbuffers.Builder, expression flatbuffers.UOffsetT) {
   950  	builder.PrependUOffsetTSlot(1, flatbuffers.UOffsetT(expression), 0)
   951  }
   952  func CheckConstraintAddEnforced(builder *flatbuffers.Builder, enforced bool) {
   953  	builder.PrependBoolSlot(2, enforced, false)
   954  }
   955  func CheckConstraintEnd(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
   956  	return builder.EndObject()
   957  }