type reflect.Value
694 uses
reflect (current package)
badlinkname.go#L130: func badlinkname_Value_pointer(Value) unsafe.Pointer
deepequal.go#L27: func deepValueEqual(v1, v2 Value, visited map[visit]bool) bool {
deepequal.go#L39: hard := func(v1, v2 Value) bool {
deepequal.go#L63: ptrval := func(v Value) unsafe.Pointer {
iter.go#L13: uintptr, N int64 | uint64](num N, t Type) iter.Seq[Value] {
iter.go#L14: return func(yield func(v Value) bool) {
iter.go#L38: func (v Value) Seq() iter.Seq[Value] {
iter.go#L40: return func(yield func(Value) bool) {
iter.go#L41: rf := MakeFunc(v.Type().In(0), func(in []Value) []Value {
iter.go#L42: return []Value{ValueOf(yield(in[0]))}
iter.go#L44: v.Call([]Value{rf})
iter.go#L74: return func(yield func(Value) bool) {
iter.go#L83: return func(yield func(Value) bool) {
iter.go#L91: return func(yield func(Value) bool) {
iter.go#L99: return func(yield func(Value) bool) {
iter.go#L108: return func(yield func(Value) bool) {
iter.go#L124: func (v Value) Seq2() iter.Seq2[Value, Value] {
iter.go#L126: return func(yield func(Value, Value) bool) {
iter.go#L127: rf := MakeFunc(v.Type().In(0), func(in []Value) []Value {
iter.go#L128: return []Value{ValueOf(yield(in[0], in[1]))}
iter.go#L130: v.Call([]Value{rf})
iter.go#L138: return func(yield func(Value, Value) bool) {
iter.go#L147: return func(yield func(Value, Value) bool) {
iter.go#L155: return func(yield func(Value, Value) bool) {
iter.go#L163: return func(yield func(Value, Value) bool) {
makefunc.go#L22: fn func([]Value) []Value
makefunc.go#L46: func MakeFunc(typ Type, fn func(args []Value) (results []Value)) Value {
makefunc.go#L70: return Value{t, unsafe.Pointer(impl), flag(Func)}
makefunc.go#L86: rcvr Value
makefunc.go#L96: func makeMethodValue(op string, v Value) Value {
makefunc.go#L104: rcvr := Value{v.typ(), v.ptr, fl}
makefunc.go#L129: return Value{ftyp.Common(), unsafe.Pointer(fv), v.flag&flagRO | flag(Func)}
map_swiss.go#L146: func (v Value) MapIndex(key Value) Value {
map_swiss.go#L173: return Value{}
map_swiss.go#L210: func (v Value) MapKeys() []Value {
map_swiss.go#L228: a := make([]Value, mlen)
map_swiss.go#L247: m Value
map_swiss.go#L256: func (iter *MapIter) Key() Value {
map_swiss.go#L275: func (v Value) SetIterKey(iter *MapIter) {
map_swiss.go#L294: key := Value{ktype, iterkey, iter.m.flag | flag(ktype.Kind()) | flagIndir}
map_swiss.go#L300: func (iter *MapIter) Value() Value {
map_swiss.go#L319: func (v Value) SetIterValue(iter *MapIter) {
map_swiss.go#L338: elem := Value{vtype, iterelem, iter.m.flag | flag(vtype.Kind()) | flagIndir}
map_swiss.go#L367: func (iter *MapIter) Reset(v Value) {
map_swiss.go#L390: func (v Value) MapRange() *MapIter {
map_swiss.go#L407: func (v Value) SetMapIndex(key, elem Value) {
type.go#L450: Func Value // func with receiver as first argument
type.go#L640: m.Func = Value{&mt.(*rtype).t, fn, fl}
value.go#L39: type Value struct {
value.go#L99: func (v Value) typ() *abi.Type {
value.go#L111: func (v Value) pointer() unsafe.Pointer {
value.go#L122: func packEface(v Value) any {
value.go#L157: func unpackEface(i any) Value {
value.go#L162: return Value{}
value.go#L168: return Value{t, e.Data, f}
value.go#L269: func (v Value) Addr() Value {
value.go#L276: return Value{ptrTo(v.typ()), v.ptr, fl | flag(Pointer)}
value.go#L281: func (v Value) Bool() bool {
value.go#L289: func (v Value) panicNotBool() {
value.go#L298: func (v Value) Bytes() []byte {
value.go#L306: func (v Value) bytesSlow() []byte {
value.go#L330: func (v Value) runes() []rune {
value.go#L344: func (v Value) CanAddr() bool {
value.go#L353: func (v Value) CanSet() bool {
value.go#L365: func (v Value) Call(in []Value) []Value {
value.go#L378: func (v Value) CallSlice(in []Value) []Value {
value.go#L388: func (v Value) call(op string, in []Value) []Value {
value.go#L393: rcvr Value
value.go#L456: in = make([]Value, n+1)
value.go#L591: var ret []Value
value.go#L606: ret = make([]Value, nout)
value.go#L621: ret[i] = Value{tv, add(stackArgs, st.stkOff, "tv.Size() != 0"), fl}
value.go#L637: ret[i] = Value{tv, regArgs.Ptrs[steps[0].ireg], flag(tv.Kind())}
value.go#L668: ret[i] = Value{tv, s, flagIndir | flag(tv.Kind())}
value.go#L711: in := make([]Value, 0, int(ftyp.InCount))
value.go#L717: v := Value{typ, nil, flag(typ.Kind())}
value.go#L875: func methodReceiver(op string, v Value, methodIndex int) (rcvrtype *abi.Type, t *funcType, fn unsafe.Pointer) {
value.go#L914: func storeRcvr(v Value, p unsafe.Pointer) {
value.go#L1142: func funcName(f func([]Value) []Value) string {
value.go#L1153: func (v Value) Cap() int {
value.go#L1161: func (v Value) capNonSlice() int {
value.go#L1180: func (v Value) Close() {
value.go#L1192: func (v Value) CanComplex() bool {
value.go#L1203: func (v Value) Complex() complex128 {
value.go#L1218: func (v Value) Elem() Value {
value.go#L1257: return Value{}
value.go#L1263: return Value{typ, ptr, fl}
value.go#L1270: func (v Value) Field(i int) Value {
value.go#L1297: return Value{typ, ptr, fl}
value.go#L1303: func (v Value) FieldByIndex(index []int) Value {
value.go#L1326: func (v Value) FieldByIndexErr(index []int) (Value, error) {
value.go#L1335: return Value{}, errors.New("reflect: indirection through nil pointer to embedded struct field " + nameFor(v.typ().Elem()))
value.go#L1348: func (v Value) FieldByName(name string) Value {
value.go#L1353: return Value{}
value.go#L1360: func (v Value) FieldByNameFunc(match func(string) bool) Value {
value.go#L1364: return Value{}
value.go#L1368: func (v Value) CanFloat() bool {
value.go#L1379: func (v Value) Float() float64 {
value.go#L1394: func (v Value) Index(i int) Value {
value.go#L1411: return Value{typ, val, fl}
value.go#L1424: return Value{typ, val, fl}
value.go#L1433: return Value{uint8Type, p, fl}
value.go#L1439: func (v Value) CanInt() bool {
value.go#L1450: func (v Value) Int() int64 {
value.go#L1469: func (v Value) CanInterface() bool {
value.go#L1483: func (v Value) Interface() (i any) {
value.go#L1487: func valueInterface(v Value, safe bool) any {
value.go#L1525: func (v Value) InterfaceData() [2]uintptr {
value.go#L1544: func (v Value) IsNil() bool {
value.go#L1569: func (v Value) IsValid() bool {
value.go#L1575: func (v Value) IsZero() bool {
value.go#L1696: func (v Value) SetZero() {
value.go#L1750: func (v Value) Kind() Kind {
value.go#L1756: func (v Value) Len() int {
value.go#L1764: func (v Value) lenNonSlice() int {
value.go#L1787: func copyVal(typ *abi.Type, fl flag, ptr unsafe.Pointer) Value {
value.go#L1793: return Value{typ, c, fl | flagIndir}
value.go#L1795: return Value{typ, *(*unsafe.Pointer)(ptr), fl}
value.go#L1802: func (v Value) Method(i int) Value {
value.go#L1815: return Value{v.typ(), v.ptr, fl}
value.go#L1823: func (v Value) NumMethod() int {
value.go#L1838: func (v Value) MethodByName(name string) Value {
value.go#L1843: return Value{}
value.go#L1847: return Value{}
value.go#L1854: func (v Value) NumField() int {
value.go#L1862: func (v Value) OverflowComplex(x complex128) bool {
value.go#L1875: func (v Value) OverflowFloat(x float64) bool {
value.go#L1895: func (v Value) OverflowInt(x int64) bool {
value.go#L1908: func (v Value) OverflowUint(x uint64) bool {
value.go#L1940: func (v Value) Pointer() uintptr {
value.go#L1989: func (v Value) Recv() (x Value, ok bool) {
value.go#L1997: func (v Value) recv(nb bool) (val Value, ok bool) {
value.go#L2003: val = Value{t, nil, flag(t.Kind())}
value.go#L2014: val = Value{}
value.go#L2022: func (v Value) Send(x Value) {
value.go#L2030: func (v Value) send(x Value, nb bool) (selected bool) {
value.go#L2050: func (v Value) Set(x Value) {
value.go#L2071: func (v Value) SetBool(x bool) {
value.go#L2080: func (v Value) SetBytes(x []byte) {
value.go#L2092: func (v Value) setRunes(x []rune) {
value.go#L2104: func (v Value) SetComplex(x complex128) {
value.go#L2119: func (v Value) SetFloat(x float64) {
value.go#L2134: func (v Value) SetInt(x int64) {
value.go#L2156: func (v Value) SetLen(n int) {
value.go#L2170: func (v Value) SetCap(n int) {
value.go#L2183: func (v Value) SetUint(x uint64) {
value.go#L2206: func (v Value) SetPointer(x unsafe.Pointer) {
value.go#L2214: func (v Value) SetString(x string) {
value.go#L2223: func (v Value) Slice(i, j int) Value {
value.go#L2257: return Value{v.typ(), unsafe.Pointer(&t), v.flag}
value.go#L2279: return Value{typ.Common(), unsafe.Pointer(&x), fl}
value.go#L2285: func (v Value) Slice3(i, j, k int) Value {
value.go#L2331: return Value{typ.Common(), unsafe.Pointer(&x), fl}
value.go#L2340: func (v Value) String() string {
value.go#L2348: func (v Value) stringNonString() string {
value.go#L2362: func (v Value) TryRecv() (x Value, ok bool) {
value.go#L2372: func (v Value) TrySend(x Value) bool {
value.go#L2379: func (v Value) Type() Type {
value.go#L2387: func (v Value) typeSlow() Type {
value.go#L2391: func (v Value) abiType() *abi.Type {
value.go#L2398: func (v Value) abiTypeSlow() *abi.Type {
value.go#L2430: func (v Value) CanUint() bool {
value.go#L2441: func (v Value) Uint() uint64 {
value.go#L2470: func (v Value) UnsafeAddr() uintptr {
value.go#L2496: func (v Value) UnsafePointer() unsafe.Pointer {
value.go#L2587: func (v Value) Grow(n int) {
value.go#L2594: func (v Value) grow(n int) {
value.go#L2613: func (v Value) extendSlice(n int) Value {
value.go#L2631: func (v Value) Clear() {
value.go#L2646: func Append(s Value, x ...Value) Value {
value.go#L2658: func AppendSlice(s, t Value) Value {
value.go#L2677: func Copy(dst, src Value) int {
value.go#L2779: Chan Value // channel to use (for send or receive)
value.go#L2780: Send Value // value to send (for send)
value.go#L2791: func Select(cases []SelectCase) (chosen int, recv Value, recvOK bool) {
value.go#L2882: recv = Value{t, p, fl | flagIndir}
value.go#L2884: recv = Value{t, *(*unsafe.Pointer)(p), fl}
value.go#L2904: func MakeSlice(typ Type, len, cap int) Value {
value.go#L2919: return Value{&typ.(*rtype).t, unsafe.Pointer(&s), flagIndir | flag(Slice)}
value.go#L2926: func SliceAt(typ Type, p unsafe.Pointer, n int) Value {
value.go#L2929: return Value{SliceOf(typ).common(), unsafe.Pointer(&s), flagIndir | flag(Slice)}
value.go#L2933: func MakeChan(typ Type, buffer int) Value {
value.go#L2945: return Value{t, ch, flag(Chan)}
value.go#L2949: func MakeMap(typ Type) Value {
value.go#L2955: func MakeMapWithSize(typ Type, n int) Value {
value.go#L2961: return Value{t, m, flag(Map)}
value.go#L2967: func Indirect(v Value) Value {
value.go#L2976: func ValueOf(i any) Value {
value.go#L2978: return Value{}
value.go#L2988: func Zero(typ Type) Value {
value.go#L3001: return Value{t, p, fl | flagIndir}
value.go#L3003: return Value{t, nil, fl}
value.go#L3011: func New(typ Type) Value {
value.go#L3023: return Value{pt, ptr, fl}
value.go#L3028: func NewAt(typ Type, p unsafe.Pointer) Value {
value.go#L3031: return Value{t.ptrTo(), p, fl}
value.go#L3039: func (v Value) assignTo(context string, dst *abi.Type, target unsafe.Pointer) Value {
value.go#L3050: return Value{dst, v.ptr, fl}
value.go#L3057: return Value{dst, nil, flag(Interface)}
value.go#L3068: return Value{dst, target, flagIndir | flag(Interface)}
value.go#L3078: func (v Value) Convert(t Type) Value {
value.go#L3091: func (v Value) CanConvert(t Type) bool {
value.go#L3116: func (v Value) Comparable() bool {
value.go#L3158: func (v Value) Equal(u Value) bool {
value.go#L3226: func convertOp(dst, src *abi.Type) func(Value, Type) Value {
value.go#L3324: func makeInt(f flag, bits uint64, t Type) Value {
value.go#L3337: return Value{typ, ptr, f | flagIndir | flag(typ.Kind())}
value.go#L3342: func makeFloat(f flag, v float64, t Type) Value {
value.go#L3351: return Value{typ, ptr, f | flagIndir | flag(typ.Kind())}
value.go#L3355: func makeFloat32(f flag, v float32, t Type) Value {
value.go#L3359: return Value{typ, ptr, f | flagIndir | flag(typ.Kind())}
value.go#L3364: func makeComplex(f flag, v complex128, t Type) Value {
value.go#L3373: return Value{typ, ptr, f | flagIndir | flag(typ.Kind())}
value.go#L3376: func makeString(f flag, v string, t Type) Value {
value.go#L3383: func makeBytes(f flag, v []byte, t Type) Value {
value.go#L3390: func makeRunes(f flag, v []rune, t Type) Value {
value.go#L3403: func cvtInt(v Value, t Type) Value {
value.go#L3408: func cvtUint(v Value, t Type) Value {
value.go#L3413: func cvtFloatInt(v Value, t Type) Value {
value.go#L3418: func cvtFloatUint(v Value, t Type) Value {
value.go#L3423: func cvtIntFloat(v Value, t Type) Value {
value.go#L3428: func cvtUintFloat(v Value, t Type) Value {
value.go#L3433: func cvtFloat(v Value, t Type) Value {
value.go#L3444: func cvtComplex(v Value, t Type) Value {
value.go#L3449: func cvtIntString(v Value, t Type) Value {
value.go#L3458: func cvtUintString(v Value, t Type) Value {
value.go#L3467: func cvtBytesString(v Value, t Type) Value {
value.go#L3472: func cvtStringBytes(v Value, t Type) Value {
value.go#L3477: func cvtRunesString(v Value, t Type) Value {
value.go#L3482: func cvtStringRunes(v Value, t Type) Value {
value.go#L3487: func cvtSliceArrayPtr(v Value, t Type) Value {
value.go#L3493: return Value{t.common(), h.Data, v.flag&^(flagIndir|flagAddr|flagKindMask) | flag(Pointer)}
value.go#L3497: func cvtSliceArray(v Value, t Type) Value {
value.go#L3509: return Value{typ, ptr, v.flag&^(flagAddr|flagKindMask) | flag(Array)}
value.go#L3513: func cvtDirect(v Value, typ Type) Value {
value.go#L3524: return Value{t, ptr, v.flag.ro() | f} // v.flag.ro()|f == f?
value.go#L3528: func cvtT2I(v Value, typ Type) Value {
value.go#L3536: return Value{typ.common(), target, v.flag.ro() | flagIndir | flag(Interface)}
value.go#L3540: func cvtI2I(v Value, typ Type) Value {
encoding/asn1
asn1.go#L600: func parseSequenceOf(bytes []byte, sliceType reflect.Type, elemType reflect.Type) (ret reflect.Value, err error) {
asn1.go#L670: func parseField(v reflect.Value, bytes []byte, initOffset int, params fieldParameters) (offset int, err error) {
asn1.go#L1002: func setDefaultValue(v reflect.Value, params fieldParameters) (ok bool) {
marshal.go#L458: func makeBody(value reflect.Value, params fieldParameters) (e encoder, err error) {
marshal.go#L576: func makeField(v reflect.Value, params fieldParameters) (e encoder, err error) {
encoding/binary
binary.go#L698: func dataSize(v reflect.Value) int {
binary.go#L845: func (d *decoder) value(v reflect.Value) {
binary.go#L914: func (e *encoder) value(v reflect.Value) {
binary.go#L977: func (d *decoder) skip(v reflect.Value) {
binary.go#L981: func (e *encoder) skip(v reflect.Value) {
encoding/json
decode.go#L358: func (d *decodeState) value(v reflect.Value) error {
decode.go#L427: func indirect(v reflect.Value, decodingNull bool) (Unmarshaler, encoding.TextUnmarshaler, reflect.Value) {
decode.go#L481: return u, nil, reflect.Value{}
decode.go#L485: return nil, u, reflect.Value{}
decode.go#L502: func (d *decodeState) array(v reflect.Value) error {
decode.go#L561: if err := d.value(reflect.Value{}); err != nil {
decode.go#L599: func (d *decodeState) object(v reflect.Value) error {
decode.go#L655: var mapElem reflect.Value
decode.go#L682: var subv reflect.Value
decode.go#L716: subv = reflect.Value{}
decode.go#L771: var kv reflect.Value
decode.go#L851: func (d *decodeState) literalStore(item []byte, v reflect.Value, fromQuoted bool) error {
encode.go#L219: Value reflect.Value
encode.go#L318: func isEmptyValue(v reflect.Value) bool {
encode.go#L332: func (e *encodeState) reflectValue(v reflect.Value, opts encOpts) {
encode.go#L343: type encoderFunc func(e *encodeState, v reflect.Value, opts encOpts)
encode.go#L347: func valueEncoder(v reflect.Value) encoderFunc {
encode.go#L368: fi, loaded := encoderCache.LoadOrStore(t, encoderFunc(func(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L438: func invalidValueEncoder(e *encodeState, v reflect.Value, _ encOpts) {
encode.go#L442: func marshalerEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L464: func addrMarshalerEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L483: func textMarshalerEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L500: func addrTextMarshalerEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L514: func boolEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L522: func intEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L530: func uintEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L540: func (bits floatEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L579: func stringEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L675: func interfaceEncoder(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L683: func unsupportedTypeEncoder(e *encodeState, v reflect.Value, _ encOpts) {
encode.go#L697: func (se structEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L745: func (me mapEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L804: func encodeByteSlice(e *encodeState, v reflect.Value, _ encOpts) {
encode.go#L823: func (se sliceEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L863: func (ae arrayEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L884: func (pe ptrEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L912: func (ce condAddrEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
encode.go#L955: v reflect.Value
encode.go#L959: func resolveKeyName(k reflect.Value) (string, error) {
encode.go#L1064: isZero func(reflect.Value) bool
encode.go#L1192: field.isZero = func(v reflect.Value) bool {
encode.go#L1200: field.isZero = func(v reflect.Value) bool {
encode.go#L1205: field.isZero = func(v reflect.Value) bool {
encode.go#L1209: field.isZero = func(v reflect.Value) bool {
flag
flag.go#L543: var z reflect.Value
fmt
print.go#L127: value reflect.Value
print.go#L179: p.value = reflect.Value{}
print.go#L341: func getField(v reflect.Value, i int) reflect.Value {
print.go#L371: func (p *pp) unknownType(v reflect.Value) {
print.go#L549: func (p *pp) fmtPointer(value reflect.Value, verb rune) {
print.go#L683: p.value = reflect.Value{}
print.go#L744: case reflect.Value:
print.go#L766: func (p *pp) printValue(value reflect.Value, verb rune, depth int) {
github.com/google/go-cmp/cmp
compare.go#L303: func (s *state) tryOptions(t reflect.Type, vx, vy reflect.Value) bool {
compare.go#L312: func (s *state) tryMethod(t reflect.Type, vx, vy reflect.Value) bool {
compare.go#L324: func (s *state) callTRFunc(f, v reflect.Value, step Transform) reflect.Value {
compare.go#L326: return f.Call([]reflect.Value{v})[0]
compare.go#L332: c := make(chan reflect.Value)
compare.go#L335: want := f.Call([]reflect.Value{v})[0]
compare.go#L347: func (s *state) callTTBFunc(f, x, y reflect.Value) bool {
compare.go#L349: return f.Call([]reflect.Value{x, y})[0].Bool()
compare.go#L356: c := make(chan reflect.Value)
compare.go#L359: want := f.Call([]reflect.Value{x, y})[0].Bool()
compare.go#L366: func detectRaces(c chan<- reflect.Value, f reflect.Value, vs ...reflect.Value) {
compare.go#L367: var ret reflect.Value
compare.go#L375: func (s *state) compareStruct(t reflect.Type, vx, vy reflect.Value) {
compare.go#L377: var vax, vay reflect.Value // Addressable versions of vx and vy
compare.go#L418: func (s *state) compareSlice(t reflect.Type, vx, vy reflect.Value) {
compare.go#L444: step.vx, step.xkey = reflect.Value{}, -1
compare.go#L449: step.vy, step.ykey = reflect.Value{}, -1
compare.go#L510: func (s *state) compareMap(t reflect.Type, vx, vy reflect.Value) {
compare.go#L552: func (s *state) comparePtr(t reflect.Type, vx, vy reflect.Value) {
compare.go#L569: func (s *state) compareInterface(t reflect.Type, vx, vy reflect.Value) {
compare.go#L664: func makeAddressable(v reflect.Value) reflect.Value {
export.go#L18: func retrieveUnexportedField(v reflect.Value, f reflect.StructField, addr bool) reflect.Value {
options.go#L32: filter(s *state, t reflect.Type, vx, vy reflect.Value) applicableOption
options.go#L43: apply(s *state, vx, vy reflect.Value)
options.go#L68: func (opts Options) filter(s *state, t reflect.Type, vx, vy reflect.Value) (out applicableOption) {
options.go#L89: func (opts Options) apply(s *state, _, _ reflect.Value) {
options.go#L134: func (f pathFilter) filter(s *state, t reflect.Type, vx, vy reflect.Value) applicableOption {
options.go#L177: fnc reflect.Value // func(T, T) bool
options.go#L181: func (f valuesFilter) filter(s *state, t reflect.Type, vx, vy reflect.Value) applicableOption {
options.go#L203: func (ignore) filter(_ *state, _ reflect.Type, _, _ reflect.Value) applicableOption { return ignore{} }
options.go#L204: func (ignore) apply(s *state, _, _ reflect.Value) { s.report(true, reportByIgnore) }
options.go#L212: func (validator) filter(_ *state, _ reflect.Type, vx, vy reflect.Value) applicableOption {
options.go#L221: func (validator) apply(s *state, vx, vy reflect.Value) {
options.go#L312: fnc reflect.Value // func(T) R
options.go#L317: func (tr *transformer) filter(s *state, t reflect.Type, _, _ reflect.Value) applicableOption {
options.go#L331: func (tr *transformer) apply(s *state, vx, vy reflect.Value) {
options.go#L370: fnc reflect.Value // func(T, T) bool
options.go#L375: func (cm *comparer) filter(_ *state, t reflect.Type, _, _ reflect.Value) applicableOption {
options.go#L382: func (cm *comparer) apply(s *state, vx, vy reflect.Value) {
options.go#L422: func (exporter) filter(_ *state, _ reflect.Type, _, _ reflect.Value) applicableOption {
options.go#L528: func (reporter) filter(_ *state, _ reflect.Type, _, _ reflect.Value) applicableOption {
path.go#L58: Values() (vx, vy reflect.Value)
path.go#L162: vx, vy reflect.Value
path.go#L166: func (ps pathStep) Values() (vx, vy reflect.Value) { return ps.vx, ps.vy }
path.go#L191: pvx, pvy reflect.Value // Parent values (always addressable)
path.go#L196: func (sf StructField) Values() (vx, vy reflect.Value) {
path.go#L228: func (si SliceIndex) Values() (vx, vy reflect.Value) { return si.vx, si.vy }
path.go#L268: key reflect.Value
path.go#L272: func (mi MapIndex) Values() (vx, vy reflect.Value) { return mi.vx, mi.vy }
path.go#L276: func (mi MapIndex) Key() reflect.Value { return mi.key }
path.go#L285: func (in Indirect) Values() (vx, vy reflect.Value) { return in.vx, in.vy }
path.go#L295: func (ta TypeAssertion) Values() (vx, vy reflect.Value) { return ta.vx, ta.vy }
path.go#L307: func (tf Transform) Values() (vx, vy reflect.Value) { return tf.vx, tf.vy }
path.go#L314: func (tf Transform) Func() reflect.Value { return tf.trans.fnc }
path.go#L366: func (p pointerPath) Push(vx, vy reflect.Value) (equal, visited bool) {
path.go#L381: func (p pointerPath) Pop(vx, vy reflect.Value) {
report_compare.go#L207: var formatKey func(reflect.Value) string
report_compare.go#L212: formatKey = func(v reflect.Value) string { return v.String() }
report_compare.go#L216: formatKey = func(reflect.Value) string { return "" }
report_compare.go#L220: formatKey = func(v reflect.Value) string { return formatMapKey(v, false, ptrs) }
report_compare.go#L283: var keys []reflect.Value // invariant: len(list) == len(keys)
report_compare.go#L323: keys = append(keys, reflect.Value{})
report_compare.go#L372: keys = append(keys, reflect.Value{})
report_compare.go#L381: seenKeys := map[string]reflect.Value{}
report_references.go#L36: func (ps *pointerReferences) PushPair(vx, vy reflect.Value, d diffMode, deref bool) (pp [2]value.Pointer) {
report_references.go#L55: func (ps *pointerReferences) Push(v reflect.Value) (p value.Pointer, seen bool) {
report_reflect.go#L114: func (opts formatOptions) FormatValue(v reflect.Value, parentKind reflect.Kind, ptrs *pointerReferences) (out textNode) {
report_reflect.go#L359: func formatMapKey(v reflect.Value, disambiguate bool, ptrs *pointerReferences) string {
report_slices.go#L166: func(v reflect.Value, d diffMode) textRecord {
report_slices.go#L256: func(v reflect.Value, d diffMode) textRecord {
report_slices.go#L268: func(v reflect.Value, d diffMode) textRecord {
report_slices.go#L300: func(v reflect.Value, d diffMode) textRecord {
report_slices.go#L358: vx, vy reflect.Value, chunkSize int, name string,
report_slices.go#L359: makeRec func(reflect.Value, diffMode) textRecord,
report_slices.go#L368: appendChunks := func(v reflect.Value, d diffMode) int {
report_value.go#L16: ValueX reflect.Value
report_value.go#L17: ValueY reflect.Value
report_value.go#L49: Key reflect.Value // Invalid for slice element
github.com/google/go-cmp/cmp/internal/function
func.go#L78: func NameOf(v reflect.Value) string {
github.com/google/go-cmp/cmp/internal/value
pointer.go#L20: func PointerOf(v reflect.Value) Pointer {
sort.go#L16: func SortKeys(vs []reflect.Value) []reflect.Value {
sort.go#L36: func isLess(x, y reflect.Value) bool {
go.uber.org/mock/gomock
call.go#L131: vArgs := make([]reflect.Value, len(args))
call.go#L172: vArgs := make([]reflect.Value, len(args))
call.go#L479: func setSlice(arg any, v reflect.Value) {
call.go#L486: func setMap(arg any, v reflect.Value) {
call.go#L489: va.SetMapIndex(e, reflect.Value{})
matchers.go#L317: func (m inAnyOrderMatcher) prepareValue(x any) (reflect.Value, bool) {
matchers.go#L323: return reflect.Value{}, false
go/ast
print.go#L18: type FieldFilter func(name string, value reflect.Value) bool
print.go#L22: func NotNilFilter(_ string, v reflect.Value) bool {
print.go#L143: func (p *printer) print(x reflect.Value) {
google.golang.org/protobuf/internal/descfmt
stringer.go#L100: v := m.Call([]reflect.Value{reflect.ValueOf(i)})[0].Interface()
stringer.go#L108: method reflect.Value
stringer.go#L300: func (rs *records) Append(v reflect.Value, accessors ...methodAndName) {
stringer.go#L305: var rv reflect.Value
google.golang.org/protobuf/internal/impl
codec_field.go#L54: var vw reflect.Value // pointer to wrapper type
codec_field.go#L783: func asMessage(v reflect.Value) protoreflect.ProtoMessage {
codec_map.go#L92: func sizeMap(mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) int {
codec_map.go#L115: func consumeMap(b []byte, mapv reflect.Value, wtyp protowire.Type, mapi *mapInfo, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
codec_map.go#L172: func consumeMapOfMessage(b []byte, mapv reflect.Value, wtyp protowire.Type, mapi *mapInfo, f *coderFieldInfo, opts unmarshalOptions) (out unmarshalOutput, err error) {
codec_map.go#L236: func appendMapItem(b []byte, keyrv, valrv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
codec_map.go#L277: func appendMap(b []byte, mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
codec_map.go#L296: func appendMapDeterministic(b []byte, mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo, opts marshalOptions) ([]byte, error) {
codec_map.go#L325: func isInitMap(mapv reflect.Value, mapi *mapInfo, f *coderFieldInfo) error {
convert.go#L23: PBValueOf(reflect.Value) protoreflect.Value
convert.go#L26: GoValueOf(protoreflect.Value) reflect.Value
convert.go#L32: IsValidGo(reflect.Value) bool
convert.go#L150: func (c *boolConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L156: func (c *boolConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L163: func (c *boolConverter) IsValidGo(v reflect.Value) bool {
convert.go#L174: func (c *int32Converter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L180: func (c *int32Converter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L187: func (c *int32Converter) IsValidGo(v reflect.Value) bool {
convert.go#L198: func (c *int64Converter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L204: func (c *int64Converter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L211: func (c *int64Converter) IsValidGo(v reflect.Value) bool {
convert.go#L222: func (c *uint32Converter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L228: func (c *uint32Converter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L235: func (c *uint32Converter) IsValidGo(v reflect.Value) bool {
convert.go#L246: func (c *uint64Converter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L252: func (c *uint64Converter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L259: func (c *uint64Converter) IsValidGo(v reflect.Value) bool {
convert.go#L270: func (c *float32Converter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L276: func (c *float32Converter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L283: func (c *float32Converter) IsValidGo(v reflect.Value) bool {
convert.go#L294: func (c *float64Converter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L300: func (c *float64Converter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L307: func (c *float64Converter) IsValidGo(v reflect.Value) bool {
convert.go#L318: func (c *stringConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L324: func (c *stringConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L337: func (c *stringConverter) IsValidGo(v reflect.Value) bool {
convert.go#L348: func (c *bytesConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L357: func (c *bytesConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L364: func (c *bytesConverter) IsValidGo(v reflect.Value) bool {
convert.go#L385: func (c *enumConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L392: func (c *enumConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L401: func (c *enumConverter) IsValidGo(v reflect.Value) bool {
convert.go#L421: func (c *messageConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert.go#L438: func (c *messageConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert.go#L440: var rv reflect.Value
convert.go#L464: var rv reflect.Value
convert.go#L476: func (c *messageConverter) IsValidGo(v reflect.Value) bool {
convert_list.go#L29: func (c *listConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert_list.go#L38: func (c *listConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert_list.go#L54: func (c *listConverter) IsValidGo(v reflect.Value) bool {
convert_list.go#L71: func (c *listPtrConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert_list.go#L78: func (c *listPtrConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert_list.go#L90: func (c *listPtrConverter) IsValidGo(v reflect.Value) bool {
convert_list.go#L103: v reflect.Value // *[]T
convert_map.go#L30: func (c *mapConverter) PBValueOf(v reflect.Value) protoreflect.Value {
convert_map.go#L37: func (c *mapConverter) GoValueOf(v protoreflect.Value) reflect.Value {
convert_map.go#L49: func (c *mapConverter) IsValidGo(v reflect.Value) bool {
convert_map.go#L62: v reflect.Value // map[K]V
convert_map.go#L90: ms.v.SetMapIndex(rk, reflect.Value{})
legacy_enum.go#L36: func legacyWrapEnum(v reflect.Value) protoreflect.Enum {
legacy_message.go#L24: func legacyWrapMessage(v reflect.Value) protoreflect.Message {
legacy_message.go#L218: for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
legacy_message.go#L229: vs := fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))})[0]
legacy_message.go#L492: v reflect.Value
message.go#L205: for _, v := range fn.Func.Call([]reflect.Value{reflect.Zero(fn.Type.In(0))}) {
pointer_unsafe.go#L47: func pointerOfValue(v reflect.Value) pointer {
pointer_unsafe.go#L76: func (p pointer) AsValueOf(t reflect.Type) reflect.Value {
gotest.tools/v3/assert/cmp
compare.go#L264: msgFunc := func(value reflect.Value) string {
compare.go#L270: func isNil(obj interface{}, msgFunc func(reflect.Value) string) Comparison {
internal/buildcfg
exp.go#L167: var rBase reflect.Value
internal/fmtsort
sort.go#L28: Key, Value reflect.Value
sort.go#L49: func Sort(mapValue reflect.Value) SortedMap {
sort.go#L72: func compare(aVal, bVal reflect.Value) int {
sort.go#L143: func nilCompare(aVal, bVal reflect.Value) (int, bool) {
net/http/httptrace
trace.go#L202: newFunc := reflect.MakeFunc(hookType, func(args []reflect.Value) []reflect.Value {
testing
fuzz.go#L328: args := []reflect.Value{reflect.ValueOf(t)}
text/template
exec.go#L45: value reflect.Value
exec.go#L49: func (s *state) push(name string, value reflect.Value) {
exec.go#L65: func (s *state) setVar(name string, value reflect.Value) {
exec.go#L76: func (s *state) setTopVar(n int, value reflect.Value) {
exec.go#L81: func (s *state) varValue(name string) reflect.Value {
exec.go#L91: var zero reflect.Value
exec.go#L99: func isMissing(v reflect.Value) bool {
exec.go#L212: value, ok := data.(reflect.Value)
exec.go#L261: func (s *state) walk(dot reflect.Value, node parse.Node) {
exec.go#L299: func (s *state) walkIfOrWith(typ parse.NodeType, dot reflect.Value, pipe *parse.PipeNode, list, elseList *parse.ListNode) {
exec.go#L324: func isTrue(val reflect.Value) (truth, ok bool) {
exec.go#L352: func (s *state) walkRange(dot reflect.Value, r *parse.RangeNode) {
exec.go#L363: oneIteration := func(index, elem reflect.Value) {
exec.go#L408: oneIteration(reflect.Value{}, v)
exec.go#L464: oneIteration(reflect.Value{}, v)
exec.go#L481: oneIteration(reflect.Value{}, i)
exec.go#L498: func (s *state) walkTemplate(dot reflect.Value, t *parse.TemplateNode) {
exec.go#L525: func (s *state) evalPipeline(dot reflect.Value, pipe *parse.PipeNode) (value reflect.Value) {
exec.go#L548: func (s *state) notAFunction(args []parse.Node, final reflect.Value) {
exec.go#L554: func (s *state) evalCommand(dot reflect.Value, cmd *parse.CommandNode, final reflect.Value) reflect.Value {
exec.go#L593: func (s *state) idealConstant(constant *parse.NumberNode) reflect.Value {
exec.go#L628: func (s *state) evalFieldNode(dot reflect.Value, field *parse.FieldNode, args []parse.Node, final reflect.Value) reflect.Value {
exec.go#L633: func (s *state) evalChainNode(dot reflect.Value, chain *parse.ChainNode, args []parse.Node, final reflect.Value) reflect.Value {
exec.go#L646: func (s *state) evalVariableNode(dot reflect.Value, variable *parse.VariableNode, args []parse.Node, final reflect.Value) reflect.Value {
exec.go#L660: func (s *state) evalFieldChain(dot, receiver reflect.Value, node parse.Node, ident []string, args []parse.Node, final reflect.Value) reflect.Value {
exec.go#L669: func (s *state) evalFunction(dot reflect.Value, node *parse.IdentifierNode, cmd parse.Node, args []parse.Node, final reflect.Value) reflect.Value {
exec.go#L682: func (s *state) evalField(dot reflect.Value, fieldName string, node parse.Node, args []parse.Node, final, receiver reflect.Value) reflect.Value {
exec.go#L766: reflectValueType = reflect.TypeFor[reflect.Value]()
exec.go#L772: func (s *state) evalCall(dot, fun reflect.Value, isBuiltin bool, node parse.Node, name string, args []parse.Node, final reflect.Value) reflect.Value {
exec.go#L794: unwrap := func(v reflect.Value) reflect.Value {
exec.go#L796: v = v.Interface().(reflect.Value)
exec.go#L804: var v reflect.Value
exec.go#L806: v = s.evalArg(dot, argType, arg).Interface().(reflect.Value)
exec.go#L826: argv := make([]reflect.Value, numIn)
exec.go#L866: argv = append([]reflect.Value{reflect.ValueOf(calleeName)}, argv...)
exec.go#L892: func (s *state) validateType(value reflect.Value, typ reflect.Type) reflect.Value {
exec.go#L934: func (s *state) evalArg(dot reflect.Value, typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L981: func (s *state) evalBool(typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L992: func (s *state) evalString(typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L1003: func (s *state) evalInteger(typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L1014: func (s *state) evalUnsignedInteger(typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L1025: func (s *state) evalFloat(typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L1036: func (s *state) evalComplex(typ reflect.Type, n parse.Node) reflect.Value {
exec.go#L1046: func (s *state) evalEmptyInterface(dot reflect.Value, n parse.Node) reflect.Value {
exec.go#L1076: func indirect(v reflect.Value) (rv reflect.Value, isNil bool) {
exec.go#L1089: func indirectInterface(v reflect.Value) reflect.Value {
exec.go#L1094: return reflect.Value{}
exec.go#L1101: func (s *state) printValue(n parse.Node, v reflect.Value) {
exec.go#L1115: func printableValue(v reflect.Value) (any, bool) {
funcs.go#L67: v map[string]reflect.Value
funcs.go#L72: func builtinFuncs() map[string]reflect.Value {
funcs.go#L80: func createValueFuncs(funcMap FuncMap) map[string]reflect.Value {
funcs.go#L81: m := make(map[string]reflect.Value)
funcs.go#L87: func addValueFuncs(out map[string]reflect.Value, in FuncMap) {
funcs.go#L144: func findFunction(name string, tmpl *Template) (v reflect.Value, isBuiltin, ok bool) {
funcs.go#L155: return reflect.Value{}, false, false
funcs.go#L160: func prepareArg(value reflect.Value, argType reflect.Type) (reflect.Value, error) {
funcs.go#L163: return reflect.Value{}, fmt.Errorf("value is nil; should be of type %s", argType)
funcs.go#L174: return reflect.Value{}, fmt.Errorf("value has type %s; should be %s", value.Type(), argType)
funcs.go#L188: func indexArg(index reflect.Value, cap int) (int, error) {
funcs.go#L211: func index(item reflect.Value, indexes ...reflect.Value) (reflect.Value, error) {
funcs.go#L214: return reflect.Value{}, fmt.Errorf("index of untyped nil")
funcs.go#L220: return reflect.Value{}, fmt.Errorf("index of nil pointer")
funcs.go#L226: return reflect.Value{}, err
funcs.go#L232: return reflect.Value{}, err
funcs.go#L243: return reflect.Value{}, fmt.Errorf("can't index item of type %s", item.Type())
funcs.go#L255: func slice(item reflect.Value, indexes ...reflect.Value) (reflect.Value, error) {
funcs.go#L258: return reflect.Value{}, fmt.Errorf("slice of untyped nil")
funcs.go#L261: return reflect.Value{}, fmt.Errorf("too many slice indexes: %d", len(indexes))
funcs.go#L267: return reflect.Value{}, fmt.Errorf("cannot 3-index slice a string")
funcs.go#L273: return reflect.Value{}, fmt.Errorf("can't slice item of type %s", item.Type())
funcs.go#L280: return reflect.Value{}, err
funcs.go#L286: return reflect.Value{}, fmt.Errorf("invalid slice index: %d > %d", idx[0], idx[1])
funcs.go#L293: return reflect.Value{}, fmt.Errorf("invalid slice index: %d > %d", idx[1], idx[2])
funcs.go#L301: func length(item reflect.Value) (int, error) {
funcs.go#L315: func emptyCall(fn reflect.Value, args ...reflect.Value) reflect.Value {
funcs.go#L321: func call(name string, fn reflect.Value, args ...reflect.Value) (reflect.Value, error) {
funcs.go#L324: return reflect.Value{}, fmt.Errorf("call of nil")
funcs.go#L328: return reflect.Value{}, fmt.Errorf("non-function %s of type %s", name, typ)
funcs.go#L332: return reflect.Value{}, err
funcs.go#L338: return reflect.Value{}, fmt.Errorf("wrong number of args for %s: got %d want at least %d", name, len(args), numIn-1)
funcs.go#L343: return reflect.Value{}, fmt.Errorf("wrong number of args for %s: got %d want %d", name, len(args), numIn)
funcs.go#L346: argv := make([]reflect.Value, len(args))
funcs.go#L357: return reflect.Value{}, fmt.Errorf("arg %d: %w", i, err)
funcs.go#L365: func safeCall(fun reflect.Value, args []reflect.Value) (val reflect.Value, err error) {
funcs.go#L384: func truth(arg reflect.Value) bool {
funcs.go#L391: func and(arg0 reflect.Value, args ...reflect.Value) reflect.Value {
funcs.go#L397: func or(arg0 reflect.Value, args ...reflect.Value) reflect.Value {
funcs.go#L402: func not(arg reflect.Value) bool {
funcs.go#L428: func basicKind(v reflect.Value) (kind, error) {
funcs.go#L447: func isNil(v reflect.Value) bool {
funcs.go#L460: func canCompare(v1, v2 reflect.Value) bool {
funcs.go#L471: func eq(arg1 reflect.Value, arg2 ...reflect.Value) (bool, error) {
funcs.go#L529: func ne(arg1, arg2 reflect.Value) (bool, error) {
funcs.go#L536: func lt(arg1, arg2 reflect.Value) (bool, error) {
funcs.go#L578: func le(arg1, arg2 reflect.Value) (bool, error) {
funcs.go#L588: func gt(arg1, arg2 reflect.Value) (bool, error) {
funcs.go#L598: func ge(arg1, arg2 reflect.Value) (bool, error) {
template.go#L24: execFuncs map[string]reflect.Value
template.go#L76: c.execFuncs = make(map[string]reflect.Value)