vitess.io/vitess@v0.16.2/go/vt/sqlparser/cached_size.go (about)

     1  /*
     2  Copyright 2021 The Vitess Authors.
     3  
     4  Licensed under the Apache License, Version 2.0 (the "License");
     5  you may not use this file except in compliance with the License.
     6  You may obtain a copy of the License at
     7  
     8      http://www.apache.org/licenses/LICENSE-2.0
     9  
    10  Unless required by applicable law or agreed to in writing, software
    11  distributed under the License is distributed on an "AS IS" BASIS,
    12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13  See the License for the specific language governing permissions and
    14  limitations under the License.
    15  */
    16  // Code generated by Sizegen. DO NOT EDIT.
    17  
    18  package sqlparser
    19  
    20  import (
    21  	"math"
    22  	"reflect"
    23  	"unsafe"
    24  
    25  	hack "vitess.io/vitess/go/hack"
    26  )
    27  
    28  type cachedObject interface {
    29  	CachedSize(alloc bool) int64
    30  }
    31  
    32  func (cached *AddColumns) CachedSize(alloc bool) int64 {
    33  	if cached == nil {
    34  		return int64(0)
    35  	}
    36  	size := int64(0)
    37  	if alloc {
    38  		size += int64(48)
    39  	}
    40  	// field Columns []*vitess.io/vitess/go/vt/sqlparser.ColumnDefinition
    41  	{
    42  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(8))
    43  		for _, elem := range cached.Columns {
    44  			size += elem.CachedSize(true)
    45  		}
    46  	}
    47  	// field After *vitess.io/vitess/go/vt/sqlparser.ColName
    48  	size += cached.After.CachedSize(true)
    49  	return size
    50  }
    51  func (cached *AddConstraintDefinition) CachedSize(alloc bool) int64 {
    52  	if cached == nil {
    53  		return int64(0)
    54  	}
    55  	size := int64(0)
    56  	if alloc {
    57  		size += int64(8)
    58  	}
    59  	// field ConstraintDefinition *vitess.io/vitess/go/vt/sqlparser.ConstraintDefinition
    60  	size += cached.ConstraintDefinition.CachedSize(true)
    61  	return size
    62  }
    63  func (cached *AddIndexDefinition) CachedSize(alloc bool) int64 {
    64  	if cached == nil {
    65  		return int64(0)
    66  	}
    67  	size := int64(0)
    68  	if alloc {
    69  		size += int64(8)
    70  	}
    71  	// field IndexDefinition *vitess.io/vitess/go/vt/sqlparser.IndexDefinition
    72  	size += cached.IndexDefinition.CachedSize(true)
    73  	return size
    74  }
    75  func (cached *AliasedExpr) CachedSize(alloc bool) int64 {
    76  	if cached == nil {
    77  		return int64(0)
    78  	}
    79  	size := int64(0)
    80  	if alloc {
    81  		size += int64(48)
    82  	}
    83  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
    84  	if cc, ok := cached.Expr.(cachedObject); ok {
    85  		size += cc.CachedSize(true)
    86  	}
    87  	// field As vitess.io/vitess/go/vt/sqlparser.IdentifierCI
    88  	size += cached.As.CachedSize(false)
    89  	return size
    90  }
    91  func (cached *AliasedTableExpr) CachedSize(alloc bool) int64 {
    92  	if cached == nil {
    93  		return int64(0)
    94  	}
    95  	size := int64(0)
    96  	if alloc {
    97  		size += int64(112)
    98  	}
    99  	// field Expr vitess.io/vitess/go/vt/sqlparser.SimpleTableExpr
   100  	if cc, ok := cached.Expr.(cachedObject); ok {
   101  		size += cc.CachedSize(true)
   102  	}
   103  	// field Partitions vitess.io/vitess/go/vt/sqlparser.Partitions
   104  	{
   105  		size += hack.RuntimeAllocSize(int64(cap(cached.Partitions)) * int64(32))
   106  		for _, elem := range cached.Partitions {
   107  			size += elem.CachedSize(false)
   108  		}
   109  	}
   110  	// field As vitess.io/vitess/go/vt/sqlparser.IdentifierCS
   111  	size += cached.As.CachedSize(false)
   112  	// field Hints vitess.io/vitess/go/vt/sqlparser.IndexHints
   113  	{
   114  		size += hack.RuntimeAllocSize(int64(cap(cached.Hints)) * int64(8))
   115  		for _, elem := range cached.Hints {
   116  			size += elem.CachedSize(true)
   117  		}
   118  	}
   119  	// field Columns vitess.io/vitess/go/vt/sqlparser.Columns
   120  	{
   121  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(32))
   122  		for _, elem := range cached.Columns {
   123  			size += elem.CachedSize(false)
   124  		}
   125  	}
   126  	return size
   127  }
   128  func (cached *AlterCharset) CachedSize(alloc bool) int64 {
   129  	if cached == nil {
   130  		return int64(0)
   131  	}
   132  	size := int64(0)
   133  	if alloc {
   134  		size += int64(32)
   135  	}
   136  	// field CharacterSet string
   137  	size += hack.RuntimeAllocSize(int64(len(cached.CharacterSet)))
   138  	// field Collate string
   139  	size += hack.RuntimeAllocSize(int64(len(cached.Collate)))
   140  	return size
   141  }
   142  func (cached *AlterCheck) CachedSize(alloc bool) int64 {
   143  	if cached == nil {
   144  		return int64(0)
   145  	}
   146  	size := int64(0)
   147  	if alloc {
   148  		size += int64(48)
   149  	}
   150  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   151  	size += cached.Name.CachedSize(false)
   152  	return size
   153  }
   154  func (cached *AlterColumn) CachedSize(alloc bool) int64 {
   155  	if cached == nil {
   156  		return int64(0)
   157  	}
   158  	size := int64(0)
   159  	if alloc {
   160  		size += int64(48)
   161  	}
   162  	// field Column *vitess.io/vitess/go/vt/sqlparser.ColName
   163  	size += cached.Column.CachedSize(true)
   164  	// field DefaultVal vitess.io/vitess/go/vt/sqlparser.Expr
   165  	if cc, ok := cached.DefaultVal.(cachedObject); ok {
   166  		size += cc.CachedSize(true)
   167  	}
   168  	// field Invisible *bool
   169  	size += hack.RuntimeAllocSize(int64(1))
   170  	return size
   171  }
   172  func (cached *AlterDatabase) CachedSize(alloc bool) int64 {
   173  	if cached == nil {
   174  		return int64(0)
   175  	}
   176  	size := int64(0)
   177  	if alloc {
   178  		size += int64(64)
   179  	}
   180  	// field DBName vitess.io/vitess/go/vt/sqlparser.IdentifierCS
   181  	size += cached.DBName.CachedSize(false)
   182  	// field AlterOptions []vitess.io/vitess/go/vt/sqlparser.DatabaseOption
   183  	{
   184  		size += hack.RuntimeAllocSize(int64(cap(cached.AlterOptions)) * int64(24))
   185  		for _, elem := range cached.AlterOptions {
   186  			size += elem.CachedSize(false)
   187  		}
   188  	}
   189  	return size
   190  }
   191  func (cached *AlterIndex) CachedSize(alloc bool) int64 {
   192  	if cached == nil {
   193  		return int64(0)
   194  	}
   195  	size := int64(0)
   196  	if alloc {
   197  		size += int64(48)
   198  	}
   199  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   200  	size += cached.Name.CachedSize(false)
   201  	return size
   202  }
   203  func (cached *AlterMigration) CachedSize(alloc bool) int64 {
   204  	if cached == nil {
   205  		return int64(0)
   206  	}
   207  	size := int64(0)
   208  	if alloc {
   209  		size += int64(64)
   210  	}
   211  	// field UUID string
   212  	size += hack.RuntimeAllocSize(int64(len(cached.UUID)))
   213  	// field Expire string
   214  	size += hack.RuntimeAllocSize(int64(len(cached.Expire)))
   215  	// field Ratio *vitess.io/vitess/go/vt/sqlparser.Literal
   216  	size += cached.Ratio.CachedSize(true)
   217  	// field Shards string
   218  	size += hack.RuntimeAllocSize(int64(len(cached.Shards)))
   219  	return size
   220  }
   221  func (cached *AlterTable) CachedSize(alloc bool) int64 {
   222  	if cached == nil {
   223  		return int64(0)
   224  	}
   225  	size := int64(0)
   226  	if alloc {
   227  		size += int64(96)
   228  	}
   229  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
   230  	size += cached.Table.CachedSize(false)
   231  	// field AlterOptions []vitess.io/vitess/go/vt/sqlparser.AlterOption
   232  	{
   233  		size += hack.RuntimeAllocSize(int64(cap(cached.AlterOptions)) * int64(16))
   234  		for _, elem := range cached.AlterOptions {
   235  			if cc, ok := elem.(cachedObject); ok {
   236  				size += cc.CachedSize(true)
   237  			}
   238  		}
   239  	}
   240  	// field PartitionSpec *vitess.io/vitess/go/vt/sqlparser.PartitionSpec
   241  	size += cached.PartitionSpec.CachedSize(true)
   242  	// field PartitionOption *vitess.io/vitess/go/vt/sqlparser.PartitionOption
   243  	size += cached.PartitionOption.CachedSize(true)
   244  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
   245  	size += cached.Comments.CachedSize(true)
   246  	return size
   247  }
   248  func (cached *AlterView) CachedSize(alloc bool) int64 {
   249  	if cached == nil {
   250  		return int64(0)
   251  	}
   252  	size := int64(0)
   253  	if alloc {
   254  		size += int64(144)
   255  	}
   256  	// field ViewName vitess.io/vitess/go/vt/sqlparser.TableName
   257  	size += cached.ViewName.CachedSize(false)
   258  	// field Algorithm string
   259  	size += hack.RuntimeAllocSize(int64(len(cached.Algorithm)))
   260  	// field Definer *vitess.io/vitess/go/vt/sqlparser.Definer
   261  	size += cached.Definer.CachedSize(true)
   262  	// field Security string
   263  	size += hack.RuntimeAllocSize(int64(len(cached.Security)))
   264  	// field Columns vitess.io/vitess/go/vt/sqlparser.Columns
   265  	{
   266  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(32))
   267  		for _, elem := range cached.Columns {
   268  			size += elem.CachedSize(false)
   269  		}
   270  	}
   271  	// field Select vitess.io/vitess/go/vt/sqlparser.SelectStatement
   272  	if cc, ok := cached.Select.(cachedObject); ok {
   273  		size += cc.CachedSize(true)
   274  	}
   275  	// field CheckOption string
   276  	size += hack.RuntimeAllocSize(int64(len(cached.CheckOption)))
   277  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
   278  	size += cached.Comments.CachedSize(true)
   279  	return size
   280  }
   281  func (cached *AlterVschema) CachedSize(alloc bool) int64 {
   282  	if cached == nil {
   283  		return int64(0)
   284  	}
   285  	size := int64(0)
   286  	if alloc {
   287  		size += int64(80)
   288  	}
   289  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
   290  	size += cached.Table.CachedSize(false)
   291  	// field VindexSpec *vitess.io/vitess/go/vt/sqlparser.VindexSpec
   292  	size += cached.VindexSpec.CachedSize(true)
   293  	// field VindexCols []vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   294  	{
   295  		size += hack.RuntimeAllocSize(int64(cap(cached.VindexCols)) * int64(32))
   296  		for _, elem := range cached.VindexCols {
   297  			size += elem.CachedSize(false)
   298  		}
   299  	}
   300  	// field AutoIncSpec *vitess.io/vitess/go/vt/sqlparser.AutoIncSpec
   301  	size += cached.AutoIncSpec.CachedSize(true)
   302  	return size
   303  }
   304  func (cached *AndExpr) CachedSize(alloc bool) int64 {
   305  	if cached == nil {
   306  		return int64(0)
   307  	}
   308  	size := int64(0)
   309  	if alloc {
   310  		size += int64(32)
   311  	}
   312  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
   313  	if cc, ok := cached.Left.(cachedObject); ok {
   314  		size += cc.CachedSize(true)
   315  	}
   316  	// field Right vitess.io/vitess/go/vt/sqlparser.Expr
   317  	if cc, ok := cached.Right.(cachedObject); ok {
   318  		size += cc.CachedSize(true)
   319  	}
   320  	return size
   321  }
   322  func (cached *ArgumentLessWindowExpr) CachedSize(alloc bool) int64 {
   323  	if cached == nil {
   324  		return int64(0)
   325  	}
   326  	size := int64(0)
   327  	if alloc {
   328  		size += int64(16)
   329  	}
   330  	// field OverClause *vitess.io/vitess/go/vt/sqlparser.OverClause
   331  	size += cached.OverClause.CachedSize(true)
   332  	return size
   333  }
   334  func (cached *AutoIncSpec) CachedSize(alloc bool) int64 {
   335  	if cached == nil {
   336  		return int64(0)
   337  	}
   338  	size := int64(0)
   339  	if alloc {
   340  		size += int64(64)
   341  	}
   342  	// field Column vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   343  	size += cached.Column.CachedSize(false)
   344  	// field Sequence vitess.io/vitess/go/vt/sqlparser.TableName
   345  	size += cached.Sequence.CachedSize(false)
   346  	return size
   347  }
   348  func (cached *Avg) CachedSize(alloc bool) int64 {
   349  	if cached == nil {
   350  		return int64(0)
   351  	}
   352  	size := int64(0)
   353  	if alloc {
   354  		size += int64(24)
   355  	}
   356  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
   357  	if cc, ok := cached.Arg.(cachedObject); ok {
   358  		size += cc.CachedSize(true)
   359  	}
   360  	return size
   361  }
   362  func (cached *Begin) CachedSize(alloc bool) int64 {
   363  	if cached == nil {
   364  		return int64(0)
   365  	}
   366  	size := int64(0)
   367  	if alloc {
   368  		size += int64(24)
   369  	}
   370  	// field TxAccessModes []vitess.io/vitess/go/vt/sqlparser.TxAccessMode
   371  	{
   372  		size += hack.RuntimeAllocSize(int64(cap(cached.TxAccessModes)))
   373  	}
   374  	return size
   375  }
   376  func (cached *BetweenExpr) CachedSize(alloc bool) int64 {
   377  	if cached == nil {
   378  		return int64(0)
   379  	}
   380  	size := int64(0)
   381  	if alloc {
   382  		size += int64(64)
   383  	}
   384  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
   385  	if cc, ok := cached.Left.(cachedObject); ok {
   386  		size += cc.CachedSize(true)
   387  	}
   388  	// field From vitess.io/vitess/go/vt/sqlparser.Expr
   389  	if cc, ok := cached.From.(cachedObject); ok {
   390  		size += cc.CachedSize(true)
   391  	}
   392  	// field To vitess.io/vitess/go/vt/sqlparser.Expr
   393  	if cc, ok := cached.To.(cachedObject); ok {
   394  		size += cc.CachedSize(true)
   395  	}
   396  	return size
   397  }
   398  func (cached *BinaryExpr) CachedSize(alloc bool) int64 {
   399  	if cached == nil {
   400  		return int64(0)
   401  	}
   402  	size := int64(0)
   403  	if alloc {
   404  		size += int64(48)
   405  	}
   406  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
   407  	if cc, ok := cached.Left.(cachedObject); ok {
   408  		size += cc.CachedSize(true)
   409  	}
   410  	// field Right vitess.io/vitess/go/vt/sqlparser.Expr
   411  	if cc, ok := cached.Right.(cachedObject); ok {
   412  		size += cc.CachedSize(true)
   413  	}
   414  	return size
   415  }
   416  func (cached *BindVarNeeds) CachedSize(alloc bool) int64 {
   417  	if cached == nil {
   418  		return int64(0)
   419  	}
   420  	size := int64(0)
   421  	if alloc {
   422  		size += int64(80)
   423  	}
   424  	// field NeedFunctionResult []string
   425  	{
   426  		size += hack.RuntimeAllocSize(int64(cap(cached.NeedFunctionResult)) * int64(16))
   427  		for _, elem := range cached.NeedFunctionResult {
   428  			size += hack.RuntimeAllocSize(int64(len(elem)))
   429  		}
   430  	}
   431  	// field NeedSystemVariable []string
   432  	{
   433  		size += hack.RuntimeAllocSize(int64(cap(cached.NeedSystemVariable)) * int64(16))
   434  		for _, elem := range cached.NeedSystemVariable {
   435  			size += hack.RuntimeAllocSize(int64(len(elem)))
   436  		}
   437  	}
   438  	// field NeedUserDefinedVariables []string
   439  	{
   440  		size += hack.RuntimeAllocSize(int64(cap(cached.NeedUserDefinedVariables)) * int64(16))
   441  		for _, elem := range cached.NeedUserDefinedVariables {
   442  			size += hack.RuntimeAllocSize(int64(len(elem)))
   443  		}
   444  	}
   445  	return size
   446  }
   447  func (cached *BitAnd) CachedSize(alloc bool) int64 {
   448  	if cached == nil {
   449  		return int64(0)
   450  	}
   451  	size := int64(0)
   452  	if alloc {
   453  		size += int64(16)
   454  	}
   455  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
   456  	if cc, ok := cached.Arg.(cachedObject); ok {
   457  		size += cc.CachedSize(true)
   458  	}
   459  	return size
   460  }
   461  func (cached *BitOr) CachedSize(alloc bool) int64 {
   462  	if cached == nil {
   463  		return int64(0)
   464  	}
   465  	size := int64(0)
   466  	if alloc {
   467  		size += int64(16)
   468  	}
   469  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
   470  	if cc, ok := cached.Arg.(cachedObject); ok {
   471  		size += cc.CachedSize(true)
   472  	}
   473  	return size
   474  }
   475  func (cached *BitXor) CachedSize(alloc bool) int64 {
   476  	if cached == nil {
   477  		return int64(0)
   478  	}
   479  	size := int64(0)
   480  	if alloc {
   481  		size += int64(16)
   482  	}
   483  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
   484  	if cc, ok := cached.Arg.(cachedObject); ok {
   485  		size += cc.CachedSize(true)
   486  	}
   487  	return size
   488  }
   489  func (cached *CallProc) CachedSize(alloc bool) int64 {
   490  	if cached == nil {
   491  		return int64(0)
   492  	}
   493  	size := int64(0)
   494  	if alloc {
   495  		size += int64(64)
   496  	}
   497  	// field Name vitess.io/vitess/go/vt/sqlparser.TableName
   498  	size += cached.Name.CachedSize(false)
   499  	// field Params vitess.io/vitess/go/vt/sqlparser.Exprs
   500  	{
   501  		size += hack.RuntimeAllocSize(int64(cap(cached.Params)) * int64(16))
   502  		for _, elem := range cached.Params {
   503  			if cc, ok := elem.(cachedObject); ok {
   504  				size += cc.CachedSize(true)
   505  			}
   506  		}
   507  	}
   508  	return size
   509  }
   510  func (cached *CaseExpr) CachedSize(alloc bool) int64 {
   511  	if cached == nil {
   512  		return int64(0)
   513  	}
   514  	size := int64(0)
   515  	if alloc {
   516  		size += int64(64)
   517  	}
   518  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
   519  	if cc, ok := cached.Expr.(cachedObject); ok {
   520  		size += cc.CachedSize(true)
   521  	}
   522  	// field Whens []*vitess.io/vitess/go/vt/sqlparser.When
   523  	{
   524  		size += hack.RuntimeAllocSize(int64(cap(cached.Whens)) * int64(8))
   525  		for _, elem := range cached.Whens {
   526  			size += elem.CachedSize(true)
   527  		}
   528  	}
   529  	// field Else vitess.io/vitess/go/vt/sqlparser.Expr
   530  	if cc, ok := cached.Else.(cachedObject); ok {
   531  		size += cc.CachedSize(true)
   532  	}
   533  	return size
   534  }
   535  func (cached *CastExpr) CachedSize(alloc bool) int64 {
   536  	if cached == nil {
   537  		return int64(0)
   538  	}
   539  	size := int64(0)
   540  	if alloc {
   541  		size += int64(32)
   542  	}
   543  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
   544  	if cc, ok := cached.Expr.(cachedObject); ok {
   545  		size += cc.CachedSize(true)
   546  	}
   547  	// field Type *vitess.io/vitess/go/vt/sqlparser.ConvertType
   548  	size += cached.Type.CachedSize(true)
   549  	return size
   550  }
   551  func (cached *ChangeColumn) CachedSize(alloc bool) int64 {
   552  	if cached == nil {
   553  		return int64(0)
   554  	}
   555  	size := int64(0)
   556  	if alloc {
   557  		size += int64(32)
   558  	}
   559  	// field OldColumn *vitess.io/vitess/go/vt/sqlparser.ColName
   560  	size += cached.OldColumn.CachedSize(true)
   561  	// field NewColDefinition *vitess.io/vitess/go/vt/sqlparser.ColumnDefinition
   562  	size += cached.NewColDefinition.CachedSize(true)
   563  	// field After *vitess.io/vitess/go/vt/sqlparser.ColName
   564  	size += cached.After.CachedSize(true)
   565  	return size
   566  }
   567  func (cached *CharExpr) CachedSize(alloc bool) int64 {
   568  	if cached == nil {
   569  		return int64(0)
   570  	}
   571  	size := int64(0)
   572  	if alloc {
   573  		size += int64(48)
   574  	}
   575  	// field Exprs vitess.io/vitess/go/vt/sqlparser.Exprs
   576  	{
   577  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(16))
   578  		for _, elem := range cached.Exprs {
   579  			if cc, ok := elem.(cachedObject); ok {
   580  				size += cc.CachedSize(true)
   581  			}
   582  		}
   583  	}
   584  	// field Charset string
   585  	size += hack.RuntimeAllocSize(int64(len(cached.Charset)))
   586  	return size
   587  }
   588  func (cached *CheckConstraintDefinition) CachedSize(alloc bool) int64 {
   589  	if cached == nil {
   590  		return int64(0)
   591  	}
   592  	size := int64(0)
   593  	if alloc {
   594  		size += int64(24)
   595  	}
   596  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
   597  	if cc, ok := cached.Expr.(cachedObject); ok {
   598  		size += cc.CachedSize(true)
   599  	}
   600  	return size
   601  }
   602  func (cached *ColName) CachedSize(alloc bool) int64 {
   603  	if cached == nil {
   604  		return int64(0)
   605  	}
   606  	size := int64(0)
   607  	if alloc {
   608  		size += int64(80)
   609  	}
   610  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   611  	size += cached.Name.CachedSize(false)
   612  	// field Qualifier vitess.io/vitess/go/vt/sqlparser.TableName
   613  	size += cached.Qualifier.CachedSize(false)
   614  	return size
   615  }
   616  func (cached *CollateExpr) CachedSize(alloc bool) int64 {
   617  	if cached == nil {
   618  		return int64(0)
   619  	}
   620  	size := int64(0)
   621  	if alloc {
   622  		size += int64(32)
   623  	}
   624  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
   625  	if cc, ok := cached.Expr.(cachedObject); ok {
   626  		size += cc.CachedSize(true)
   627  	}
   628  	// field Collation string
   629  	size += hack.RuntimeAllocSize(int64(len(cached.Collation)))
   630  	return size
   631  }
   632  func (cached *ColumnCharset) CachedSize(alloc bool) int64 {
   633  	if cached == nil {
   634  		return int64(0)
   635  	}
   636  	size := int64(0)
   637  	if alloc {
   638  		size += int64(24)
   639  	}
   640  	// field Name string
   641  	size += hack.RuntimeAllocSize(int64(len(cached.Name)))
   642  	return size
   643  }
   644  func (cached *ColumnDefinition) CachedSize(alloc bool) int64 {
   645  	if cached == nil {
   646  		return int64(0)
   647  	}
   648  	size := int64(0)
   649  	if alloc {
   650  		size += int64(48)
   651  	}
   652  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   653  	size += cached.Name.CachedSize(false)
   654  	// field Type *vitess.io/vitess/go/vt/sqlparser.ColumnType
   655  	size += cached.Type.CachedSize(true)
   656  	return size
   657  }
   658  func (cached *ColumnType) CachedSize(alloc bool) int64 {
   659  	if cached == nil {
   660  		return int64(0)
   661  	}
   662  	size := int64(0)
   663  	if alloc {
   664  		size += int64(96)
   665  	}
   666  	// field Type string
   667  	size += hack.RuntimeAllocSize(int64(len(cached.Type)))
   668  	// field Options *vitess.io/vitess/go/vt/sqlparser.ColumnTypeOptions
   669  	size += cached.Options.CachedSize(true)
   670  	// field Length *vitess.io/vitess/go/vt/sqlparser.Literal
   671  	size += cached.Length.CachedSize(true)
   672  	// field Scale *vitess.io/vitess/go/vt/sqlparser.Literal
   673  	size += cached.Scale.CachedSize(true)
   674  	// field Charset vitess.io/vitess/go/vt/sqlparser.ColumnCharset
   675  	size += cached.Charset.CachedSize(false)
   676  	// field EnumValues []string
   677  	{
   678  		size += hack.RuntimeAllocSize(int64(cap(cached.EnumValues)) * int64(16))
   679  		for _, elem := range cached.EnumValues {
   680  			size += hack.RuntimeAllocSize(int64(len(elem)))
   681  		}
   682  	}
   683  	return size
   684  }
   685  func (cached *ColumnTypeOptions) CachedSize(alloc bool) int64 {
   686  	if cached == nil {
   687  		return int64(0)
   688  	}
   689  	size := int64(0)
   690  	if alloc {
   691  		size += int64(160)
   692  	}
   693  	// field Null *bool
   694  	size += hack.RuntimeAllocSize(int64(1))
   695  	// field Default vitess.io/vitess/go/vt/sqlparser.Expr
   696  	if cc, ok := cached.Default.(cachedObject); ok {
   697  		size += cc.CachedSize(true)
   698  	}
   699  	// field OnUpdate vitess.io/vitess/go/vt/sqlparser.Expr
   700  	if cc, ok := cached.OnUpdate.(cachedObject); ok {
   701  		size += cc.CachedSize(true)
   702  	}
   703  	// field As vitess.io/vitess/go/vt/sqlparser.Expr
   704  	if cc, ok := cached.As.(cachedObject); ok {
   705  		size += cc.CachedSize(true)
   706  	}
   707  	// field Comment *vitess.io/vitess/go/vt/sqlparser.Literal
   708  	size += cached.Comment.CachedSize(true)
   709  	// field Collate string
   710  	size += hack.RuntimeAllocSize(int64(len(cached.Collate)))
   711  	// field Reference *vitess.io/vitess/go/vt/sqlparser.ReferenceDefinition
   712  	size += cached.Reference.CachedSize(true)
   713  	// field Invisible *bool
   714  	size += hack.RuntimeAllocSize(int64(1))
   715  	// field EngineAttribute *vitess.io/vitess/go/vt/sqlparser.Literal
   716  	size += cached.EngineAttribute.CachedSize(true)
   717  	// field SecondaryEngineAttribute *vitess.io/vitess/go/vt/sqlparser.Literal
   718  	size += cached.SecondaryEngineAttribute.CachedSize(true)
   719  	// field SRID *vitess.io/vitess/go/vt/sqlparser.Literal
   720  	size += cached.SRID.CachedSize(true)
   721  	return size
   722  }
   723  
   724  //go:nocheckptr
   725  func (cached *CommentDirectives) CachedSize(alloc bool) int64 {
   726  	if cached == nil {
   727  		return int64(0)
   728  	}
   729  	size := int64(0)
   730  	if alloc {
   731  		size += int64(8)
   732  	}
   733  	// field m map[string]string
   734  	if cached.m != nil {
   735  		size += int64(48)
   736  		hmap := reflect.ValueOf(cached.m)
   737  		numBuckets := int(math.Pow(2, float64((*(*uint8)(unsafe.Pointer(hmap.Pointer() + uintptr(9)))))))
   738  		numOldBuckets := (*(*uint16)(unsafe.Pointer(hmap.Pointer() + uintptr(10))))
   739  		size += hack.RuntimeAllocSize(int64(numOldBuckets * 272))
   740  		if len(cached.m) > 0 || numBuckets > 1 {
   741  			size += hack.RuntimeAllocSize(int64(numBuckets * 272))
   742  		}
   743  		for k, v := range cached.m {
   744  			size += hack.RuntimeAllocSize(int64(len(k)))
   745  			size += hack.RuntimeAllocSize(int64(len(v)))
   746  		}
   747  	}
   748  	return size
   749  }
   750  func (cached *CommentOnly) CachedSize(alloc bool) int64 {
   751  	if cached == nil {
   752  		return int64(0)
   753  	}
   754  	size := int64(0)
   755  	if alloc {
   756  		size += int64(24)
   757  	}
   758  	// field Comments []string
   759  	{
   760  		size += hack.RuntimeAllocSize(int64(cap(cached.Comments)) * int64(16))
   761  		for _, elem := range cached.Comments {
   762  			size += hack.RuntimeAllocSize(int64(len(elem)))
   763  		}
   764  	}
   765  	return size
   766  }
   767  func (cached *CommonTableExpr) CachedSize(alloc bool) int64 {
   768  	if cached == nil {
   769  		return int64(0)
   770  	}
   771  	size := int64(0)
   772  	if alloc {
   773  		size += int64(48)
   774  	}
   775  	// field ID vitess.io/vitess/go/vt/sqlparser.IdentifierCS
   776  	size += cached.ID.CachedSize(false)
   777  	// field Columns vitess.io/vitess/go/vt/sqlparser.Columns
   778  	{
   779  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(32))
   780  		for _, elem := range cached.Columns {
   781  			size += elem.CachedSize(false)
   782  		}
   783  	}
   784  	// field Subquery *vitess.io/vitess/go/vt/sqlparser.Subquery
   785  	size += cached.Subquery.CachedSize(true)
   786  	return size
   787  }
   788  func (cached *ComparisonExpr) CachedSize(alloc bool) int64 {
   789  	if cached == nil {
   790  		return int64(0)
   791  	}
   792  	size := int64(0)
   793  	if alloc {
   794  		size += int64(64)
   795  	}
   796  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
   797  	if cc, ok := cached.Left.(cachedObject); ok {
   798  		size += cc.CachedSize(true)
   799  	}
   800  	// field Right vitess.io/vitess/go/vt/sqlparser.Expr
   801  	if cc, ok := cached.Right.(cachedObject); ok {
   802  		size += cc.CachedSize(true)
   803  	}
   804  	// field Escape vitess.io/vitess/go/vt/sqlparser.Expr
   805  	if cc, ok := cached.Escape.(cachedObject); ok {
   806  		size += cc.CachedSize(true)
   807  	}
   808  	return size
   809  }
   810  func (cached *ConstraintDefinition) CachedSize(alloc bool) int64 {
   811  	if cached == nil {
   812  		return int64(0)
   813  	}
   814  	size := int64(0)
   815  	if alloc {
   816  		size += int64(48)
   817  	}
   818  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   819  	size += cached.Name.CachedSize(false)
   820  	// field Details vitess.io/vitess/go/vt/sqlparser.ConstraintInfo
   821  	if cc, ok := cached.Details.(cachedObject); ok {
   822  		size += cc.CachedSize(true)
   823  	}
   824  	return size
   825  }
   826  func (cached *ConvertExpr) CachedSize(alloc bool) int64 {
   827  	if cached == nil {
   828  		return int64(0)
   829  	}
   830  	size := int64(0)
   831  	if alloc {
   832  		size += int64(24)
   833  	}
   834  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
   835  	if cc, ok := cached.Expr.(cachedObject); ok {
   836  		size += cc.CachedSize(true)
   837  	}
   838  	// field Type *vitess.io/vitess/go/vt/sqlparser.ConvertType
   839  	size += cached.Type.CachedSize(true)
   840  	return size
   841  }
   842  func (cached *ConvertType) CachedSize(alloc bool) int64 {
   843  	if cached == nil {
   844  		return int64(0)
   845  	}
   846  	size := int64(0)
   847  	if alloc {
   848  		size += int64(64)
   849  	}
   850  	// field Type string
   851  	size += hack.RuntimeAllocSize(int64(len(cached.Type)))
   852  	// field Length *vitess.io/vitess/go/vt/sqlparser.Literal
   853  	size += cached.Length.CachedSize(true)
   854  	// field Scale *vitess.io/vitess/go/vt/sqlparser.Literal
   855  	size += cached.Scale.CachedSize(true)
   856  	// field Charset vitess.io/vitess/go/vt/sqlparser.ColumnCharset
   857  	size += cached.Charset.CachedSize(false)
   858  	return size
   859  }
   860  func (cached *ConvertUsingExpr) CachedSize(alloc bool) int64 {
   861  	if cached == nil {
   862  		return int64(0)
   863  	}
   864  	size := int64(0)
   865  	if alloc {
   866  		size += int64(32)
   867  	}
   868  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
   869  	if cc, ok := cached.Expr.(cachedObject); ok {
   870  		size += cc.CachedSize(true)
   871  	}
   872  	// field Type string
   873  	size += hack.RuntimeAllocSize(int64(len(cached.Type)))
   874  	return size
   875  }
   876  func (cached *Count) CachedSize(alloc bool) int64 {
   877  	if cached == nil {
   878  		return int64(0)
   879  	}
   880  	size := int64(0)
   881  	if alloc {
   882  		size += int64(32)
   883  	}
   884  	// field Args vitess.io/vitess/go/vt/sqlparser.Exprs
   885  	{
   886  		size += hack.RuntimeAllocSize(int64(cap(cached.Args)) * int64(16))
   887  		for _, elem := range cached.Args {
   888  			if cc, ok := elem.(cachedObject); ok {
   889  				size += cc.CachedSize(true)
   890  			}
   891  		}
   892  	}
   893  	return size
   894  }
   895  func (cached *CreateDatabase) CachedSize(alloc bool) int64 {
   896  	if cached == nil {
   897  		return int64(0)
   898  	}
   899  	size := int64(0)
   900  	if alloc {
   901  		size += int64(64)
   902  	}
   903  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
   904  	size += cached.Comments.CachedSize(true)
   905  	// field DBName vitess.io/vitess/go/vt/sqlparser.IdentifierCS
   906  	size += cached.DBName.CachedSize(false)
   907  	// field CreateOptions []vitess.io/vitess/go/vt/sqlparser.DatabaseOption
   908  	{
   909  		size += hack.RuntimeAllocSize(int64(cap(cached.CreateOptions)) * int64(24))
   910  		for _, elem := range cached.CreateOptions {
   911  			size += elem.CachedSize(false)
   912  		}
   913  	}
   914  	return size
   915  }
   916  func (cached *CreateTable) CachedSize(alloc bool) int64 {
   917  	if cached == nil {
   918  		return int64(0)
   919  	}
   920  	size := int64(0)
   921  	if alloc {
   922  		size += int64(80)
   923  	}
   924  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
   925  	size += cached.Table.CachedSize(false)
   926  	// field TableSpec *vitess.io/vitess/go/vt/sqlparser.TableSpec
   927  	size += cached.TableSpec.CachedSize(true)
   928  	// field OptLike *vitess.io/vitess/go/vt/sqlparser.OptLike
   929  	size += cached.OptLike.CachedSize(true)
   930  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
   931  	size += cached.Comments.CachedSize(true)
   932  	return size
   933  }
   934  func (cached *CreateView) CachedSize(alloc bool) int64 {
   935  	if cached == nil {
   936  		return int64(0)
   937  	}
   938  	size := int64(0)
   939  	if alloc {
   940  		size += int64(144)
   941  	}
   942  	// field ViewName vitess.io/vitess/go/vt/sqlparser.TableName
   943  	size += cached.ViewName.CachedSize(false)
   944  	// field Algorithm string
   945  	size += hack.RuntimeAllocSize(int64(len(cached.Algorithm)))
   946  	// field Definer *vitess.io/vitess/go/vt/sqlparser.Definer
   947  	size += cached.Definer.CachedSize(true)
   948  	// field Security string
   949  	size += hack.RuntimeAllocSize(int64(len(cached.Security)))
   950  	// field Columns vitess.io/vitess/go/vt/sqlparser.Columns
   951  	{
   952  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(32))
   953  		for _, elem := range cached.Columns {
   954  			size += elem.CachedSize(false)
   955  		}
   956  	}
   957  	// field Select vitess.io/vitess/go/vt/sqlparser.SelectStatement
   958  	if cc, ok := cached.Select.(cachedObject); ok {
   959  		size += cc.CachedSize(true)
   960  	}
   961  	// field CheckOption string
   962  	size += hack.RuntimeAllocSize(int64(len(cached.CheckOption)))
   963  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
   964  	size += cached.Comments.CachedSize(true)
   965  	return size
   966  }
   967  func (cached *CurTimeFuncExpr) CachedSize(alloc bool) int64 {
   968  	if cached == nil {
   969  		return int64(0)
   970  	}
   971  	size := int64(0)
   972  	if alloc {
   973  		size += int64(48)
   974  	}
   975  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
   976  	size += cached.Name.CachedSize(false)
   977  	// field Fsp vitess.io/vitess/go/vt/sqlparser.Expr
   978  	if cc, ok := cached.Fsp.(cachedObject); ok {
   979  		size += cc.CachedSize(true)
   980  	}
   981  	return size
   982  }
   983  func (cached *DatabaseOption) CachedSize(alloc bool) int64 {
   984  	if cached == nil {
   985  		return int64(0)
   986  	}
   987  	size := int64(0)
   988  	if alloc {
   989  		size += int64(24)
   990  	}
   991  	// field Value string
   992  	size += hack.RuntimeAllocSize(int64(len(cached.Value)))
   993  	return size
   994  }
   995  func (cached *DeallocateStmt) CachedSize(alloc bool) int64 {
   996  	if cached == nil {
   997  		return int64(0)
   998  	}
   999  	size := int64(0)
  1000  	if alloc {
  1001  		size += int64(48)
  1002  	}
  1003  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1004  	size += cached.Comments.CachedSize(true)
  1005  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1006  	size += cached.Name.CachedSize(false)
  1007  	return size
  1008  }
  1009  func (cached *Default) CachedSize(alloc bool) int64 {
  1010  	if cached == nil {
  1011  		return int64(0)
  1012  	}
  1013  	size := int64(0)
  1014  	if alloc {
  1015  		size += int64(16)
  1016  	}
  1017  	// field ColName string
  1018  	size += hack.RuntimeAllocSize(int64(len(cached.ColName)))
  1019  	return size
  1020  }
  1021  func (cached *Definer) CachedSize(alloc bool) int64 {
  1022  	if cached == nil {
  1023  		return int64(0)
  1024  	}
  1025  	size := int64(0)
  1026  	if alloc {
  1027  		size += int64(32)
  1028  	}
  1029  	// field Name string
  1030  	size += hack.RuntimeAllocSize(int64(len(cached.Name)))
  1031  	// field Address string
  1032  	size += hack.RuntimeAllocSize(int64(len(cached.Address)))
  1033  	return size
  1034  }
  1035  func (cached *Delete) CachedSize(alloc bool) int64 {
  1036  	if cached == nil {
  1037  		return int64(0)
  1038  	}
  1039  	size := int64(0)
  1040  	if alloc {
  1041  		size += int64(144)
  1042  	}
  1043  	// field With *vitess.io/vitess/go/vt/sqlparser.With
  1044  	size += cached.With.CachedSize(true)
  1045  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1046  	size += cached.Comments.CachedSize(true)
  1047  	// field Targets vitess.io/vitess/go/vt/sqlparser.TableNames
  1048  	{
  1049  		size += hack.RuntimeAllocSize(int64(cap(cached.Targets)) * int64(32))
  1050  		for _, elem := range cached.Targets {
  1051  			size += elem.CachedSize(false)
  1052  		}
  1053  	}
  1054  	// field TableExprs vitess.io/vitess/go/vt/sqlparser.TableExprs
  1055  	{
  1056  		size += hack.RuntimeAllocSize(int64(cap(cached.TableExprs)) * int64(16))
  1057  		for _, elem := range cached.TableExprs {
  1058  			if cc, ok := elem.(cachedObject); ok {
  1059  				size += cc.CachedSize(true)
  1060  			}
  1061  		}
  1062  	}
  1063  	// field Partitions vitess.io/vitess/go/vt/sqlparser.Partitions
  1064  	{
  1065  		size += hack.RuntimeAllocSize(int64(cap(cached.Partitions)) * int64(32))
  1066  		for _, elem := range cached.Partitions {
  1067  			size += elem.CachedSize(false)
  1068  		}
  1069  	}
  1070  	// field Where *vitess.io/vitess/go/vt/sqlparser.Where
  1071  	size += cached.Where.CachedSize(true)
  1072  	// field OrderBy vitess.io/vitess/go/vt/sqlparser.OrderBy
  1073  	{
  1074  		size += hack.RuntimeAllocSize(int64(cap(cached.OrderBy)) * int64(8))
  1075  		for _, elem := range cached.OrderBy {
  1076  			size += elem.CachedSize(true)
  1077  		}
  1078  	}
  1079  	// field Limit *vitess.io/vitess/go/vt/sqlparser.Limit
  1080  	size += cached.Limit.CachedSize(true)
  1081  	return size
  1082  }
  1083  func (cached *DerivedTable) CachedSize(alloc bool) int64 {
  1084  	if cached == nil {
  1085  		return int64(0)
  1086  	}
  1087  	size := int64(0)
  1088  	if alloc {
  1089  		size += int64(24)
  1090  	}
  1091  	// field Select vitess.io/vitess/go/vt/sqlparser.SelectStatement
  1092  	if cc, ok := cached.Select.(cachedObject); ok {
  1093  		size += cc.CachedSize(true)
  1094  	}
  1095  	return size
  1096  }
  1097  func (cached *DropColumn) CachedSize(alloc bool) int64 {
  1098  	if cached == nil {
  1099  		return int64(0)
  1100  	}
  1101  	size := int64(0)
  1102  	if alloc {
  1103  		size += int64(8)
  1104  	}
  1105  	// field Name *vitess.io/vitess/go/vt/sqlparser.ColName
  1106  	size += cached.Name.CachedSize(true)
  1107  	return size
  1108  }
  1109  func (cached *DropDatabase) CachedSize(alloc bool) int64 {
  1110  	if cached == nil {
  1111  		return int64(0)
  1112  	}
  1113  	size := int64(0)
  1114  	if alloc {
  1115  		size += int64(32)
  1116  	}
  1117  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1118  	size += cached.Comments.CachedSize(true)
  1119  	// field DBName vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  1120  	size += cached.DBName.CachedSize(false)
  1121  	return size
  1122  }
  1123  func (cached *DropKey) CachedSize(alloc bool) int64 {
  1124  	if cached == nil {
  1125  		return int64(0)
  1126  	}
  1127  	size := int64(0)
  1128  	if alloc {
  1129  		size += int64(48)
  1130  	}
  1131  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1132  	size += cached.Name.CachedSize(false)
  1133  	return size
  1134  }
  1135  func (cached *DropTable) CachedSize(alloc bool) int64 {
  1136  	if cached == nil {
  1137  		return int64(0)
  1138  	}
  1139  	size := int64(0)
  1140  	if alloc {
  1141  		size += int64(48)
  1142  	}
  1143  	// field FromTables vitess.io/vitess/go/vt/sqlparser.TableNames
  1144  	{
  1145  		size += hack.RuntimeAllocSize(int64(cap(cached.FromTables)) * int64(32))
  1146  		for _, elem := range cached.FromTables {
  1147  			size += elem.CachedSize(false)
  1148  		}
  1149  	}
  1150  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1151  	size += cached.Comments.CachedSize(true)
  1152  	return size
  1153  }
  1154  func (cached *DropView) CachedSize(alloc bool) int64 {
  1155  	if cached == nil {
  1156  		return int64(0)
  1157  	}
  1158  	size := int64(0)
  1159  	if alloc {
  1160  		size += int64(48)
  1161  	}
  1162  	// field FromTables vitess.io/vitess/go/vt/sqlparser.TableNames
  1163  	{
  1164  		size += hack.RuntimeAllocSize(int64(cap(cached.FromTables)) * int64(32))
  1165  		for _, elem := range cached.FromTables {
  1166  			size += elem.CachedSize(false)
  1167  		}
  1168  	}
  1169  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1170  	size += cached.Comments.CachedSize(true)
  1171  	return size
  1172  }
  1173  func (cached *ExecuteStmt) CachedSize(alloc bool) int64 {
  1174  	if cached == nil {
  1175  		return int64(0)
  1176  	}
  1177  	size := int64(0)
  1178  	if alloc {
  1179  		size += int64(64)
  1180  	}
  1181  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1182  	size += cached.Name.CachedSize(false)
  1183  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1184  	size += cached.Comments.CachedSize(true)
  1185  	// field Arguments []*vitess.io/vitess/go/vt/sqlparser.Variable
  1186  	{
  1187  		size += hack.RuntimeAllocSize(int64(cap(cached.Arguments)) * int64(8))
  1188  		for _, elem := range cached.Arguments {
  1189  			size += elem.CachedSize(true)
  1190  		}
  1191  	}
  1192  	return size
  1193  }
  1194  func (cached *ExistsExpr) CachedSize(alloc bool) int64 {
  1195  	if cached == nil {
  1196  		return int64(0)
  1197  	}
  1198  	size := int64(0)
  1199  	if alloc {
  1200  		size += int64(8)
  1201  	}
  1202  	// field Subquery *vitess.io/vitess/go/vt/sqlparser.Subquery
  1203  	size += cached.Subquery.CachedSize(true)
  1204  	return size
  1205  }
  1206  func (cached *ExplainStmt) CachedSize(alloc bool) int64 {
  1207  	if cached == nil {
  1208  		return int64(0)
  1209  	}
  1210  	size := int64(0)
  1211  	if alloc {
  1212  		size += int64(32)
  1213  	}
  1214  	// field Statement vitess.io/vitess/go/vt/sqlparser.Statement
  1215  	if cc, ok := cached.Statement.(cachedObject); ok {
  1216  		size += cc.CachedSize(true)
  1217  	}
  1218  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1219  	size += cached.Comments.CachedSize(true)
  1220  	return size
  1221  }
  1222  func (cached *ExplainTab) CachedSize(alloc bool) int64 {
  1223  	if cached == nil {
  1224  		return int64(0)
  1225  	}
  1226  	size := int64(0)
  1227  	if alloc {
  1228  		size += int64(48)
  1229  	}
  1230  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
  1231  	size += cached.Table.CachedSize(false)
  1232  	// field Wild string
  1233  	size += hack.RuntimeAllocSize(int64(len(cached.Wild)))
  1234  	return size
  1235  }
  1236  func (cached *ExtractFuncExpr) CachedSize(alloc bool) int64 {
  1237  	if cached == nil {
  1238  		return int64(0)
  1239  	}
  1240  	size := int64(0)
  1241  	if alloc {
  1242  		size += int64(24)
  1243  	}
  1244  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  1245  	if cc, ok := cached.Expr.(cachedObject); ok {
  1246  		size += cc.CachedSize(true)
  1247  	}
  1248  	return size
  1249  }
  1250  func (cached *ExtractValueExpr) CachedSize(alloc bool) int64 {
  1251  	if cached == nil {
  1252  		return int64(0)
  1253  	}
  1254  	size := int64(0)
  1255  	if alloc {
  1256  		size += int64(32)
  1257  	}
  1258  	// field Fragment vitess.io/vitess/go/vt/sqlparser.Expr
  1259  	if cc, ok := cached.Fragment.(cachedObject); ok {
  1260  		size += cc.CachedSize(true)
  1261  	}
  1262  	// field XPathExpr vitess.io/vitess/go/vt/sqlparser.Expr
  1263  	if cc, ok := cached.XPathExpr.(cachedObject); ok {
  1264  		size += cc.CachedSize(true)
  1265  	}
  1266  	return size
  1267  }
  1268  func (cached *ExtractedSubquery) CachedSize(alloc bool) int64 {
  1269  	if cached == nil {
  1270  		return int64(0)
  1271  	}
  1272  	size := int64(0)
  1273  	if alloc {
  1274  		size += int64(112)
  1275  	}
  1276  	// field Original vitess.io/vitess/go/vt/sqlparser.Expr
  1277  	if cc, ok := cached.Original.(cachedObject); ok {
  1278  		size += cc.CachedSize(true)
  1279  	}
  1280  	// field Subquery *vitess.io/vitess/go/vt/sqlparser.Subquery
  1281  	size += cached.Subquery.CachedSize(true)
  1282  	// field OtherSide vitess.io/vitess/go/vt/sqlparser.Expr
  1283  	if cc, ok := cached.OtherSide.(cachedObject); ok {
  1284  		size += cc.CachedSize(true)
  1285  	}
  1286  	// field hasValuesArg string
  1287  	size += hack.RuntimeAllocSize(int64(len(cached.hasValuesArg)))
  1288  	// field argName string
  1289  	size += hack.RuntimeAllocSize(int64(len(cached.argName)))
  1290  	// field alternative vitess.io/vitess/go/vt/sqlparser.Expr
  1291  	if cc, ok := cached.alternative.(cachedObject); ok {
  1292  		size += cc.CachedSize(true)
  1293  	}
  1294  	return size
  1295  }
  1296  func (cached *FirstOrLastValueExpr) CachedSize(alloc bool) int64 {
  1297  	if cached == nil {
  1298  		return int64(0)
  1299  	}
  1300  	size := int64(0)
  1301  	if alloc {
  1302  		size += int64(48)
  1303  	}
  1304  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  1305  	if cc, ok := cached.Expr.(cachedObject); ok {
  1306  		size += cc.CachedSize(true)
  1307  	}
  1308  	// field NullTreatmentClause *vitess.io/vitess/go/vt/sqlparser.NullTreatmentClause
  1309  	if cached.NullTreatmentClause != nil {
  1310  		size += hack.RuntimeAllocSize(int64(1))
  1311  	}
  1312  	// field OverClause *vitess.io/vitess/go/vt/sqlparser.OverClause
  1313  	size += cached.OverClause.CachedSize(true)
  1314  	return size
  1315  }
  1316  func (cached *Flush) CachedSize(alloc bool) int64 {
  1317  	if cached == nil {
  1318  		return int64(0)
  1319  	}
  1320  	size := int64(0)
  1321  	if alloc {
  1322  		size += int64(64)
  1323  	}
  1324  	// field FlushOptions []string
  1325  	{
  1326  		size += hack.RuntimeAllocSize(int64(cap(cached.FlushOptions)) * int64(16))
  1327  		for _, elem := range cached.FlushOptions {
  1328  			size += hack.RuntimeAllocSize(int64(len(elem)))
  1329  		}
  1330  	}
  1331  	// field TableNames vitess.io/vitess/go/vt/sqlparser.TableNames
  1332  	{
  1333  		size += hack.RuntimeAllocSize(int64(cap(cached.TableNames)) * int64(32))
  1334  		for _, elem := range cached.TableNames {
  1335  			size += elem.CachedSize(false)
  1336  		}
  1337  	}
  1338  	return size
  1339  }
  1340  func (cached *ForeignKeyDefinition) CachedSize(alloc bool) int64 {
  1341  	if cached == nil {
  1342  		return int64(0)
  1343  	}
  1344  	size := int64(0)
  1345  	if alloc {
  1346  		size += int64(64)
  1347  	}
  1348  	// field Source vitess.io/vitess/go/vt/sqlparser.Columns
  1349  	{
  1350  		size += hack.RuntimeAllocSize(int64(cap(cached.Source)) * int64(32))
  1351  		for _, elem := range cached.Source {
  1352  			size += elem.CachedSize(false)
  1353  		}
  1354  	}
  1355  	// field IndexName vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1356  	size += cached.IndexName.CachedSize(false)
  1357  	// field ReferenceDefinition *vitess.io/vitess/go/vt/sqlparser.ReferenceDefinition
  1358  	size += cached.ReferenceDefinition.CachedSize(true)
  1359  	return size
  1360  }
  1361  func (cached *FrameClause) CachedSize(alloc bool) int64 {
  1362  	if cached == nil {
  1363  		return int64(0)
  1364  	}
  1365  	size := int64(0)
  1366  	if alloc {
  1367  		size += int64(24)
  1368  	}
  1369  	// field Start *vitess.io/vitess/go/vt/sqlparser.FramePoint
  1370  	size += cached.Start.CachedSize(true)
  1371  	// field End *vitess.io/vitess/go/vt/sqlparser.FramePoint
  1372  	size += cached.End.CachedSize(true)
  1373  	return size
  1374  }
  1375  func (cached *FramePoint) CachedSize(alloc bool) int64 {
  1376  	if cached == nil {
  1377  		return int64(0)
  1378  	}
  1379  	size := int64(0)
  1380  	if alloc {
  1381  		size += int64(24)
  1382  	}
  1383  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  1384  	if cc, ok := cached.Expr.(cachedObject); ok {
  1385  		size += cc.CachedSize(true)
  1386  	}
  1387  	return size
  1388  }
  1389  func (cached *FuncExpr) CachedSize(alloc bool) int64 {
  1390  	if cached == nil {
  1391  		return int64(0)
  1392  	}
  1393  	size := int64(0)
  1394  	if alloc {
  1395  		size += int64(80)
  1396  	}
  1397  	// field Qualifier vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  1398  	size += cached.Qualifier.CachedSize(false)
  1399  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1400  	size += cached.Name.CachedSize(false)
  1401  	// field Exprs vitess.io/vitess/go/vt/sqlparser.SelectExprs
  1402  	{
  1403  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(16))
  1404  		for _, elem := range cached.Exprs {
  1405  			if cc, ok := elem.(cachedObject); ok {
  1406  				size += cc.CachedSize(true)
  1407  			}
  1408  		}
  1409  	}
  1410  	return size
  1411  }
  1412  func (cached *GTIDFuncExpr) CachedSize(alloc bool) int64 {
  1413  	if cached == nil {
  1414  		return int64(0)
  1415  	}
  1416  	size := int64(0)
  1417  	if alloc {
  1418  		size += int64(80)
  1419  	}
  1420  	// field Set1 vitess.io/vitess/go/vt/sqlparser.Expr
  1421  	if cc, ok := cached.Set1.(cachedObject); ok {
  1422  		size += cc.CachedSize(true)
  1423  	}
  1424  	// field Set2 vitess.io/vitess/go/vt/sqlparser.Expr
  1425  	if cc, ok := cached.Set2.(cachedObject); ok {
  1426  		size += cc.CachedSize(true)
  1427  	}
  1428  	// field Timeout vitess.io/vitess/go/vt/sqlparser.Expr
  1429  	if cc, ok := cached.Timeout.(cachedObject); ok {
  1430  		size += cc.CachedSize(true)
  1431  	}
  1432  	// field Channel vitess.io/vitess/go/vt/sqlparser.Expr
  1433  	if cc, ok := cached.Channel.(cachedObject); ok {
  1434  		size += cc.CachedSize(true)
  1435  	}
  1436  	return size
  1437  }
  1438  func (cached *GroupConcatExpr) CachedSize(alloc bool) int64 {
  1439  	if cached == nil {
  1440  		return int64(0)
  1441  	}
  1442  	size := int64(0)
  1443  	if alloc {
  1444  		size += int64(80)
  1445  	}
  1446  	// field Exprs vitess.io/vitess/go/vt/sqlparser.Exprs
  1447  	{
  1448  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(16))
  1449  		for _, elem := range cached.Exprs {
  1450  			if cc, ok := elem.(cachedObject); ok {
  1451  				size += cc.CachedSize(true)
  1452  			}
  1453  		}
  1454  	}
  1455  	// field OrderBy vitess.io/vitess/go/vt/sqlparser.OrderBy
  1456  	{
  1457  		size += hack.RuntimeAllocSize(int64(cap(cached.OrderBy)) * int64(8))
  1458  		for _, elem := range cached.OrderBy {
  1459  			size += elem.CachedSize(true)
  1460  		}
  1461  	}
  1462  	// field Separator string
  1463  	size += hack.RuntimeAllocSize(int64(len(cached.Separator)))
  1464  	// field Limit *vitess.io/vitess/go/vt/sqlparser.Limit
  1465  	size += cached.Limit.CachedSize(true)
  1466  	return size
  1467  }
  1468  func (cached *IdentifierCI) CachedSize(alloc bool) int64 {
  1469  	if cached == nil {
  1470  		return int64(0)
  1471  	}
  1472  	size := int64(0)
  1473  	if alloc {
  1474  		size += int64(32)
  1475  	}
  1476  	// field val string
  1477  	size += hack.RuntimeAllocSize(int64(len(cached.val)))
  1478  	// field lowered string
  1479  	size += hack.RuntimeAllocSize(int64(len(cached.lowered)))
  1480  	return size
  1481  }
  1482  func (cached *IdentifierCS) CachedSize(alloc bool) int64 {
  1483  	if cached == nil {
  1484  		return int64(0)
  1485  	}
  1486  	size := int64(0)
  1487  	if alloc {
  1488  		size += int64(16)
  1489  	}
  1490  	// field v string
  1491  	size += hack.RuntimeAllocSize(int64(len(cached.v)))
  1492  	return size
  1493  }
  1494  func (cached *IndexColumn) CachedSize(alloc bool) int64 {
  1495  	if cached == nil {
  1496  		return int64(0)
  1497  	}
  1498  	size := int64(0)
  1499  	if alloc {
  1500  		size += int64(64)
  1501  	}
  1502  	// field Column vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1503  	size += cached.Column.CachedSize(false)
  1504  	// field Length *vitess.io/vitess/go/vt/sqlparser.Literal
  1505  	size += cached.Length.CachedSize(true)
  1506  	// field Expression vitess.io/vitess/go/vt/sqlparser.Expr
  1507  	if cc, ok := cached.Expression.(cachedObject); ok {
  1508  		size += cc.CachedSize(true)
  1509  	}
  1510  	return size
  1511  }
  1512  func (cached *IndexDefinition) CachedSize(alloc bool) int64 {
  1513  	if cached == nil {
  1514  		return int64(0)
  1515  	}
  1516  	size := int64(0)
  1517  	if alloc {
  1518  		size += int64(64)
  1519  	}
  1520  	// field Info *vitess.io/vitess/go/vt/sqlparser.IndexInfo
  1521  	size += cached.Info.CachedSize(true)
  1522  	// field Columns []*vitess.io/vitess/go/vt/sqlparser.IndexColumn
  1523  	{
  1524  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(8))
  1525  		for _, elem := range cached.Columns {
  1526  			size += elem.CachedSize(true)
  1527  		}
  1528  	}
  1529  	// field Options []*vitess.io/vitess/go/vt/sqlparser.IndexOption
  1530  	{
  1531  		size += hack.RuntimeAllocSize(int64(cap(cached.Options)) * int64(8))
  1532  		for _, elem := range cached.Options {
  1533  			size += elem.CachedSize(true)
  1534  		}
  1535  	}
  1536  	return size
  1537  }
  1538  func (cached *IndexHint) CachedSize(alloc bool) int64 {
  1539  	if cached == nil {
  1540  		return int64(0)
  1541  	}
  1542  	size := int64(0)
  1543  	if alloc {
  1544  		size += int64(32)
  1545  	}
  1546  	// field Indexes []vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1547  	{
  1548  		size += hack.RuntimeAllocSize(int64(cap(cached.Indexes)) * int64(32))
  1549  		for _, elem := range cached.Indexes {
  1550  			size += elem.CachedSize(false)
  1551  		}
  1552  	}
  1553  	return size
  1554  }
  1555  func (cached *IndexInfo) CachedSize(alloc bool) int64 {
  1556  	if cached == nil {
  1557  		return int64(0)
  1558  	}
  1559  	size := int64(0)
  1560  	if alloc {
  1561  		size += int64(96)
  1562  	}
  1563  	// field Type string
  1564  	size += hack.RuntimeAllocSize(int64(len(cached.Type)))
  1565  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1566  	size += cached.Name.CachedSize(false)
  1567  	// field ConstraintName vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  1568  	size += cached.ConstraintName.CachedSize(false)
  1569  	return size
  1570  }
  1571  func (cached *IndexOption) CachedSize(alloc bool) int64 {
  1572  	if cached == nil {
  1573  		return int64(0)
  1574  	}
  1575  	size := int64(0)
  1576  	if alloc {
  1577  		size += int64(48)
  1578  	}
  1579  	// field Name string
  1580  	size += hack.RuntimeAllocSize(int64(len(cached.Name)))
  1581  	// field Value *vitess.io/vitess/go/vt/sqlparser.Literal
  1582  	size += cached.Value.CachedSize(true)
  1583  	// field String string
  1584  	size += hack.RuntimeAllocSize(int64(len(cached.String)))
  1585  	return size
  1586  }
  1587  func (cached *Insert) CachedSize(alloc bool) int64 {
  1588  	if cached == nil {
  1589  		return int64(0)
  1590  	}
  1591  	size := int64(0)
  1592  	if alloc {
  1593  		size += int64(144)
  1594  	}
  1595  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  1596  	size += cached.Comments.CachedSize(true)
  1597  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
  1598  	size += cached.Table.CachedSize(false)
  1599  	// field Partitions vitess.io/vitess/go/vt/sqlparser.Partitions
  1600  	{
  1601  		size += hack.RuntimeAllocSize(int64(cap(cached.Partitions)) * int64(32))
  1602  		for _, elem := range cached.Partitions {
  1603  			size += elem.CachedSize(false)
  1604  		}
  1605  	}
  1606  	// field Columns vitess.io/vitess/go/vt/sqlparser.Columns
  1607  	{
  1608  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(32))
  1609  		for _, elem := range cached.Columns {
  1610  			size += elem.CachedSize(false)
  1611  		}
  1612  	}
  1613  	// field Rows vitess.io/vitess/go/vt/sqlparser.InsertRows
  1614  	if cc, ok := cached.Rows.(cachedObject); ok {
  1615  		size += cc.CachedSize(true)
  1616  	}
  1617  	// field OnDup vitess.io/vitess/go/vt/sqlparser.OnDup
  1618  	{
  1619  		size += hack.RuntimeAllocSize(int64(cap(cached.OnDup)) * int64(8))
  1620  		for _, elem := range cached.OnDup {
  1621  			size += elem.CachedSize(true)
  1622  		}
  1623  	}
  1624  	return size
  1625  }
  1626  func (cached *InsertExpr) CachedSize(alloc bool) int64 {
  1627  	if cached == nil {
  1628  		return int64(0)
  1629  	}
  1630  	size := int64(0)
  1631  	if alloc {
  1632  		size += int64(64)
  1633  	}
  1634  	// field Str vitess.io/vitess/go/vt/sqlparser.Expr
  1635  	if cc, ok := cached.Str.(cachedObject); ok {
  1636  		size += cc.CachedSize(true)
  1637  	}
  1638  	// field Pos vitess.io/vitess/go/vt/sqlparser.Expr
  1639  	if cc, ok := cached.Pos.(cachedObject); ok {
  1640  		size += cc.CachedSize(true)
  1641  	}
  1642  	// field Len vitess.io/vitess/go/vt/sqlparser.Expr
  1643  	if cc, ok := cached.Len.(cachedObject); ok {
  1644  		size += cc.CachedSize(true)
  1645  	}
  1646  	// field NewStr vitess.io/vitess/go/vt/sqlparser.Expr
  1647  	if cc, ok := cached.NewStr.(cachedObject); ok {
  1648  		size += cc.CachedSize(true)
  1649  	}
  1650  	return size
  1651  }
  1652  func (cached *IntervalExpr) CachedSize(alloc bool) int64 {
  1653  	if cached == nil {
  1654  		return int64(0)
  1655  	}
  1656  	size := int64(0)
  1657  	if alloc {
  1658  		size += int64(32)
  1659  	}
  1660  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  1661  	if cc, ok := cached.Expr.(cachedObject); ok {
  1662  		size += cc.CachedSize(true)
  1663  	}
  1664  	// field Unit string
  1665  	size += hack.RuntimeAllocSize(int64(len(cached.Unit)))
  1666  	return size
  1667  }
  1668  func (cached *IntervalFuncExpr) CachedSize(alloc bool) int64 {
  1669  	if cached == nil {
  1670  		return int64(0)
  1671  	}
  1672  	size := int64(0)
  1673  	if alloc {
  1674  		size += int64(48)
  1675  	}
  1676  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  1677  	if cc, ok := cached.Expr.(cachedObject); ok {
  1678  		size += cc.CachedSize(true)
  1679  	}
  1680  	// field Exprs vitess.io/vitess/go/vt/sqlparser.Exprs
  1681  	{
  1682  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(16))
  1683  		for _, elem := range cached.Exprs {
  1684  			if cc, ok := elem.(cachedObject); ok {
  1685  				size += cc.CachedSize(true)
  1686  			}
  1687  		}
  1688  	}
  1689  	return size
  1690  }
  1691  func (cached *IntroducerExpr) CachedSize(alloc bool) int64 {
  1692  	if cached == nil {
  1693  		return int64(0)
  1694  	}
  1695  	size := int64(0)
  1696  	if alloc {
  1697  		size += int64(32)
  1698  	}
  1699  	// field CharacterSet string
  1700  	size += hack.RuntimeAllocSize(int64(len(cached.CharacterSet)))
  1701  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  1702  	if cc, ok := cached.Expr.(cachedObject); ok {
  1703  		size += cc.CachedSize(true)
  1704  	}
  1705  	return size
  1706  }
  1707  func (cached *IsExpr) CachedSize(alloc bool) int64 {
  1708  	if cached == nil {
  1709  		return int64(0)
  1710  	}
  1711  	size := int64(0)
  1712  	if alloc {
  1713  		size += int64(24)
  1714  	}
  1715  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
  1716  	if cc, ok := cached.Left.(cachedObject); ok {
  1717  		size += cc.CachedSize(true)
  1718  	}
  1719  	return size
  1720  }
  1721  func (cached *JSONArrayExpr) CachedSize(alloc bool) int64 {
  1722  	if cached == nil {
  1723  		return int64(0)
  1724  	}
  1725  	size := int64(0)
  1726  	if alloc {
  1727  		size += int64(24)
  1728  	}
  1729  	// field Params vitess.io/vitess/go/vt/sqlparser.Exprs
  1730  	{
  1731  		size += hack.RuntimeAllocSize(int64(cap(cached.Params)) * int64(16))
  1732  		for _, elem := range cached.Params {
  1733  			if cc, ok := elem.(cachedObject); ok {
  1734  				size += cc.CachedSize(true)
  1735  			}
  1736  		}
  1737  	}
  1738  	return size
  1739  }
  1740  func (cached *JSONAttributesExpr) CachedSize(alloc bool) int64 {
  1741  	if cached == nil {
  1742  		return int64(0)
  1743  	}
  1744  	size := int64(0)
  1745  	if alloc {
  1746  		size += int64(48)
  1747  	}
  1748  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  1749  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  1750  		size += cc.CachedSize(true)
  1751  	}
  1752  	// field Path vitess.io/vitess/go/vt/sqlparser.Expr
  1753  	if cc, ok := cached.Path.(cachedObject); ok {
  1754  		size += cc.CachedSize(true)
  1755  	}
  1756  	return size
  1757  }
  1758  func (cached *JSONContainsExpr) CachedSize(alloc bool) int64 {
  1759  	if cached == nil {
  1760  		return int64(0)
  1761  	}
  1762  	size := int64(0)
  1763  	if alloc {
  1764  		size += int64(64)
  1765  	}
  1766  	// field Target vitess.io/vitess/go/vt/sqlparser.Expr
  1767  	if cc, ok := cached.Target.(cachedObject); ok {
  1768  		size += cc.CachedSize(true)
  1769  	}
  1770  	// field Candidate vitess.io/vitess/go/vt/sqlparser.Expr
  1771  	if cc, ok := cached.Candidate.(cachedObject); ok {
  1772  		size += cc.CachedSize(true)
  1773  	}
  1774  	// field PathList []vitess.io/vitess/go/vt/sqlparser.Expr
  1775  	{
  1776  		size += hack.RuntimeAllocSize(int64(cap(cached.PathList)) * int64(16))
  1777  		for _, elem := range cached.PathList {
  1778  			if cc, ok := elem.(cachedObject); ok {
  1779  				size += cc.CachedSize(true)
  1780  			}
  1781  		}
  1782  	}
  1783  	return size
  1784  }
  1785  func (cached *JSONContainsPathExpr) CachedSize(alloc bool) int64 {
  1786  	if cached == nil {
  1787  		return int64(0)
  1788  	}
  1789  	size := int64(0)
  1790  	if alloc {
  1791  		size += int64(64)
  1792  	}
  1793  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  1794  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  1795  		size += cc.CachedSize(true)
  1796  	}
  1797  	// field OneOrAll vitess.io/vitess/go/vt/sqlparser.Expr
  1798  	if cc, ok := cached.OneOrAll.(cachedObject); ok {
  1799  		size += cc.CachedSize(true)
  1800  	}
  1801  	// field PathList []vitess.io/vitess/go/vt/sqlparser.Expr
  1802  	{
  1803  		size += hack.RuntimeAllocSize(int64(cap(cached.PathList)) * int64(16))
  1804  		for _, elem := range cached.PathList {
  1805  			if cc, ok := elem.(cachedObject); ok {
  1806  				size += cc.CachedSize(true)
  1807  			}
  1808  		}
  1809  	}
  1810  	return size
  1811  }
  1812  func (cached *JSONExtractExpr) CachedSize(alloc bool) int64 {
  1813  	if cached == nil {
  1814  		return int64(0)
  1815  	}
  1816  	size := int64(0)
  1817  	if alloc {
  1818  		size += int64(48)
  1819  	}
  1820  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  1821  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  1822  		size += cc.CachedSize(true)
  1823  	}
  1824  	// field PathList []vitess.io/vitess/go/vt/sqlparser.Expr
  1825  	{
  1826  		size += hack.RuntimeAllocSize(int64(cap(cached.PathList)) * int64(16))
  1827  		for _, elem := range cached.PathList {
  1828  			if cc, ok := elem.(cachedObject); ok {
  1829  				size += cc.CachedSize(true)
  1830  			}
  1831  		}
  1832  	}
  1833  	return size
  1834  }
  1835  func (cached *JSONKeysExpr) CachedSize(alloc bool) int64 {
  1836  	if cached == nil {
  1837  		return int64(0)
  1838  	}
  1839  	size := int64(0)
  1840  	if alloc {
  1841  		size += int64(32)
  1842  	}
  1843  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  1844  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  1845  		size += cc.CachedSize(true)
  1846  	}
  1847  	// field Path vitess.io/vitess/go/vt/sqlparser.Expr
  1848  	if cc, ok := cached.Path.(cachedObject); ok {
  1849  		size += cc.CachedSize(true)
  1850  	}
  1851  	return size
  1852  }
  1853  func (cached *JSONObjectExpr) CachedSize(alloc bool) int64 {
  1854  	if cached == nil {
  1855  		return int64(0)
  1856  	}
  1857  	size := int64(0)
  1858  	if alloc {
  1859  		size += int64(24)
  1860  	}
  1861  	// field Params []*vitess.io/vitess/go/vt/sqlparser.JSONObjectParam
  1862  	{
  1863  		size += hack.RuntimeAllocSize(int64(cap(cached.Params)) * int64(8))
  1864  		for _, elem := range cached.Params {
  1865  			size += elem.CachedSize(true)
  1866  		}
  1867  	}
  1868  	return size
  1869  }
  1870  func (cached *JSONObjectParam) CachedSize(alloc bool) int64 {
  1871  	if cached == nil {
  1872  		return int64(0)
  1873  	}
  1874  	size := int64(0)
  1875  	if alloc {
  1876  		size += int64(32)
  1877  	}
  1878  	// field Key vitess.io/vitess/go/vt/sqlparser.Expr
  1879  	if cc, ok := cached.Key.(cachedObject); ok {
  1880  		size += cc.CachedSize(true)
  1881  	}
  1882  	// field Value vitess.io/vitess/go/vt/sqlparser.Expr
  1883  	if cc, ok := cached.Value.(cachedObject); ok {
  1884  		size += cc.CachedSize(true)
  1885  	}
  1886  	return size
  1887  }
  1888  func (cached *JSONOverlapsExpr) CachedSize(alloc bool) int64 {
  1889  	if cached == nil {
  1890  		return int64(0)
  1891  	}
  1892  	size := int64(0)
  1893  	if alloc {
  1894  		size += int64(32)
  1895  	}
  1896  	// field JSONDoc1 vitess.io/vitess/go/vt/sqlparser.Expr
  1897  	if cc, ok := cached.JSONDoc1.(cachedObject); ok {
  1898  		size += cc.CachedSize(true)
  1899  	}
  1900  	// field JSONDoc2 vitess.io/vitess/go/vt/sqlparser.Expr
  1901  	if cc, ok := cached.JSONDoc2.(cachedObject); ok {
  1902  		size += cc.CachedSize(true)
  1903  	}
  1904  	return size
  1905  }
  1906  func (cached *JSONPrettyExpr) CachedSize(alloc bool) int64 {
  1907  	if cached == nil {
  1908  		return int64(0)
  1909  	}
  1910  	size := int64(0)
  1911  	if alloc {
  1912  		size += int64(16)
  1913  	}
  1914  	// field JSONVal vitess.io/vitess/go/vt/sqlparser.Expr
  1915  	if cc, ok := cached.JSONVal.(cachedObject); ok {
  1916  		size += cc.CachedSize(true)
  1917  	}
  1918  	return size
  1919  }
  1920  func (cached *JSONQuoteExpr) CachedSize(alloc bool) int64 {
  1921  	if cached == nil {
  1922  		return int64(0)
  1923  	}
  1924  	size := int64(0)
  1925  	if alloc {
  1926  		size += int64(16)
  1927  	}
  1928  	// field StringArg vitess.io/vitess/go/vt/sqlparser.Expr
  1929  	if cc, ok := cached.StringArg.(cachedObject); ok {
  1930  		size += cc.CachedSize(true)
  1931  	}
  1932  	return size
  1933  }
  1934  func (cached *JSONRemoveExpr) CachedSize(alloc bool) int64 {
  1935  	if cached == nil {
  1936  		return int64(0)
  1937  	}
  1938  	size := int64(0)
  1939  	if alloc {
  1940  		size += int64(48)
  1941  	}
  1942  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  1943  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  1944  		size += cc.CachedSize(true)
  1945  	}
  1946  	// field PathList vitess.io/vitess/go/vt/sqlparser.Exprs
  1947  	{
  1948  		size += hack.RuntimeAllocSize(int64(cap(cached.PathList)) * int64(16))
  1949  		for _, elem := range cached.PathList {
  1950  			if cc, ok := elem.(cachedObject); ok {
  1951  				size += cc.CachedSize(true)
  1952  			}
  1953  		}
  1954  	}
  1955  	return size
  1956  }
  1957  func (cached *JSONSchemaValidFuncExpr) CachedSize(alloc bool) int64 {
  1958  	if cached == nil {
  1959  		return int64(0)
  1960  	}
  1961  	size := int64(0)
  1962  	if alloc {
  1963  		size += int64(32)
  1964  	}
  1965  	// field Schema vitess.io/vitess/go/vt/sqlparser.Expr
  1966  	if cc, ok := cached.Schema.(cachedObject); ok {
  1967  		size += cc.CachedSize(true)
  1968  	}
  1969  	// field Document vitess.io/vitess/go/vt/sqlparser.Expr
  1970  	if cc, ok := cached.Document.(cachedObject); ok {
  1971  		size += cc.CachedSize(true)
  1972  	}
  1973  	return size
  1974  }
  1975  func (cached *JSONSchemaValidationReportFuncExpr) CachedSize(alloc bool) int64 {
  1976  	if cached == nil {
  1977  		return int64(0)
  1978  	}
  1979  	size := int64(0)
  1980  	if alloc {
  1981  		size += int64(32)
  1982  	}
  1983  	// field Schema vitess.io/vitess/go/vt/sqlparser.Expr
  1984  	if cc, ok := cached.Schema.(cachedObject); ok {
  1985  		size += cc.CachedSize(true)
  1986  	}
  1987  	// field Document vitess.io/vitess/go/vt/sqlparser.Expr
  1988  	if cc, ok := cached.Document.(cachedObject); ok {
  1989  		size += cc.CachedSize(true)
  1990  	}
  1991  	return size
  1992  }
  1993  func (cached *JSONSearchExpr) CachedSize(alloc bool) int64 {
  1994  	if cached == nil {
  1995  		return int64(0)
  1996  	}
  1997  	size := int64(0)
  1998  	if alloc {
  1999  		size += int64(96)
  2000  	}
  2001  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  2002  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  2003  		size += cc.CachedSize(true)
  2004  	}
  2005  	// field OneOrAll vitess.io/vitess/go/vt/sqlparser.Expr
  2006  	if cc, ok := cached.OneOrAll.(cachedObject); ok {
  2007  		size += cc.CachedSize(true)
  2008  	}
  2009  	// field SearchStr vitess.io/vitess/go/vt/sqlparser.Expr
  2010  	if cc, ok := cached.SearchStr.(cachedObject); ok {
  2011  		size += cc.CachedSize(true)
  2012  	}
  2013  	// field EscapeChar vitess.io/vitess/go/vt/sqlparser.Expr
  2014  	if cc, ok := cached.EscapeChar.(cachedObject); ok {
  2015  		size += cc.CachedSize(true)
  2016  	}
  2017  	// field PathList []vitess.io/vitess/go/vt/sqlparser.Expr
  2018  	{
  2019  		size += hack.RuntimeAllocSize(int64(cap(cached.PathList)) * int64(16))
  2020  		for _, elem := range cached.PathList {
  2021  			if cc, ok := elem.(cachedObject); ok {
  2022  				size += cc.CachedSize(true)
  2023  			}
  2024  		}
  2025  	}
  2026  	return size
  2027  }
  2028  func (cached *JSONStorageFreeExpr) CachedSize(alloc bool) int64 {
  2029  	if cached == nil {
  2030  		return int64(0)
  2031  	}
  2032  	size := int64(0)
  2033  	if alloc {
  2034  		size += int64(16)
  2035  	}
  2036  	// field JSONVal vitess.io/vitess/go/vt/sqlparser.Expr
  2037  	if cc, ok := cached.JSONVal.(cachedObject); ok {
  2038  		size += cc.CachedSize(true)
  2039  	}
  2040  	return size
  2041  }
  2042  func (cached *JSONStorageSizeExpr) CachedSize(alloc bool) int64 {
  2043  	if cached == nil {
  2044  		return int64(0)
  2045  	}
  2046  	size := int64(0)
  2047  	if alloc {
  2048  		size += int64(16)
  2049  	}
  2050  	// field JSONVal vitess.io/vitess/go/vt/sqlparser.Expr
  2051  	if cc, ok := cached.JSONVal.(cachedObject); ok {
  2052  		size += cc.CachedSize(true)
  2053  	}
  2054  	return size
  2055  }
  2056  func (cached *JSONTableExpr) CachedSize(alloc bool) int64 {
  2057  	if cached == nil {
  2058  		return int64(0)
  2059  	}
  2060  	size := int64(0)
  2061  	if alloc {
  2062  		size += int64(80)
  2063  	}
  2064  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2065  	if cc, ok := cached.Expr.(cachedObject); ok {
  2066  		size += cc.CachedSize(true)
  2067  	}
  2068  	// field Alias vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  2069  	size += cached.Alias.CachedSize(false)
  2070  	// field Filter vitess.io/vitess/go/vt/sqlparser.Expr
  2071  	if cc, ok := cached.Filter.(cachedObject); ok {
  2072  		size += cc.CachedSize(true)
  2073  	}
  2074  	// field Columns []*vitess.io/vitess/go/vt/sqlparser.JtColumnDefinition
  2075  	{
  2076  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(8))
  2077  		for _, elem := range cached.Columns {
  2078  			size += elem.CachedSize(true)
  2079  		}
  2080  	}
  2081  	return size
  2082  }
  2083  func (cached *JSONUnquoteExpr) CachedSize(alloc bool) int64 {
  2084  	if cached == nil {
  2085  		return int64(0)
  2086  	}
  2087  	size := int64(0)
  2088  	if alloc {
  2089  		size += int64(16)
  2090  	}
  2091  	// field JSONValue vitess.io/vitess/go/vt/sqlparser.Expr
  2092  	if cc, ok := cached.JSONValue.(cachedObject); ok {
  2093  		size += cc.CachedSize(true)
  2094  	}
  2095  	return size
  2096  }
  2097  func (cached *JSONValueExpr) CachedSize(alloc bool) int64 {
  2098  	if cached == nil {
  2099  		return int64(0)
  2100  	}
  2101  	size := int64(0)
  2102  	if alloc {
  2103  		size += int64(64)
  2104  	}
  2105  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  2106  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  2107  		size += cc.CachedSize(true)
  2108  	}
  2109  	// field Path vitess.io/vitess/go/vt/sqlparser.Expr
  2110  	if cc, ok := cached.Path.(cachedObject); ok {
  2111  		size += cc.CachedSize(true)
  2112  	}
  2113  	// field ReturningType *vitess.io/vitess/go/vt/sqlparser.ConvertType
  2114  	size += cached.ReturningType.CachedSize(true)
  2115  	// field EmptyOnResponse *vitess.io/vitess/go/vt/sqlparser.JtOnResponse
  2116  	size += cached.EmptyOnResponse.CachedSize(true)
  2117  	// field ErrorOnResponse *vitess.io/vitess/go/vt/sqlparser.JtOnResponse
  2118  	size += cached.ErrorOnResponse.CachedSize(true)
  2119  	return size
  2120  }
  2121  func (cached *JSONValueMergeExpr) CachedSize(alloc bool) int64 {
  2122  	if cached == nil {
  2123  		return int64(0)
  2124  	}
  2125  	size := int64(0)
  2126  	if alloc {
  2127  		size += int64(48)
  2128  	}
  2129  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  2130  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  2131  		size += cc.CachedSize(true)
  2132  	}
  2133  	// field JSONDocList vitess.io/vitess/go/vt/sqlparser.Exprs
  2134  	{
  2135  		size += hack.RuntimeAllocSize(int64(cap(cached.JSONDocList)) * int64(16))
  2136  		for _, elem := range cached.JSONDocList {
  2137  			if cc, ok := elem.(cachedObject); ok {
  2138  				size += cc.CachedSize(true)
  2139  			}
  2140  		}
  2141  	}
  2142  	return size
  2143  }
  2144  func (cached *JSONValueModifierExpr) CachedSize(alloc bool) int64 {
  2145  	if cached == nil {
  2146  		return int64(0)
  2147  	}
  2148  	size := int64(0)
  2149  	if alloc {
  2150  		size += int64(48)
  2151  	}
  2152  	// field JSONDoc vitess.io/vitess/go/vt/sqlparser.Expr
  2153  	if cc, ok := cached.JSONDoc.(cachedObject); ok {
  2154  		size += cc.CachedSize(true)
  2155  	}
  2156  	// field Params []*vitess.io/vitess/go/vt/sqlparser.JSONObjectParam
  2157  	{
  2158  		size += hack.RuntimeAllocSize(int64(cap(cached.Params)) * int64(8))
  2159  		for _, elem := range cached.Params {
  2160  			size += elem.CachedSize(true)
  2161  		}
  2162  	}
  2163  	return size
  2164  }
  2165  func (cached *JoinCondition) CachedSize(alloc bool) int64 {
  2166  	if cached == nil {
  2167  		return int64(0)
  2168  	}
  2169  	size := int64(0)
  2170  	if alloc {
  2171  		size += int64(48)
  2172  	}
  2173  	// field On vitess.io/vitess/go/vt/sqlparser.Expr
  2174  	if cc, ok := cached.On.(cachedObject); ok {
  2175  		size += cc.CachedSize(true)
  2176  	}
  2177  	// field Using vitess.io/vitess/go/vt/sqlparser.Columns
  2178  	{
  2179  		size += hack.RuntimeAllocSize(int64(cap(cached.Using)) * int64(32))
  2180  		for _, elem := range cached.Using {
  2181  			size += elem.CachedSize(false)
  2182  		}
  2183  	}
  2184  	return size
  2185  }
  2186  func (cached *JoinTableExpr) CachedSize(alloc bool) int64 {
  2187  	if cached == nil {
  2188  		return int64(0)
  2189  	}
  2190  	size := int64(0)
  2191  	if alloc {
  2192  		size += int64(48)
  2193  	}
  2194  	// field LeftExpr vitess.io/vitess/go/vt/sqlparser.TableExpr
  2195  	if cc, ok := cached.LeftExpr.(cachedObject); ok {
  2196  		size += cc.CachedSize(true)
  2197  	}
  2198  	// field RightExpr vitess.io/vitess/go/vt/sqlparser.TableExpr
  2199  	if cc, ok := cached.RightExpr.(cachedObject); ok {
  2200  		size += cc.CachedSize(true)
  2201  	}
  2202  	// field Condition *vitess.io/vitess/go/vt/sqlparser.JoinCondition
  2203  	size += cached.Condition.CachedSize(true)
  2204  	return size
  2205  }
  2206  func (cached *JtColumnDefinition) CachedSize(alloc bool) int64 {
  2207  	if cached == nil {
  2208  		return int64(0)
  2209  	}
  2210  	size := int64(0)
  2211  	if alloc {
  2212  		size += int64(24)
  2213  	}
  2214  	// field JtOrdinal *vitess.io/vitess/go/vt/sqlparser.JtOrdinalColDef
  2215  	size += cached.JtOrdinal.CachedSize(true)
  2216  	// field JtPath *vitess.io/vitess/go/vt/sqlparser.JtPathColDef
  2217  	size += cached.JtPath.CachedSize(true)
  2218  	// field JtNestedPath *vitess.io/vitess/go/vt/sqlparser.JtNestedPathColDef
  2219  	size += cached.JtNestedPath.CachedSize(true)
  2220  	return size
  2221  }
  2222  func (cached *JtNestedPathColDef) CachedSize(alloc bool) int64 {
  2223  	if cached == nil {
  2224  		return int64(0)
  2225  	}
  2226  	size := int64(0)
  2227  	if alloc {
  2228  		size += int64(48)
  2229  	}
  2230  	// field Path vitess.io/vitess/go/vt/sqlparser.Expr
  2231  	if cc, ok := cached.Path.(cachedObject); ok {
  2232  		size += cc.CachedSize(true)
  2233  	}
  2234  	// field Columns []*vitess.io/vitess/go/vt/sqlparser.JtColumnDefinition
  2235  	{
  2236  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(8))
  2237  		for _, elem := range cached.Columns {
  2238  			size += elem.CachedSize(true)
  2239  		}
  2240  	}
  2241  	return size
  2242  }
  2243  func (cached *JtOnResponse) CachedSize(alloc bool) int64 {
  2244  	if cached == nil {
  2245  		return int64(0)
  2246  	}
  2247  	size := int64(0)
  2248  	if alloc {
  2249  		size += int64(24)
  2250  	}
  2251  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2252  	if cc, ok := cached.Expr.(cachedObject); ok {
  2253  		size += cc.CachedSize(true)
  2254  	}
  2255  	return size
  2256  }
  2257  func (cached *JtOrdinalColDef) CachedSize(alloc bool) int64 {
  2258  	if cached == nil {
  2259  		return int64(0)
  2260  	}
  2261  	size := int64(0)
  2262  	if alloc {
  2263  		size += int64(32)
  2264  	}
  2265  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  2266  	size += cached.Name.CachedSize(false)
  2267  	return size
  2268  }
  2269  func (cached *JtPathColDef) CachedSize(alloc bool) int64 {
  2270  	if cached == nil {
  2271  		return int64(0)
  2272  	}
  2273  	size := int64(0)
  2274  	if alloc {
  2275  		size += int64(80)
  2276  	}
  2277  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  2278  	size += cached.Name.CachedSize(false)
  2279  	// field Type *vitess.io/vitess/go/vt/sqlparser.ColumnType
  2280  	size += cached.Type.CachedSize(true)
  2281  	// field Path vitess.io/vitess/go/vt/sqlparser.Expr
  2282  	if cc, ok := cached.Path.(cachedObject); ok {
  2283  		size += cc.CachedSize(true)
  2284  	}
  2285  	// field EmptyOnResponse *vitess.io/vitess/go/vt/sqlparser.JtOnResponse
  2286  	size += cached.EmptyOnResponse.CachedSize(true)
  2287  	// field ErrorOnResponse *vitess.io/vitess/go/vt/sqlparser.JtOnResponse
  2288  	size += cached.ErrorOnResponse.CachedSize(true)
  2289  	return size
  2290  }
  2291  func (cached *KeyState) CachedSize(alloc bool) int64 {
  2292  	if cached == nil {
  2293  		return int64(0)
  2294  	}
  2295  	size := int64(0)
  2296  	if alloc {
  2297  		size += int64(8)
  2298  	}
  2299  	return size
  2300  }
  2301  func (cached *LagLeadExpr) CachedSize(alloc bool) int64 {
  2302  	if cached == nil {
  2303  		return int64(0)
  2304  	}
  2305  	size := int64(0)
  2306  	if alloc {
  2307  		size += int64(80)
  2308  	}
  2309  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2310  	if cc, ok := cached.Expr.(cachedObject); ok {
  2311  		size += cc.CachedSize(true)
  2312  	}
  2313  	// field N vitess.io/vitess/go/vt/sqlparser.Expr
  2314  	if cc, ok := cached.N.(cachedObject); ok {
  2315  		size += cc.CachedSize(true)
  2316  	}
  2317  	// field Default vitess.io/vitess/go/vt/sqlparser.Expr
  2318  	if cc, ok := cached.Default.(cachedObject); ok {
  2319  		size += cc.CachedSize(true)
  2320  	}
  2321  	// field OverClause *vitess.io/vitess/go/vt/sqlparser.OverClause
  2322  	size += cached.OverClause.CachedSize(true)
  2323  	// field NullTreatmentClause *vitess.io/vitess/go/vt/sqlparser.NullTreatmentClause
  2324  	if cached.NullTreatmentClause != nil {
  2325  		size += hack.RuntimeAllocSize(int64(1))
  2326  	}
  2327  	return size
  2328  }
  2329  func (cached *Limit) CachedSize(alloc bool) int64 {
  2330  	if cached == nil {
  2331  		return int64(0)
  2332  	}
  2333  	size := int64(0)
  2334  	if alloc {
  2335  		size += int64(32)
  2336  	}
  2337  	// field Offset vitess.io/vitess/go/vt/sqlparser.Expr
  2338  	if cc, ok := cached.Offset.(cachedObject); ok {
  2339  		size += cc.CachedSize(true)
  2340  	}
  2341  	// field Rowcount vitess.io/vitess/go/vt/sqlparser.Expr
  2342  	if cc, ok := cached.Rowcount.(cachedObject); ok {
  2343  		size += cc.CachedSize(true)
  2344  	}
  2345  	return size
  2346  }
  2347  func (cached *Literal) CachedSize(alloc bool) int64 {
  2348  	if cached == nil {
  2349  		return int64(0)
  2350  	}
  2351  	size := int64(0)
  2352  	if alloc {
  2353  		size += int64(24)
  2354  	}
  2355  	// field Val string
  2356  	size += hack.RuntimeAllocSize(int64(len(cached.Val)))
  2357  	return size
  2358  }
  2359  func (cached *LocateExpr) CachedSize(alloc bool) int64 {
  2360  	if cached == nil {
  2361  		return int64(0)
  2362  	}
  2363  	size := int64(0)
  2364  	if alloc {
  2365  		size += int64(48)
  2366  	}
  2367  	// field SubStr vitess.io/vitess/go/vt/sqlparser.Expr
  2368  	if cc, ok := cached.SubStr.(cachedObject); ok {
  2369  		size += cc.CachedSize(true)
  2370  	}
  2371  	// field Str vitess.io/vitess/go/vt/sqlparser.Expr
  2372  	if cc, ok := cached.Str.(cachedObject); ok {
  2373  		size += cc.CachedSize(true)
  2374  	}
  2375  	// field Pos vitess.io/vitess/go/vt/sqlparser.Expr
  2376  	if cc, ok := cached.Pos.(cachedObject); ok {
  2377  		size += cc.CachedSize(true)
  2378  	}
  2379  	return size
  2380  }
  2381  func (cached *LockOption) CachedSize(alloc bool) int64 {
  2382  	if cached == nil {
  2383  		return int64(0)
  2384  	}
  2385  	size := int64(0)
  2386  	if alloc {
  2387  		size += int64(8)
  2388  	}
  2389  	return size
  2390  }
  2391  func (cached *LockTables) CachedSize(alloc bool) int64 {
  2392  	if cached == nil {
  2393  		return int64(0)
  2394  	}
  2395  	size := int64(0)
  2396  	if alloc {
  2397  		size += int64(24)
  2398  	}
  2399  	// field Tables vitess.io/vitess/go/vt/sqlparser.TableAndLockTypes
  2400  	{
  2401  		size += hack.RuntimeAllocSize(int64(cap(cached.Tables)) * int64(8))
  2402  		for _, elem := range cached.Tables {
  2403  			size += elem.CachedSize(true)
  2404  		}
  2405  	}
  2406  	return size
  2407  }
  2408  func (cached *LockingFunc) CachedSize(alloc bool) int64 {
  2409  	if cached == nil {
  2410  		return int64(0)
  2411  	}
  2412  	size := int64(0)
  2413  	if alloc {
  2414  		size += int64(48)
  2415  	}
  2416  	// field Name vitess.io/vitess/go/vt/sqlparser.Expr
  2417  	if cc, ok := cached.Name.(cachedObject); ok {
  2418  		size += cc.CachedSize(true)
  2419  	}
  2420  	// field Timeout vitess.io/vitess/go/vt/sqlparser.Expr
  2421  	if cc, ok := cached.Timeout.(cachedObject); ok {
  2422  		size += cc.CachedSize(true)
  2423  	}
  2424  	return size
  2425  }
  2426  func (cached *MatchExpr) CachedSize(alloc bool) int64 {
  2427  	if cached == nil {
  2428  		return int64(0)
  2429  	}
  2430  	size := int64(0)
  2431  	if alloc {
  2432  		size += int64(48)
  2433  	}
  2434  	// field Columns []*vitess.io/vitess/go/vt/sqlparser.ColName
  2435  	{
  2436  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(8))
  2437  		for _, elem := range cached.Columns {
  2438  			size += elem.CachedSize(true)
  2439  		}
  2440  	}
  2441  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2442  	if cc, ok := cached.Expr.(cachedObject); ok {
  2443  		size += cc.CachedSize(true)
  2444  	}
  2445  	return size
  2446  }
  2447  func (cached *Max) CachedSize(alloc bool) int64 {
  2448  	if cached == nil {
  2449  		return int64(0)
  2450  	}
  2451  	size := int64(0)
  2452  	if alloc {
  2453  		size += int64(24)
  2454  	}
  2455  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  2456  	if cc, ok := cached.Arg.(cachedObject); ok {
  2457  		size += cc.CachedSize(true)
  2458  	}
  2459  	return size
  2460  }
  2461  func (cached *MemberOfExpr) CachedSize(alloc bool) int64 {
  2462  	if cached == nil {
  2463  		return int64(0)
  2464  	}
  2465  	size := int64(0)
  2466  	if alloc {
  2467  		size += int64(32)
  2468  	}
  2469  	// field Value vitess.io/vitess/go/vt/sqlparser.Expr
  2470  	if cc, ok := cached.Value.(cachedObject); ok {
  2471  		size += cc.CachedSize(true)
  2472  	}
  2473  	// field JSONArr vitess.io/vitess/go/vt/sqlparser.Expr
  2474  	if cc, ok := cached.JSONArr.(cachedObject); ok {
  2475  		size += cc.CachedSize(true)
  2476  	}
  2477  	return size
  2478  }
  2479  func (cached *Min) CachedSize(alloc bool) int64 {
  2480  	if cached == nil {
  2481  		return int64(0)
  2482  	}
  2483  	size := int64(0)
  2484  	if alloc {
  2485  		size += int64(24)
  2486  	}
  2487  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  2488  	if cc, ok := cached.Arg.(cachedObject); ok {
  2489  		size += cc.CachedSize(true)
  2490  	}
  2491  	return size
  2492  }
  2493  func (cached *ModifyColumn) CachedSize(alloc bool) int64 {
  2494  	if cached == nil {
  2495  		return int64(0)
  2496  	}
  2497  	size := int64(0)
  2498  	if alloc {
  2499  		size += int64(24)
  2500  	}
  2501  	// field NewColDefinition *vitess.io/vitess/go/vt/sqlparser.ColumnDefinition
  2502  	size += cached.NewColDefinition.CachedSize(true)
  2503  	// field After *vitess.io/vitess/go/vt/sqlparser.ColName
  2504  	size += cached.After.CachedSize(true)
  2505  	return size
  2506  }
  2507  func (cached *NTHValueExpr) CachedSize(alloc bool) int64 {
  2508  	if cached == nil {
  2509  		return int64(0)
  2510  	}
  2511  	size := int64(0)
  2512  	if alloc {
  2513  		size += int64(64)
  2514  	}
  2515  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2516  	if cc, ok := cached.Expr.(cachedObject); ok {
  2517  		size += cc.CachedSize(true)
  2518  	}
  2519  	// field N vitess.io/vitess/go/vt/sqlparser.Expr
  2520  	if cc, ok := cached.N.(cachedObject); ok {
  2521  		size += cc.CachedSize(true)
  2522  	}
  2523  	// field OverClause *vitess.io/vitess/go/vt/sqlparser.OverClause
  2524  	size += cached.OverClause.CachedSize(true)
  2525  	// field FromFirstLastClause *vitess.io/vitess/go/vt/sqlparser.FromFirstLastClause
  2526  	if cached.FromFirstLastClause != nil {
  2527  		size += hack.RuntimeAllocSize(int64(1))
  2528  	}
  2529  	// field NullTreatmentClause *vitess.io/vitess/go/vt/sqlparser.NullTreatmentClause
  2530  	if cached.NullTreatmentClause != nil {
  2531  		size += hack.RuntimeAllocSize(int64(1))
  2532  	}
  2533  	return size
  2534  }
  2535  func (cached *NamedWindow) CachedSize(alloc bool) int64 {
  2536  	if cached == nil {
  2537  		return int64(0)
  2538  	}
  2539  	size := int64(0)
  2540  	if alloc {
  2541  		size += int64(24)
  2542  	}
  2543  	// field Windows vitess.io/vitess/go/vt/sqlparser.WindowDefinitions
  2544  	{
  2545  		size += hack.RuntimeAllocSize(int64(cap(cached.Windows)) * int64(8))
  2546  		for _, elem := range cached.Windows {
  2547  			size += elem.CachedSize(true)
  2548  		}
  2549  	}
  2550  	return size
  2551  }
  2552  func (cached *Nextval) CachedSize(alloc bool) int64 {
  2553  	if cached == nil {
  2554  		return int64(0)
  2555  	}
  2556  	size := int64(0)
  2557  	if alloc {
  2558  		size += int64(16)
  2559  	}
  2560  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2561  	if cc, ok := cached.Expr.(cachedObject); ok {
  2562  		size += cc.CachedSize(true)
  2563  	}
  2564  	return size
  2565  }
  2566  func (cached *NotExpr) CachedSize(alloc bool) int64 {
  2567  	if cached == nil {
  2568  		return int64(0)
  2569  	}
  2570  	size := int64(0)
  2571  	if alloc {
  2572  		size += int64(16)
  2573  	}
  2574  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2575  	if cc, ok := cached.Expr.(cachedObject); ok {
  2576  		size += cc.CachedSize(true)
  2577  	}
  2578  	return size
  2579  }
  2580  func (cached *NtileExpr) CachedSize(alloc bool) int64 {
  2581  	if cached == nil {
  2582  		return int64(0)
  2583  	}
  2584  	size := int64(0)
  2585  	if alloc {
  2586  		size += int64(24)
  2587  	}
  2588  	// field N vitess.io/vitess/go/vt/sqlparser.Expr
  2589  	if cc, ok := cached.N.(cachedObject); ok {
  2590  		size += cc.CachedSize(true)
  2591  	}
  2592  	// field OverClause *vitess.io/vitess/go/vt/sqlparser.OverClause
  2593  	size += cached.OverClause.CachedSize(true)
  2594  	return size
  2595  }
  2596  func (cached *Offset) CachedSize(alloc bool) int64 {
  2597  	if cached == nil {
  2598  		return int64(0)
  2599  	}
  2600  	size := int64(0)
  2601  	if alloc {
  2602  		size += int64(24)
  2603  	}
  2604  	// field Original string
  2605  	size += hack.RuntimeAllocSize(int64(len(cached.Original)))
  2606  	return size
  2607  }
  2608  func (cached *OptLike) CachedSize(alloc bool) int64 {
  2609  	if cached == nil {
  2610  		return int64(0)
  2611  	}
  2612  	size := int64(0)
  2613  	if alloc {
  2614  		size += int64(32)
  2615  	}
  2616  	// field LikeTable vitess.io/vitess/go/vt/sqlparser.TableName
  2617  	size += cached.LikeTable.CachedSize(false)
  2618  	return size
  2619  }
  2620  func (cached *OrExpr) CachedSize(alloc bool) int64 {
  2621  	if cached == nil {
  2622  		return int64(0)
  2623  	}
  2624  	size := int64(0)
  2625  	if alloc {
  2626  		size += int64(32)
  2627  	}
  2628  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
  2629  	if cc, ok := cached.Left.(cachedObject); ok {
  2630  		size += cc.CachedSize(true)
  2631  	}
  2632  	// field Right vitess.io/vitess/go/vt/sqlparser.Expr
  2633  	if cc, ok := cached.Right.(cachedObject); ok {
  2634  		size += cc.CachedSize(true)
  2635  	}
  2636  	return size
  2637  }
  2638  func (cached *Order) CachedSize(alloc bool) int64 {
  2639  	if cached == nil {
  2640  		return int64(0)
  2641  	}
  2642  	size := int64(0)
  2643  	if alloc {
  2644  		size += int64(24)
  2645  	}
  2646  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2647  	if cc, ok := cached.Expr.(cachedObject); ok {
  2648  		size += cc.CachedSize(true)
  2649  	}
  2650  	return size
  2651  }
  2652  func (cached *OrderByOption) CachedSize(alloc bool) int64 {
  2653  	if cached == nil {
  2654  		return int64(0)
  2655  	}
  2656  	size := int64(0)
  2657  	if alloc {
  2658  		size += int64(24)
  2659  	}
  2660  	// field Cols vitess.io/vitess/go/vt/sqlparser.Columns
  2661  	{
  2662  		size += hack.RuntimeAllocSize(int64(cap(cached.Cols)) * int64(32))
  2663  		for _, elem := range cached.Cols {
  2664  			size += elem.CachedSize(false)
  2665  		}
  2666  	}
  2667  	return size
  2668  }
  2669  func (cached *OverClause) CachedSize(alloc bool) int64 {
  2670  	if cached == nil {
  2671  		return int64(0)
  2672  	}
  2673  	size := int64(0)
  2674  	if alloc {
  2675  		size += int64(48)
  2676  	}
  2677  	// field WindowName vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  2678  	size += cached.WindowName.CachedSize(false)
  2679  	// field WindowSpec *vitess.io/vitess/go/vt/sqlparser.WindowSpecification
  2680  	size += cached.WindowSpec.CachedSize(true)
  2681  	return size
  2682  }
  2683  func (cached *ParenTableExpr) CachedSize(alloc bool) int64 {
  2684  	if cached == nil {
  2685  		return int64(0)
  2686  	}
  2687  	size := int64(0)
  2688  	if alloc {
  2689  		size += int64(24)
  2690  	}
  2691  	// field Exprs vitess.io/vitess/go/vt/sqlparser.TableExprs
  2692  	{
  2693  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(16))
  2694  		for _, elem := range cached.Exprs {
  2695  			if cc, ok := elem.(cachedObject); ok {
  2696  				size += cc.CachedSize(true)
  2697  			}
  2698  		}
  2699  	}
  2700  	return size
  2701  }
  2702  func (cached *ParsedComments) CachedSize(alloc bool) int64 {
  2703  	if cached == nil {
  2704  		return int64(0)
  2705  	}
  2706  	size := int64(0)
  2707  	if alloc {
  2708  		size += int64(32)
  2709  	}
  2710  	// field comments vitess.io/vitess/go/vt/sqlparser.Comments
  2711  	{
  2712  		size += hack.RuntimeAllocSize(int64(cap(cached.comments)) * int64(16))
  2713  		for _, elem := range cached.comments {
  2714  			size += hack.RuntimeAllocSize(int64(len(elem)))
  2715  		}
  2716  	}
  2717  	// field _directives *vitess.io/vitess/go/vt/sqlparser.CommentDirectives
  2718  	size += cached._directives.CachedSize(true)
  2719  	return size
  2720  }
  2721  func (cached *ParsedQuery) CachedSize(alloc bool) int64 {
  2722  	if cached == nil {
  2723  		return int64(0)
  2724  	}
  2725  	size := int64(0)
  2726  	if alloc {
  2727  		size += int64(48)
  2728  	}
  2729  	// field Query string
  2730  	size += hack.RuntimeAllocSize(int64(len(cached.Query)))
  2731  	// field bindLocations []vitess.io/vitess/go/vt/sqlparser.bindLocation
  2732  	{
  2733  		size += hack.RuntimeAllocSize(int64(cap(cached.bindLocations)) * int64(16))
  2734  	}
  2735  	return size
  2736  }
  2737  func (cached *PartitionDefinition) CachedSize(alloc bool) int64 {
  2738  	if cached == nil {
  2739  		return int64(0)
  2740  	}
  2741  	size := int64(0)
  2742  	if alloc {
  2743  		size += int64(48)
  2744  	}
  2745  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  2746  	size += cached.Name.CachedSize(false)
  2747  	// field Options *vitess.io/vitess/go/vt/sqlparser.PartitionDefinitionOptions
  2748  	size += cached.Options.CachedSize(true)
  2749  	return size
  2750  }
  2751  func (cached *PartitionDefinitionOptions) CachedSize(alloc bool) int64 {
  2752  	if cached == nil {
  2753  		return int64(0)
  2754  	}
  2755  	size := int64(0)
  2756  	if alloc {
  2757  		size += int64(96)
  2758  	}
  2759  	// field ValueRange *vitess.io/vitess/go/vt/sqlparser.PartitionValueRange
  2760  	size += cached.ValueRange.CachedSize(true)
  2761  	// field Comment *vitess.io/vitess/go/vt/sqlparser.Literal
  2762  	size += cached.Comment.CachedSize(true)
  2763  	// field Engine *vitess.io/vitess/go/vt/sqlparser.PartitionEngine
  2764  	size += cached.Engine.CachedSize(true)
  2765  	// field DataDirectory *vitess.io/vitess/go/vt/sqlparser.Literal
  2766  	size += cached.DataDirectory.CachedSize(true)
  2767  	// field IndexDirectory *vitess.io/vitess/go/vt/sqlparser.Literal
  2768  	size += cached.IndexDirectory.CachedSize(true)
  2769  	// field MaxRows *int
  2770  	size += hack.RuntimeAllocSize(int64(8))
  2771  	// field MinRows *int
  2772  	size += hack.RuntimeAllocSize(int64(8))
  2773  	// field TableSpace string
  2774  	size += hack.RuntimeAllocSize(int64(len(cached.TableSpace)))
  2775  	// field SubPartitionDefinitions vitess.io/vitess/go/vt/sqlparser.SubPartitionDefinitions
  2776  	{
  2777  		size += hack.RuntimeAllocSize(int64(cap(cached.SubPartitionDefinitions)) * int64(8))
  2778  		for _, elem := range cached.SubPartitionDefinitions {
  2779  			size += elem.CachedSize(true)
  2780  		}
  2781  	}
  2782  	return size
  2783  }
  2784  func (cached *PartitionEngine) CachedSize(alloc bool) int64 {
  2785  	if cached == nil {
  2786  		return int64(0)
  2787  	}
  2788  	size := int64(0)
  2789  	if alloc {
  2790  		size += int64(24)
  2791  	}
  2792  	// field Name string
  2793  	size += hack.RuntimeAllocSize(int64(len(cached.Name)))
  2794  	return size
  2795  }
  2796  func (cached *PartitionOption) CachedSize(alloc bool) int64 {
  2797  	if cached == nil {
  2798  		return int64(0)
  2799  	}
  2800  	size := int64(0)
  2801  	if alloc {
  2802  		size += int64(96)
  2803  	}
  2804  	// field ColList vitess.io/vitess/go/vt/sqlparser.Columns
  2805  	{
  2806  		size += hack.RuntimeAllocSize(int64(cap(cached.ColList)) * int64(32))
  2807  		for _, elem := range cached.ColList {
  2808  			size += elem.CachedSize(false)
  2809  		}
  2810  	}
  2811  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2812  	if cc, ok := cached.Expr.(cachedObject); ok {
  2813  		size += cc.CachedSize(true)
  2814  	}
  2815  	// field SubPartition *vitess.io/vitess/go/vt/sqlparser.SubPartition
  2816  	size += cached.SubPartition.CachedSize(true)
  2817  	// field Definitions []*vitess.io/vitess/go/vt/sqlparser.PartitionDefinition
  2818  	{
  2819  		size += hack.RuntimeAllocSize(int64(cap(cached.Definitions)) * int64(8))
  2820  		for _, elem := range cached.Definitions {
  2821  			size += elem.CachedSize(true)
  2822  		}
  2823  	}
  2824  	return size
  2825  }
  2826  func (cached *PartitionSpec) CachedSize(alloc bool) int64 {
  2827  	if cached == nil {
  2828  		return int64(0)
  2829  	}
  2830  	size := int64(0)
  2831  	if alloc {
  2832  		size += int64(112)
  2833  	}
  2834  	// field Names vitess.io/vitess/go/vt/sqlparser.Partitions
  2835  	{
  2836  		size += hack.RuntimeAllocSize(int64(cap(cached.Names)) * int64(32))
  2837  		for _, elem := range cached.Names {
  2838  			size += elem.CachedSize(false)
  2839  		}
  2840  	}
  2841  	// field Number *vitess.io/vitess/go/vt/sqlparser.Literal
  2842  	size += cached.Number.CachedSize(true)
  2843  	// field TableName vitess.io/vitess/go/vt/sqlparser.TableName
  2844  	size += cached.TableName.CachedSize(false)
  2845  	// field Definitions []*vitess.io/vitess/go/vt/sqlparser.PartitionDefinition
  2846  	{
  2847  		size += hack.RuntimeAllocSize(int64(cap(cached.Definitions)) * int64(8))
  2848  		for _, elem := range cached.Definitions {
  2849  			size += elem.CachedSize(true)
  2850  		}
  2851  	}
  2852  	return size
  2853  }
  2854  func (cached *PartitionValueRange) CachedSize(alloc bool) int64 {
  2855  	if cached == nil {
  2856  		return int64(0)
  2857  	}
  2858  	size := int64(0)
  2859  	if alloc {
  2860  		size += int64(48)
  2861  	}
  2862  	// field Range vitess.io/vitess/go/vt/sqlparser.ValTuple
  2863  	{
  2864  		size += hack.RuntimeAllocSize(int64(cap(cached.Range)) * int64(16))
  2865  		for _, elem := range cached.Range {
  2866  			if cc, ok := elem.(cachedObject); ok {
  2867  				size += cc.CachedSize(true)
  2868  			}
  2869  		}
  2870  	}
  2871  	return size
  2872  }
  2873  func (cached *PerformanceSchemaFuncExpr) CachedSize(alloc bool) int64 {
  2874  	if cached == nil {
  2875  		return int64(0)
  2876  	}
  2877  	size := int64(0)
  2878  	if alloc {
  2879  		size += int64(24)
  2880  	}
  2881  	// field Argument vitess.io/vitess/go/vt/sqlparser.Expr
  2882  	if cc, ok := cached.Argument.(cachedObject); ok {
  2883  		size += cc.CachedSize(true)
  2884  	}
  2885  	return size
  2886  }
  2887  func (cached *PrepareStmt) CachedSize(alloc bool) int64 {
  2888  	if cached == nil {
  2889  		return int64(0)
  2890  	}
  2891  	size := int64(0)
  2892  	if alloc {
  2893  		size += int64(64)
  2894  	}
  2895  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  2896  	size += cached.Name.CachedSize(false)
  2897  	// field Statement vitess.io/vitess/go/vt/sqlparser.Expr
  2898  	if cc, ok := cached.Statement.(cachedObject); ok {
  2899  		size += cc.CachedSize(true)
  2900  	}
  2901  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  2902  	size += cached.Comments.CachedSize(true)
  2903  	return size
  2904  }
  2905  func (cached *ReferenceDefinition) CachedSize(alloc bool) int64 {
  2906  	if cached == nil {
  2907  		return int64(0)
  2908  	}
  2909  	size := int64(0)
  2910  	if alloc {
  2911  		size += int64(80)
  2912  	}
  2913  	// field ReferencedTable vitess.io/vitess/go/vt/sqlparser.TableName
  2914  	size += cached.ReferencedTable.CachedSize(false)
  2915  	// field ReferencedColumns vitess.io/vitess/go/vt/sqlparser.Columns
  2916  	{
  2917  		size += hack.RuntimeAllocSize(int64(cap(cached.ReferencedColumns)) * int64(32))
  2918  		for _, elem := range cached.ReferencedColumns {
  2919  			size += elem.CachedSize(false)
  2920  		}
  2921  	}
  2922  	return size
  2923  }
  2924  func (cached *RegexpInstrExpr) CachedSize(alloc bool) int64 {
  2925  	if cached == nil {
  2926  		return int64(0)
  2927  	}
  2928  	size := int64(0)
  2929  	if alloc {
  2930  		size += int64(96)
  2931  	}
  2932  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2933  	if cc, ok := cached.Expr.(cachedObject); ok {
  2934  		size += cc.CachedSize(true)
  2935  	}
  2936  	// field Pattern vitess.io/vitess/go/vt/sqlparser.Expr
  2937  	if cc, ok := cached.Pattern.(cachedObject); ok {
  2938  		size += cc.CachedSize(true)
  2939  	}
  2940  	// field Position vitess.io/vitess/go/vt/sqlparser.Expr
  2941  	if cc, ok := cached.Position.(cachedObject); ok {
  2942  		size += cc.CachedSize(true)
  2943  	}
  2944  	// field Occurrence vitess.io/vitess/go/vt/sqlparser.Expr
  2945  	if cc, ok := cached.Occurrence.(cachedObject); ok {
  2946  		size += cc.CachedSize(true)
  2947  	}
  2948  	// field ReturnOption vitess.io/vitess/go/vt/sqlparser.Expr
  2949  	if cc, ok := cached.ReturnOption.(cachedObject); ok {
  2950  		size += cc.CachedSize(true)
  2951  	}
  2952  	// field MatchType vitess.io/vitess/go/vt/sqlparser.Expr
  2953  	if cc, ok := cached.MatchType.(cachedObject); ok {
  2954  		size += cc.CachedSize(true)
  2955  	}
  2956  	return size
  2957  }
  2958  func (cached *RegexpLikeExpr) CachedSize(alloc bool) int64 {
  2959  	if cached == nil {
  2960  		return int64(0)
  2961  	}
  2962  	size := int64(0)
  2963  	if alloc {
  2964  		size += int64(48)
  2965  	}
  2966  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2967  	if cc, ok := cached.Expr.(cachedObject); ok {
  2968  		size += cc.CachedSize(true)
  2969  	}
  2970  	// field Pattern vitess.io/vitess/go/vt/sqlparser.Expr
  2971  	if cc, ok := cached.Pattern.(cachedObject); ok {
  2972  		size += cc.CachedSize(true)
  2973  	}
  2974  	// field MatchType vitess.io/vitess/go/vt/sqlparser.Expr
  2975  	if cc, ok := cached.MatchType.(cachedObject); ok {
  2976  		size += cc.CachedSize(true)
  2977  	}
  2978  	return size
  2979  }
  2980  func (cached *RegexpReplaceExpr) CachedSize(alloc bool) int64 {
  2981  	if cached == nil {
  2982  		return int64(0)
  2983  	}
  2984  	size := int64(0)
  2985  	if alloc {
  2986  		size += int64(96)
  2987  	}
  2988  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  2989  	if cc, ok := cached.Expr.(cachedObject); ok {
  2990  		size += cc.CachedSize(true)
  2991  	}
  2992  	// field Pattern vitess.io/vitess/go/vt/sqlparser.Expr
  2993  	if cc, ok := cached.Pattern.(cachedObject); ok {
  2994  		size += cc.CachedSize(true)
  2995  	}
  2996  	// field Repl vitess.io/vitess/go/vt/sqlparser.Expr
  2997  	if cc, ok := cached.Repl.(cachedObject); ok {
  2998  		size += cc.CachedSize(true)
  2999  	}
  3000  	// field Occurrence vitess.io/vitess/go/vt/sqlparser.Expr
  3001  	if cc, ok := cached.Occurrence.(cachedObject); ok {
  3002  		size += cc.CachedSize(true)
  3003  	}
  3004  	// field Position vitess.io/vitess/go/vt/sqlparser.Expr
  3005  	if cc, ok := cached.Position.(cachedObject); ok {
  3006  		size += cc.CachedSize(true)
  3007  	}
  3008  	// field MatchType vitess.io/vitess/go/vt/sqlparser.Expr
  3009  	if cc, ok := cached.MatchType.(cachedObject); ok {
  3010  		size += cc.CachedSize(true)
  3011  	}
  3012  	return size
  3013  }
  3014  func (cached *RegexpSubstrExpr) CachedSize(alloc bool) int64 {
  3015  	if cached == nil {
  3016  		return int64(0)
  3017  	}
  3018  	size := int64(0)
  3019  	if alloc {
  3020  		size += int64(80)
  3021  	}
  3022  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  3023  	if cc, ok := cached.Expr.(cachedObject); ok {
  3024  		size += cc.CachedSize(true)
  3025  	}
  3026  	// field Pattern vitess.io/vitess/go/vt/sqlparser.Expr
  3027  	if cc, ok := cached.Pattern.(cachedObject); ok {
  3028  		size += cc.CachedSize(true)
  3029  	}
  3030  	// field Occurrence vitess.io/vitess/go/vt/sqlparser.Expr
  3031  	if cc, ok := cached.Occurrence.(cachedObject); ok {
  3032  		size += cc.CachedSize(true)
  3033  	}
  3034  	// field Position vitess.io/vitess/go/vt/sqlparser.Expr
  3035  	if cc, ok := cached.Position.(cachedObject); ok {
  3036  		size += cc.CachedSize(true)
  3037  	}
  3038  	// field MatchType vitess.io/vitess/go/vt/sqlparser.Expr
  3039  	if cc, ok := cached.MatchType.(cachedObject); ok {
  3040  		size += cc.CachedSize(true)
  3041  	}
  3042  	return size
  3043  }
  3044  func (cached *Release) CachedSize(alloc bool) int64 {
  3045  	if cached == nil {
  3046  		return int64(0)
  3047  	}
  3048  	size := int64(0)
  3049  	if alloc {
  3050  		size += int64(32)
  3051  	}
  3052  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3053  	size += cached.Name.CachedSize(false)
  3054  	return size
  3055  }
  3056  func (cached *RenameColumn) CachedSize(alloc bool) int64 {
  3057  	if cached == nil {
  3058  		return int64(0)
  3059  	}
  3060  	size := int64(0)
  3061  	if alloc {
  3062  		size += int64(16)
  3063  	}
  3064  	// field OldName *vitess.io/vitess/go/vt/sqlparser.ColName
  3065  	size += cached.OldName.CachedSize(true)
  3066  	// field NewName *vitess.io/vitess/go/vt/sqlparser.ColName
  3067  	size += cached.NewName.CachedSize(true)
  3068  	return size
  3069  }
  3070  func (cached *RenameIndex) CachedSize(alloc bool) int64 {
  3071  	if cached == nil {
  3072  		return int64(0)
  3073  	}
  3074  	size := int64(0)
  3075  	if alloc {
  3076  		size += int64(64)
  3077  	}
  3078  	// field OldName vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3079  	size += cached.OldName.CachedSize(false)
  3080  	// field NewName vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3081  	size += cached.NewName.CachedSize(false)
  3082  	return size
  3083  }
  3084  func (cached *RenameTable) CachedSize(alloc bool) int64 {
  3085  	if cached == nil {
  3086  		return int64(0)
  3087  	}
  3088  	size := int64(0)
  3089  	if alloc {
  3090  		size += int64(24)
  3091  	}
  3092  	// field TablePairs []*vitess.io/vitess/go/vt/sqlparser.RenameTablePair
  3093  	{
  3094  		size += hack.RuntimeAllocSize(int64(cap(cached.TablePairs)) * int64(8))
  3095  		for _, elem := range cached.TablePairs {
  3096  			size += elem.CachedSize(true)
  3097  		}
  3098  	}
  3099  	return size
  3100  }
  3101  func (cached *RenameTableName) CachedSize(alloc bool) int64 {
  3102  	if cached == nil {
  3103  		return int64(0)
  3104  	}
  3105  	size := int64(0)
  3106  	if alloc {
  3107  		size += int64(32)
  3108  	}
  3109  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
  3110  	size += cached.Table.CachedSize(false)
  3111  	return size
  3112  }
  3113  func (cached *RenameTablePair) CachedSize(alloc bool) int64 {
  3114  	if cached == nil {
  3115  		return int64(0)
  3116  	}
  3117  	size := int64(0)
  3118  	if alloc {
  3119  		size += int64(64)
  3120  	}
  3121  	// field FromTable vitess.io/vitess/go/vt/sqlparser.TableName
  3122  	size += cached.FromTable.CachedSize(false)
  3123  	// field ToTable vitess.io/vitess/go/vt/sqlparser.TableName
  3124  	size += cached.ToTable.CachedSize(false)
  3125  	return size
  3126  }
  3127  func (cached *RevertMigration) CachedSize(alloc bool) int64 {
  3128  	if cached == nil {
  3129  		return int64(0)
  3130  	}
  3131  	size := int64(0)
  3132  	if alloc {
  3133  		size += int64(24)
  3134  	}
  3135  	// field UUID string
  3136  	size += hack.RuntimeAllocSize(int64(len(cached.UUID)))
  3137  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3138  	size += cached.Comments.CachedSize(true)
  3139  	return size
  3140  }
  3141  func (cached *SRollback) CachedSize(alloc bool) int64 {
  3142  	if cached == nil {
  3143  		return int64(0)
  3144  	}
  3145  	size := int64(0)
  3146  	if alloc {
  3147  		size += int64(32)
  3148  	}
  3149  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3150  	size += cached.Name.CachedSize(false)
  3151  	return size
  3152  }
  3153  func (cached *Savepoint) CachedSize(alloc bool) int64 {
  3154  	if cached == nil {
  3155  		return int64(0)
  3156  	}
  3157  	size := int64(0)
  3158  	if alloc {
  3159  		size += int64(32)
  3160  	}
  3161  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3162  	size += cached.Name.CachedSize(false)
  3163  	return size
  3164  }
  3165  func (cached *Select) CachedSize(alloc bool) int64 {
  3166  	if cached == nil {
  3167  		return int64(0)
  3168  	}
  3169  	size := int64(0)
  3170  	if alloc {
  3171  		size += int64(192)
  3172  	}
  3173  	// field Cache *bool
  3174  	size += hack.RuntimeAllocSize(int64(1))
  3175  	// field From []vitess.io/vitess/go/vt/sqlparser.TableExpr
  3176  	{
  3177  		size += hack.RuntimeAllocSize(int64(cap(cached.From)) * int64(16))
  3178  		for _, elem := range cached.From {
  3179  			if cc, ok := elem.(cachedObject); ok {
  3180  				size += cc.CachedSize(true)
  3181  			}
  3182  		}
  3183  	}
  3184  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3185  	size += cached.Comments.CachedSize(true)
  3186  	// field SelectExprs vitess.io/vitess/go/vt/sqlparser.SelectExprs
  3187  	{
  3188  		size += hack.RuntimeAllocSize(int64(cap(cached.SelectExprs)) * int64(16))
  3189  		for _, elem := range cached.SelectExprs {
  3190  			if cc, ok := elem.(cachedObject); ok {
  3191  				size += cc.CachedSize(true)
  3192  			}
  3193  		}
  3194  	}
  3195  	// field Where *vitess.io/vitess/go/vt/sqlparser.Where
  3196  	size += cached.Where.CachedSize(true)
  3197  	// field With *vitess.io/vitess/go/vt/sqlparser.With
  3198  	size += cached.With.CachedSize(true)
  3199  	// field GroupBy vitess.io/vitess/go/vt/sqlparser.GroupBy
  3200  	{
  3201  		size += hack.RuntimeAllocSize(int64(cap(cached.GroupBy)) * int64(16))
  3202  		for _, elem := range cached.GroupBy {
  3203  			if cc, ok := elem.(cachedObject); ok {
  3204  				size += cc.CachedSize(true)
  3205  			}
  3206  		}
  3207  	}
  3208  	// field Having *vitess.io/vitess/go/vt/sqlparser.Where
  3209  	size += cached.Having.CachedSize(true)
  3210  	// field Windows vitess.io/vitess/go/vt/sqlparser.NamedWindows
  3211  	{
  3212  		size += hack.RuntimeAllocSize(int64(cap(cached.Windows)) * int64(8))
  3213  		for _, elem := range cached.Windows {
  3214  			size += elem.CachedSize(true)
  3215  		}
  3216  	}
  3217  	// field OrderBy vitess.io/vitess/go/vt/sqlparser.OrderBy
  3218  	{
  3219  		size += hack.RuntimeAllocSize(int64(cap(cached.OrderBy)) * int64(8))
  3220  		for _, elem := range cached.OrderBy {
  3221  			size += elem.CachedSize(true)
  3222  		}
  3223  	}
  3224  	// field Limit *vitess.io/vitess/go/vt/sqlparser.Limit
  3225  	size += cached.Limit.CachedSize(true)
  3226  	// field Into *vitess.io/vitess/go/vt/sqlparser.SelectInto
  3227  	size += cached.Into.CachedSize(true)
  3228  	return size
  3229  }
  3230  func (cached *SelectInto) CachedSize(alloc bool) int64 {
  3231  	if cached == nil {
  3232  		return int64(0)
  3233  	}
  3234  	size := int64(0)
  3235  	if alloc {
  3236  		size += int64(112)
  3237  	}
  3238  	// field FileName string
  3239  	size += hack.RuntimeAllocSize(int64(len(cached.FileName)))
  3240  	// field Charset vitess.io/vitess/go/vt/sqlparser.ColumnCharset
  3241  	size += cached.Charset.CachedSize(false)
  3242  	// field FormatOption string
  3243  	size += hack.RuntimeAllocSize(int64(len(cached.FormatOption)))
  3244  	// field ExportOption string
  3245  	size += hack.RuntimeAllocSize(int64(len(cached.ExportOption)))
  3246  	// field Manifest string
  3247  	size += hack.RuntimeAllocSize(int64(len(cached.Manifest)))
  3248  	// field Overwrite string
  3249  	size += hack.RuntimeAllocSize(int64(len(cached.Overwrite)))
  3250  	return size
  3251  }
  3252  func (cached *Set) CachedSize(alloc bool) int64 {
  3253  	if cached == nil {
  3254  		return int64(0)
  3255  	}
  3256  	size := int64(0)
  3257  	if alloc {
  3258  		size += int64(32)
  3259  	}
  3260  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3261  	size += cached.Comments.CachedSize(true)
  3262  	// field Exprs vitess.io/vitess/go/vt/sqlparser.SetExprs
  3263  	{
  3264  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(8))
  3265  		for _, elem := range cached.Exprs {
  3266  			size += elem.CachedSize(true)
  3267  		}
  3268  	}
  3269  	return size
  3270  }
  3271  func (cached *SetExpr) CachedSize(alloc bool) int64 {
  3272  	if cached == nil {
  3273  		return int64(0)
  3274  	}
  3275  	size := int64(0)
  3276  	if alloc {
  3277  		size += int64(24)
  3278  	}
  3279  	// field Var *vitess.io/vitess/go/vt/sqlparser.Variable
  3280  	size += cached.Var.CachedSize(true)
  3281  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  3282  	if cc, ok := cached.Expr.(cachedObject); ok {
  3283  		size += cc.CachedSize(true)
  3284  	}
  3285  	return size
  3286  }
  3287  func (cached *Show) CachedSize(alloc bool) int64 {
  3288  	if cached == nil {
  3289  		return int64(0)
  3290  	}
  3291  	size := int64(0)
  3292  	if alloc {
  3293  		size += int64(16)
  3294  	}
  3295  	// field Internal vitess.io/vitess/go/vt/sqlparser.ShowInternal
  3296  	if cc, ok := cached.Internal.(cachedObject); ok {
  3297  		size += cc.CachedSize(true)
  3298  	}
  3299  	return size
  3300  }
  3301  func (cached *ShowBasic) CachedSize(alloc bool) int64 {
  3302  	if cached == nil {
  3303  		return int64(0)
  3304  	}
  3305  	size := int64(0)
  3306  	if alloc {
  3307  		size += int64(64)
  3308  	}
  3309  	// field Tbl vitess.io/vitess/go/vt/sqlparser.TableName
  3310  	size += cached.Tbl.CachedSize(false)
  3311  	// field DbName vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  3312  	size += cached.DbName.CachedSize(false)
  3313  	// field Filter *vitess.io/vitess/go/vt/sqlparser.ShowFilter
  3314  	size += cached.Filter.CachedSize(true)
  3315  	return size
  3316  }
  3317  func (cached *ShowCreate) CachedSize(alloc bool) int64 {
  3318  	if cached == nil {
  3319  		return int64(0)
  3320  	}
  3321  	size := int64(0)
  3322  	if alloc {
  3323  		size += int64(48)
  3324  	}
  3325  	// field Op vitess.io/vitess/go/vt/sqlparser.TableName
  3326  	size += cached.Op.CachedSize(false)
  3327  	return size
  3328  }
  3329  func (cached *ShowFilter) CachedSize(alloc bool) int64 {
  3330  	if cached == nil {
  3331  		return int64(0)
  3332  	}
  3333  	size := int64(0)
  3334  	if alloc {
  3335  		size += int64(32)
  3336  	}
  3337  	// field Like string
  3338  	size += hack.RuntimeAllocSize(int64(len(cached.Like)))
  3339  	// field Filter vitess.io/vitess/go/vt/sqlparser.Expr
  3340  	if cc, ok := cached.Filter.(cachedObject); ok {
  3341  		size += cc.CachedSize(true)
  3342  	}
  3343  	return size
  3344  }
  3345  func (cached *ShowMigrationLogs) CachedSize(alloc bool) int64 {
  3346  	if cached == nil {
  3347  		return int64(0)
  3348  	}
  3349  	size := int64(0)
  3350  	if alloc {
  3351  		size += int64(24)
  3352  	}
  3353  	// field UUID string
  3354  	size += hack.RuntimeAllocSize(int64(len(cached.UUID)))
  3355  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3356  	size += cached.Comments.CachedSize(true)
  3357  	return size
  3358  }
  3359  func (cached *ShowOther) CachedSize(alloc bool) int64 {
  3360  	if cached == nil {
  3361  		return int64(0)
  3362  	}
  3363  	size := int64(0)
  3364  	if alloc {
  3365  		size += int64(16)
  3366  	}
  3367  	// field Command string
  3368  	size += hack.RuntimeAllocSize(int64(len(cached.Command)))
  3369  	return size
  3370  }
  3371  func (cached *ShowThrottledApps) CachedSize(alloc bool) int64 {
  3372  	if cached == nil {
  3373  		return int64(0)
  3374  	}
  3375  	size := int64(0)
  3376  	if alloc {
  3377  		size += int64(24)
  3378  	}
  3379  	// field Comments vitess.io/vitess/go/vt/sqlparser.Comments
  3380  	{
  3381  		size += hack.RuntimeAllocSize(int64(cap(cached.Comments)) * int64(16))
  3382  		for _, elem := range cached.Comments {
  3383  			size += hack.RuntimeAllocSize(int64(len(elem)))
  3384  		}
  3385  	}
  3386  	return size
  3387  }
  3388  func (cached *ShowThrottlerStatus) CachedSize(alloc bool) int64 {
  3389  	if cached == nil {
  3390  		return int64(0)
  3391  	}
  3392  	size := int64(0)
  3393  	if alloc {
  3394  		size += int64(24)
  3395  	}
  3396  	// field Comments vitess.io/vitess/go/vt/sqlparser.Comments
  3397  	{
  3398  		size += hack.RuntimeAllocSize(int64(cap(cached.Comments)) * int64(16))
  3399  		for _, elem := range cached.Comments {
  3400  			size += hack.RuntimeAllocSize(int64(len(elem)))
  3401  		}
  3402  	}
  3403  	return size
  3404  }
  3405  func (cached *StarExpr) CachedSize(alloc bool) int64 {
  3406  	if cached == nil {
  3407  		return int64(0)
  3408  	}
  3409  	size := int64(0)
  3410  	if alloc {
  3411  		size += int64(32)
  3412  	}
  3413  	// field TableName vitess.io/vitess/go/vt/sqlparser.TableName
  3414  	size += cached.TableName.CachedSize(false)
  3415  	return size
  3416  }
  3417  func (cached *Std) CachedSize(alloc bool) int64 {
  3418  	if cached == nil {
  3419  		return int64(0)
  3420  	}
  3421  	size := int64(0)
  3422  	if alloc {
  3423  		size += int64(16)
  3424  	}
  3425  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3426  	if cc, ok := cached.Arg.(cachedObject); ok {
  3427  		size += cc.CachedSize(true)
  3428  	}
  3429  	return size
  3430  }
  3431  func (cached *StdDev) CachedSize(alloc bool) int64 {
  3432  	if cached == nil {
  3433  		return int64(0)
  3434  	}
  3435  	size := int64(0)
  3436  	if alloc {
  3437  		size += int64(16)
  3438  	}
  3439  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3440  	if cc, ok := cached.Arg.(cachedObject); ok {
  3441  		size += cc.CachedSize(true)
  3442  	}
  3443  	return size
  3444  }
  3445  func (cached *StdPop) CachedSize(alloc bool) int64 {
  3446  	if cached == nil {
  3447  		return int64(0)
  3448  	}
  3449  	size := int64(0)
  3450  	if alloc {
  3451  		size += int64(16)
  3452  	}
  3453  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3454  	if cc, ok := cached.Arg.(cachedObject); ok {
  3455  		size += cc.CachedSize(true)
  3456  	}
  3457  	return size
  3458  }
  3459  func (cached *StdSamp) CachedSize(alloc bool) int64 {
  3460  	if cached == nil {
  3461  		return int64(0)
  3462  	}
  3463  	size := int64(0)
  3464  	if alloc {
  3465  		size += int64(16)
  3466  	}
  3467  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3468  	if cc, ok := cached.Arg.(cachedObject); ok {
  3469  		size += cc.CachedSize(true)
  3470  	}
  3471  	return size
  3472  }
  3473  func (cached *Stream) CachedSize(alloc bool) int64 {
  3474  	if cached == nil {
  3475  		return int64(0)
  3476  	}
  3477  	size := int64(0)
  3478  	if alloc {
  3479  		size += int64(64)
  3480  	}
  3481  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3482  	size += cached.Comments.CachedSize(true)
  3483  	// field SelectExpr vitess.io/vitess/go/vt/sqlparser.SelectExpr
  3484  	if cc, ok := cached.SelectExpr.(cachedObject); ok {
  3485  		size += cc.CachedSize(true)
  3486  	}
  3487  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
  3488  	size += cached.Table.CachedSize(false)
  3489  	return size
  3490  }
  3491  func (cached *SubPartition) CachedSize(alloc bool) int64 {
  3492  	if cached == nil {
  3493  		return int64(0)
  3494  	}
  3495  	size := int64(0)
  3496  	if alloc {
  3497  		size += int64(64)
  3498  	}
  3499  	// field ColList vitess.io/vitess/go/vt/sqlparser.Columns
  3500  	{
  3501  		size += hack.RuntimeAllocSize(int64(cap(cached.ColList)) * int64(32))
  3502  		for _, elem := range cached.ColList {
  3503  			size += elem.CachedSize(false)
  3504  		}
  3505  	}
  3506  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  3507  	if cc, ok := cached.Expr.(cachedObject); ok {
  3508  		size += cc.CachedSize(true)
  3509  	}
  3510  	return size
  3511  }
  3512  func (cached *SubPartitionDefinition) CachedSize(alloc bool) int64 {
  3513  	if cached == nil {
  3514  		return int64(0)
  3515  	}
  3516  	size := int64(0)
  3517  	if alloc {
  3518  		size += int64(48)
  3519  	}
  3520  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3521  	size += cached.Name.CachedSize(false)
  3522  	// field Options *vitess.io/vitess/go/vt/sqlparser.SubPartitionDefinitionOptions
  3523  	size += cached.Options.CachedSize(true)
  3524  	return size
  3525  }
  3526  func (cached *SubPartitionDefinitionOptions) CachedSize(alloc bool) int64 {
  3527  	if cached == nil {
  3528  		return int64(0)
  3529  	}
  3530  	size := int64(0)
  3531  	if alloc {
  3532  		size += int64(64)
  3533  	}
  3534  	// field Comment *vitess.io/vitess/go/vt/sqlparser.Literal
  3535  	size += cached.Comment.CachedSize(true)
  3536  	// field Engine *vitess.io/vitess/go/vt/sqlparser.PartitionEngine
  3537  	size += cached.Engine.CachedSize(true)
  3538  	// field DataDirectory *vitess.io/vitess/go/vt/sqlparser.Literal
  3539  	size += cached.DataDirectory.CachedSize(true)
  3540  	// field IndexDirectory *vitess.io/vitess/go/vt/sqlparser.Literal
  3541  	size += cached.IndexDirectory.CachedSize(true)
  3542  	// field MaxRows *int
  3543  	size += hack.RuntimeAllocSize(int64(8))
  3544  	// field MinRows *int
  3545  	size += hack.RuntimeAllocSize(int64(8))
  3546  	// field TableSpace string
  3547  	size += hack.RuntimeAllocSize(int64(len(cached.TableSpace)))
  3548  	return size
  3549  }
  3550  func (cached *Subquery) CachedSize(alloc bool) int64 {
  3551  	if cached == nil {
  3552  		return int64(0)
  3553  	}
  3554  	size := int64(0)
  3555  	if alloc {
  3556  		size += int64(16)
  3557  	}
  3558  	// field Select vitess.io/vitess/go/vt/sqlparser.SelectStatement
  3559  	if cc, ok := cached.Select.(cachedObject); ok {
  3560  		size += cc.CachedSize(true)
  3561  	}
  3562  	return size
  3563  }
  3564  func (cached *SubstrExpr) CachedSize(alloc bool) int64 {
  3565  	if cached == nil {
  3566  		return int64(0)
  3567  	}
  3568  	size := int64(0)
  3569  	if alloc {
  3570  		size += int64(48)
  3571  	}
  3572  	// field Name vitess.io/vitess/go/vt/sqlparser.Expr
  3573  	if cc, ok := cached.Name.(cachedObject); ok {
  3574  		size += cc.CachedSize(true)
  3575  	}
  3576  	// field From vitess.io/vitess/go/vt/sqlparser.Expr
  3577  	if cc, ok := cached.From.(cachedObject); ok {
  3578  		size += cc.CachedSize(true)
  3579  	}
  3580  	// field To vitess.io/vitess/go/vt/sqlparser.Expr
  3581  	if cc, ok := cached.To.(cachedObject); ok {
  3582  		size += cc.CachedSize(true)
  3583  	}
  3584  	return size
  3585  }
  3586  func (cached *Sum) CachedSize(alloc bool) int64 {
  3587  	if cached == nil {
  3588  		return int64(0)
  3589  	}
  3590  	size := int64(0)
  3591  	if alloc {
  3592  		size += int64(24)
  3593  	}
  3594  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3595  	if cc, ok := cached.Arg.(cachedObject); ok {
  3596  		size += cc.CachedSize(true)
  3597  	}
  3598  	return size
  3599  }
  3600  func (cached *TableAndLockType) CachedSize(alloc bool) int64 {
  3601  	if cached == nil {
  3602  		return int64(0)
  3603  	}
  3604  	size := int64(0)
  3605  	if alloc {
  3606  		size += int64(24)
  3607  	}
  3608  	// field Table vitess.io/vitess/go/vt/sqlparser.TableExpr
  3609  	if cc, ok := cached.Table.(cachedObject); ok {
  3610  		size += cc.CachedSize(true)
  3611  	}
  3612  	return size
  3613  }
  3614  func (cached *TableName) CachedSize(alloc bool) int64 {
  3615  	if cached == nil {
  3616  		return int64(0)
  3617  	}
  3618  	size := int64(0)
  3619  	if alloc {
  3620  		size += int64(32)
  3621  	}
  3622  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  3623  	size += cached.Name.CachedSize(false)
  3624  	// field Qualifier vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  3625  	size += cached.Qualifier.CachedSize(false)
  3626  	return size
  3627  }
  3628  func (cached *TableOption) CachedSize(alloc bool) int64 {
  3629  	if cached == nil {
  3630  		return int64(0)
  3631  	}
  3632  	size := int64(0)
  3633  	if alloc {
  3634  		size += int64(80)
  3635  	}
  3636  	// field Name string
  3637  	size += hack.RuntimeAllocSize(int64(len(cached.Name)))
  3638  	// field Value *vitess.io/vitess/go/vt/sqlparser.Literal
  3639  	size += cached.Value.CachedSize(true)
  3640  	// field String string
  3641  	size += hack.RuntimeAllocSize(int64(len(cached.String)))
  3642  	// field Tables vitess.io/vitess/go/vt/sqlparser.TableNames
  3643  	{
  3644  		size += hack.RuntimeAllocSize(int64(cap(cached.Tables)) * int64(32))
  3645  		for _, elem := range cached.Tables {
  3646  			size += elem.CachedSize(false)
  3647  		}
  3648  	}
  3649  	return size
  3650  }
  3651  func (cached *TableSpec) CachedSize(alloc bool) int64 {
  3652  	if cached == nil {
  3653  		return int64(0)
  3654  	}
  3655  	size := int64(0)
  3656  	if alloc {
  3657  		size += int64(112)
  3658  	}
  3659  	// field Columns []*vitess.io/vitess/go/vt/sqlparser.ColumnDefinition
  3660  	{
  3661  		size += hack.RuntimeAllocSize(int64(cap(cached.Columns)) * int64(8))
  3662  		for _, elem := range cached.Columns {
  3663  			size += elem.CachedSize(true)
  3664  		}
  3665  	}
  3666  	// field Indexes []*vitess.io/vitess/go/vt/sqlparser.IndexDefinition
  3667  	{
  3668  		size += hack.RuntimeAllocSize(int64(cap(cached.Indexes)) * int64(8))
  3669  		for _, elem := range cached.Indexes {
  3670  			size += elem.CachedSize(true)
  3671  		}
  3672  	}
  3673  	// field Constraints []*vitess.io/vitess/go/vt/sqlparser.ConstraintDefinition
  3674  	{
  3675  		size += hack.RuntimeAllocSize(int64(cap(cached.Constraints)) * int64(8))
  3676  		for _, elem := range cached.Constraints {
  3677  			size += elem.CachedSize(true)
  3678  		}
  3679  	}
  3680  	// field Options vitess.io/vitess/go/vt/sqlparser.TableOptions
  3681  	{
  3682  		size += hack.RuntimeAllocSize(int64(cap(cached.Options)) * int64(8))
  3683  		for _, elem := range cached.Options {
  3684  			size += elem.CachedSize(true)
  3685  		}
  3686  	}
  3687  	// field PartitionOption *vitess.io/vitess/go/vt/sqlparser.PartitionOption
  3688  	size += cached.PartitionOption.CachedSize(true)
  3689  	return size
  3690  }
  3691  func (cached *TablespaceOperation) CachedSize(alloc bool) int64 {
  3692  	if cached == nil {
  3693  		return int64(0)
  3694  	}
  3695  	size := int64(0)
  3696  	if alloc {
  3697  		size += int64(8)
  3698  	}
  3699  	return size
  3700  }
  3701  func (cached *TimestampFuncExpr) CachedSize(alloc bool) int64 {
  3702  	if cached == nil {
  3703  		return int64(0)
  3704  	}
  3705  	size := int64(0)
  3706  	if alloc {
  3707  		size += int64(64)
  3708  	}
  3709  	// field Name string
  3710  	size += hack.RuntimeAllocSize(int64(len(cached.Name)))
  3711  	// field Expr1 vitess.io/vitess/go/vt/sqlparser.Expr
  3712  	if cc, ok := cached.Expr1.(cachedObject); ok {
  3713  		size += cc.CachedSize(true)
  3714  	}
  3715  	// field Expr2 vitess.io/vitess/go/vt/sqlparser.Expr
  3716  	if cc, ok := cached.Expr2.(cachedObject); ok {
  3717  		size += cc.CachedSize(true)
  3718  	}
  3719  	// field Unit string
  3720  	size += hack.RuntimeAllocSize(int64(len(cached.Unit)))
  3721  	return size
  3722  }
  3723  func (cached *TrimFuncExpr) CachedSize(alloc bool) int64 {
  3724  	if cached == nil {
  3725  		return int64(0)
  3726  	}
  3727  	size := int64(0)
  3728  	if alloc {
  3729  		size += int64(48)
  3730  	}
  3731  	// field TrimArg vitess.io/vitess/go/vt/sqlparser.Expr
  3732  	if cc, ok := cached.TrimArg.(cachedObject); ok {
  3733  		size += cc.CachedSize(true)
  3734  	}
  3735  	// field StringArg vitess.io/vitess/go/vt/sqlparser.Expr
  3736  	if cc, ok := cached.StringArg.(cachedObject); ok {
  3737  		size += cc.CachedSize(true)
  3738  	}
  3739  	return size
  3740  }
  3741  func (cached *TruncateTable) CachedSize(alloc bool) int64 {
  3742  	if cached == nil {
  3743  		return int64(0)
  3744  	}
  3745  	size := int64(0)
  3746  	if alloc {
  3747  		size += int64(32)
  3748  	}
  3749  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
  3750  	size += cached.Table.CachedSize(false)
  3751  	return size
  3752  }
  3753  func (cached *UnaryExpr) CachedSize(alloc bool) int64 {
  3754  	if cached == nil {
  3755  		return int64(0)
  3756  	}
  3757  	size := int64(0)
  3758  	if alloc {
  3759  		size += int64(24)
  3760  	}
  3761  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  3762  	if cc, ok := cached.Expr.(cachedObject); ok {
  3763  		size += cc.CachedSize(true)
  3764  	}
  3765  	return size
  3766  }
  3767  func (cached *Union) CachedSize(alloc bool) int64 {
  3768  	if cached == nil {
  3769  		return int64(0)
  3770  	}
  3771  	size := int64(0)
  3772  	if alloc {
  3773  		size += int64(96)
  3774  	}
  3775  	// field Left vitess.io/vitess/go/vt/sqlparser.SelectStatement
  3776  	if cc, ok := cached.Left.(cachedObject); ok {
  3777  		size += cc.CachedSize(true)
  3778  	}
  3779  	// field Right vitess.io/vitess/go/vt/sqlparser.SelectStatement
  3780  	if cc, ok := cached.Right.(cachedObject); ok {
  3781  		size += cc.CachedSize(true)
  3782  	}
  3783  	// field OrderBy vitess.io/vitess/go/vt/sqlparser.OrderBy
  3784  	{
  3785  		size += hack.RuntimeAllocSize(int64(cap(cached.OrderBy)) * int64(8))
  3786  		for _, elem := range cached.OrderBy {
  3787  			size += elem.CachedSize(true)
  3788  		}
  3789  	}
  3790  	// field With *vitess.io/vitess/go/vt/sqlparser.With
  3791  	size += cached.With.CachedSize(true)
  3792  	// field Limit *vitess.io/vitess/go/vt/sqlparser.Limit
  3793  	size += cached.Limit.CachedSize(true)
  3794  	// field Into *vitess.io/vitess/go/vt/sqlparser.SelectInto
  3795  	size += cached.Into.CachedSize(true)
  3796  	return size
  3797  }
  3798  func (cached *Update) CachedSize(alloc bool) int64 {
  3799  	if cached == nil {
  3800  		return int64(0)
  3801  	}
  3802  	size := int64(0)
  3803  	if alloc {
  3804  		size += int64(112)
  3805  	}
  3806  	// field With *vitess.io/vitess/go/vt/sqlparser.With
  3807  	size += cached.With.CachedSize(true)
  3808  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3809  	size += cached.Comments.CachedSize(true)
  3810  	// field TableExprs vitess.io/vitess/go/vt/sqlparser.TableExprs
  3811  	{
  3812  		size += hack.RuntimeAllocSize(int64(cap(cached.TableExprs)) * int64(16))
  3813  		for _, elem := range cached.TableExprs {
  3814  			if cc, ok := elem.(cachedObject); ok {
  3815  				size += cc.CachedSize(true)
  3816  			}
  3817  		}
  3818  	}
  3819  	// field Exprs vitess.io/vitess/go/vt/sqlparser.UpdateExprs
  3820  	{
  3821  		size += hack.RuntimeAllocSize(int64(cap(cached.Exprs)) * int64(8))
  3822  		for _, elem := range cached.Exprs {
  3823  			size += elem.CachedSize(true)
  3824  		}
  3825  	}
  3826  	// field Where *vitess.io/vitess/go/vt/sqlparser.Where
  3827  	size += cached.Where.CachedSize(true)
  3828  	// field OrderBy vitess.io/vitess/go/vt/sqlparser.OrderBy
  3829  	{
  3830  		size += hack.RuntimeAllocSize(int64(cap(cached.OrderBy)) * int64(8))
  3831  		for _, elem := range cached.OrderBy {
  3832  			size += elem.CachedSize(true)
  3833  		}
  3834  	}
  3835  	// field Limit *vitess.io/vitess/go/vt/sqlparser.Limit
  3836  	size += cached.Limit.CachedSize(true)
  3837  	return size
  3838  }
  3839  func (cached *UpdateExpr) CachedSize(alloc bool) int64 {
  3840  	if cached == nil {
  3841  		return int64(0)
  3842  	}
  3843  	size := int64(0)
  3844  	if alloc {
  3845  		size += int64(24)
  3846  	}
  3847  	// field Name *vitess.io/vitess/go/vt/sqlparser.ColName
  3848  	size += cached.Name.CachedSize(true)
  3849  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  3850  	if cc, ok := cached.Expr.(cachedObject); ok {
  3851  		size += cc.CachedSize(true)
  3852  	}
  3853  	return size
  3854  }
  3855  func (cached *UpdateXMLExpr) CachedSize(alloc bool) int64 {
  3856  	if cached == nil {
  3857  		return int64(0)
  3858  	}
  3859  	size := int64(0)
  3860  	if alloc {
  3861  		size += int64(48)
  3862  	}
  3863  	// field Target vitess.io/vitess/go/vt/sqlparser.Expr
  3864  	if cc, ok := cached.Target.(cachedObject); ok {
  3865  		size += cc.CachedSize(true)
  3866  	}
  3867  	// field XPathExpr vitess.io/vitess/go/vt/sqlparser.Expr
  3868  	if cc, ok := cached.XPathExpr.(cachedObject); ok {
  3869  		size += cc.CachedSize(true)
  3870  	}
  3871  	// field NewXML vitess.io/vitess/go/vt/sqlparser.Expr
  3872  	if cc, ok := cached.NewXML.(cachedObject); ok {
  3873  		size += cc.CachedSize(true)
  3874  	}
  3875  	return size
  3876  }
  3877  func (cached *Use) CachedSize(alloc bool) int64 {
  3878  	if cached == nil {
  3879  		return int64(0)
  3880  	}
  3881  	size := int64(0)
  3882  	if alloc {
  3883  		size += int64(16)
  3884  	}
  3885  	// field DBName vitess.io/vitess/go/vt/sqlparser.IdentifierCS
  3886  	size += cached.DBName.CachedSize(false)
  3887  	return size
  3888  }
  3889  func (cached *VExplainStmt) CachedSize(alloc bool) int64 {
  3890  	if cached == nil {
  3891  		return int64(0)
  3892  	}
  3893  	size := int64(0)
  3894  	if alloc {
  3895  		size += int64(32)
  3896  	}
  3897  	// field Statement vitess.io/vitess/go/vt/sqlparser.Statement
  3898  	if cc, ok := cached.Statement.(cachedObject); ok {
  3899  		size += cc.CachedSize(true)
  3900  	}
  3901  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3902  	size += cached.Comments.CachedSize(true)
  3903  	return size
  3904  }
  3905  func (cached *VStream) CachedSize(alloc bool) int64 {
  3906  	if cached == nil {
  3907  		return int64(0)
  3908  	}
  3909  	size := int64(0)
  3910  	if alloc {
  3911  		size += int64(80)
  3912  	}
  3913  	// field Comments *vitess.io/vitess/go/vt/sqlparser.ParsedComments
  3914  	size += cached.Comments.CachedSize(true)
  3915  	// field SelectExpr vitess.io/vitess/go/vt/sqlparser.SelectExpr
  3916  	if cc, ok := cached.SelectExpr.(cachedObject); ok {
  3917  		size += cc.CachedSize(true)
  3918  	}
  3919  	// field Table vitess.io/vitess/go/vt/sqlparser.TableName
  3920  	size += cached.Table.CachedSize(false)
  3921  	// field Where *vitess.io/vitess/go/vt/sqlparser.Where
  3922  	size += cached.Where.CachedSize(true)
  3923  	// field Limit *vitess.io/vitess/go/vt/sqlparser.Limit
  3924  	size += cached.Limit.CachedSize(true)
  3925  	return size
  3926  }
  3927  func (cached *Validation) CachedSize(alloc bool) int64 {
  3928  	if cached == nil {
  3929  		return int64(0)
  3930  	}
  3931  	size := int64(0)
  3932  	if alloc {
  3933  		size += int64(8)
  3934  	}
  3935  	return size
  3936  }
  3937  func (cached *ValuesFuncExpr) CachedSize(alloc bool) int64 {
  3938  	if cached == nil {
  3939  		return int64(0)
  3940  	}
  3941  	size := int64(0)
  3942  	if alloc {
  3943  		size += int64(8)
  3944  	}
  3945  	// field Name *vitess.io/vitess/go/vt/sqlparser.ColName
  3946  	size += cached.Name.CachedSize(true)
  3947  	return size
  3948  }
  3949  func (cached *VarPop) CachedSize(alloc bool) int64 {
  3950  	if cached == nil {
  3951  		return int64(0)
  3952  	}
  3953  	size := int64(0)
  3954  	if alloc {
  3955  		size += int64(16)
  3956  	}
  3957  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3958  	if cc, ok := cached.Arg.(cachedObject); ok {
  3959  		size += cc.CachedSize(true)
  3960  	}
  3961  	return size
  3962  }
  3963  func (cached *VarSamp) CachedSize(alloc bool) int64 {
  3964  	if cached == nil {
  3965  		return int64(0)
  3966  	}
  3967  	size := int64(0)
  3968  	if alloc {
  3969  		size += int64(16)
  3970  	}
  3971  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3972  	if cc, ok := cached.Arg.(cachedObject); ok {
  3973  		size += cc.CachedSize(true)
  3974  	}
  3975  	return size
  3976  }
  3977  func (cached *Variable) CachedSize(alloc bool) int64 {
  3978  	if cached == nil {
  3979  		return int64(0)
  3980  	}
  3981  	size := int64(0)
  3982  	if alloc {
  3983  		size += int64(48)
  3984  	}
  3985  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  3986  	size += cached.Name.CachedSize(false)
  3987  	return size
  3988  }
  3989  func (cached *Variance) CachedSize(alloc bool) int64 {
  3990  	if cached == nil {
  3991  		return int64(0)
  3992  	}
  3993  	size := int64(0)
  3994  	if alloc {
  3995  		size += int64(16)
  3996  	}
  3997  	// field Arg vitess.io/vitess/go/vt/sqlparser.Expr
  3998  	if cc, ok := cached.Arg.(cachedObject); ok {
  3999  		size += cc.CachedSize(true)
  4000  	}
  4001  	return size
  4002  }
  4003  func (cached *VindexParam) CachedSize(alloc bool) int64 {
  4004  	if cached == nil {
  4005  		return int64(0)
  4006  	}
  4007  	size := int64(0)
  4008  	if alloc {
  4009  		size += int64(48)
  4010  	}
  4011  	// field Key vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  4012  	size += cached.Key.CachedSize(false)
  4013  	// field Val string
  4014  	size += hack.RuntimeAllocSize(int64(len(cached.Val)))
  4015  	return size
  4016  }
  4017  func (cached *VindexSpec) CachedSize(alloc bool) int64 {
  4018  	if cached == nil {
  4019  		return int64(0)
  4020  	}
  4021  	size := int64(0)
  4022  	if alloc {
  4023  		size += int64(96)
  4024  	}
  4025  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  4026  	size += cached.Name.CachedSize(false)
  4027  	// field Type vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  4028  	size += cached.Type.CachedSize(false)
  4029  	// field Params []vitess.io/vitess/go/vt/sqlparser.VindexParam
  4030  	{
  4031  		size += hack.RuntimeAllocSize(int64(cap(cached.Params)) * int64(48))
  4032  		for _, elem := range cached.Params {
  4033  			size += elem.CachedSize(false)
  4034  		}
  4035  	}
  4036  	return size
  4037  }
  4038  func (cached *WeightStringFuncExpr) CachedSize(alloc bool) int64 {
  4039  	if cached == nil {
  4040  		return int64(0)
  4041  	}
  4042  	size := int64(0)
  4043  	if alloc {
  4044  		size += int64(24)
  4045  	}
  4046  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  4047  	if cc, ok := cached.Expr.(cachedObject); ok {
  4048  		size += cc.CachedSize(true)
  4049  	}
  4050  	// field As *vitess.io/vitess/go/vt/sqlparser.ConvertType
  4051  	size += cached.As.CachedSize(true)
  4052  	return size
  4053  }
  4054  func (cached *When) CachedSize(alloc bool) int64 {
  4055  	if cached == nil {
  4056  		return int64(0)
  4057  	}
  4058  	size := int64(0)
  4059  	if alloc {
  4060  		size += int64(32)
  4061  	}
  4062  	// field Cond vitess.io/vitess/go/vt/sqlparser.Expr
  4063  	if cc, ok := cached.Cond.(cachedObject); ok {
  4064  		size += cc.CachedSize(true)
  4065  	}
  4066  	// field Val vitess.io/vitess/go/vt/sqlparser.Expr
  4067  	if cc, ok := cached.Val.(cachedObject); ok {
  4068  		size += cc.CachedSize(true)
  4069  	}
  4070  	return size
  4071  }
  4072  func (cached *Where) CachedSize(alloc bool) int64 {
  4073  	if cached == nil {
  4074  		return int64(0)
  4075  	}
  4076  	size := int64(0)
  4077  	if alloc {
  4078  		size += int64(24)
  4079  	}
  4080  	// field Expr vitess.io/vitess/go/vt/sqlparser.Expr
  4081  	if cc, ok := cached.Expr.(cachedObject); ok {
  4082  		size += cc.CachedSize(true)
  4083  	}
  4084  	return size
  4085  }
  4086  func (cached *WindowDefinition) CachedSize(alloc bool) int64 {
  4087  	if cached == nil {
  4088  		return int64(0)
  4089  	}
  4090  	size := int64(0)
  4091  	if alloc {
  4092  		size += int64(48)
  4093  	}
  4094  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  4095  	size += cached.Name.CachedSize(false)
  4096  	// field WindowSpec *vitess.io/vitess/go/vt/sqlparser.WindowSpecification
  4097  	size += cached.WindowSpec.CachedSize(true)
  4098  	return size
  4099  }
  4100  func (cached *WindowSpecification) CachedSize(alloc bool) int64 {
  4101  	if cached == nil {
  4102  		return int64(0)
  4103  	}
  4104  	size := int64(0)
  4105  	if alloc {
  4106  		size += int64(96)
  4107  	}
  4108  	// field Name vitess.io/vitess/go/vt/sqlparser.IdentifierCI
  4109  	size += cached.Name.CachedSize(false)
  4110  	// field PartitionClause vitess.io/vitess/go/vt/sqlparser.Exprs
  4111  	{
  4112  		size += hack.RuntimeAllocSize(int64(cap(cached.PartitionClause)) * int64(16))
  4113  		for _, elem := range cached.PartitionClause {
  4114  			if cc, ok := elem.(cachedObject); ok {
  4115  				size += cc.CachedSize(true)
  4116  			}
  4117  		}
  4118  	}
  4119  	// field OrderClause vitess.io/vitess/go/vt/sqlparser.OrderBy
  4120  	{
  4121  		size += hack.RuntimeAllocSize(int64(cap(cached.OrderClause)) * int64(8))
  4122  		for _, elem := range cached.OrderClause {
  4123  			size += elem.CachedSize(true)
  4124  		}
  4125  	}
  4126  	// field FrameClause *vitess.io/vitess/go/vt/sqlparser.FrameClause
  4127  	size += cached.FrameClause.CachedSize(true)
  4128  	return size
  4129  }
  4130  func (cached *With) CachedSize(alloc bool) int64 {
  4131  	if cached == nil {
  4132  		return int64(0)
  4133  	}
  4134  	size := int64(0)
  4135  	if alloc {
  4136  		size += int64(32)
  4137  	}
  4138  	// field ctes []*vitess.io/vitess/go/vt/sqlparser.CommonTableExpr
  4139  	{
  4140  		size += hack.RuntimeAllocSize(int64(cap(cached.ctes)) * int64(8))
  4141  		for _, elem := range cached.ctes {
  4142  			size += elem.CachedSize(true)
  4143  		}
  4144  	}
  4145  	return size
  4146  }
  4147  func (cached *XorExpr) CachedSize(alloc bool) int64 {
  4148  	if cached == nil {
  4149  		return int64(0)
  4150  	}
  4151  	size := int64(0)
  4152  	if alloc {
  4153  		size += int64(32)
  4154  	}
  4155  	// field Left vitess.io/vitess/go/vt/sqlparser.Expr
  4156  	if cc, ok := cached.Left.(cachedObject); ok {
  4157  		size += cc.CachedSize(true)
  4158  	}
  4159  	// field Right vitess.io/vitess/go/vt/sqlparser.Expr
  4160  	if cc, ok := cached.Right.(cachedObject); ok {
  4161  		size += cc.CachedSize(true)
  4162  	}
  4163  	return size
  4164  }