stubs_go123.go raw

   1  //go:build go1.21 && !go1.24
   2  // +build go1.21,!go1.24
   3  
   4  /*
   5   * Copyright 2021 ByteDance Inc.
   6   *
   7   * Licensed under the Apache License, Version 2.0 (the "License");
   8   * you may not use this file except in compliance with the License.
   9   * You may obtain a copy of the License at
  10   *
  11   *     http://www.apache.org/licenses/LICENSE-2.0
  12   *
  13   * Unless required by applicable law or agreed to in writing, software
  14   * distributed under the License is distributed on an "AS IS" BASIS,
  15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  16   * See the License for the specific language governing permissions and
  17   * limitations under the License.
  18   */
  19  
  20  package resolver
  21  
  22  import (
  23      _ `encoding/json`
  24      `reflect`
  25      _ `unsafe`
  26  )
  27  
  28  type StdField struct {
  29      name        string
  30      nameBytes   []byte
  31      nameNonEsc  string
  32      nameEscHTML string
  33      tag         bool
  34      index       []int
  35      typ         reflect.Type
  36      omitEmpty   bool
  37      quoted      bool
  38      encoder     func()
  39  }
  40  
  41  type StdStructFields struct {
  42      list      []StdField
  43      nameIndex map[string]*StdField
  44      byFoldedName map[string]*StdField
  45  }
  46  
  47  //go:noescape
  48  //go:linkname typeFields encoding/json.typeFields
  49  func typeFields(_ reflect.Type) StdStructFields
  50  
  51  func handleOmitZero(f StdField, fv *FieldMeta) {}
  52