Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 30 of 33 for CanAddr (0.14 sec)

  1. src/text/template/exec.go

    	}
    
    	// Unless it's an interface, need to get to a value of type *T to guarantee
    	// we see all methods of T and *T.
    	ptr := receiver
    	if ptr.Kind() != reflect.Interface && ptr.Kind() != reflect.Pointer && ptr.CanAddr() {
    		ptr = ptr.Addr()
    	}
    	if method := ptr.MethodByName(fieldName); method.IsValid() {
    		return s.evalCall(dot, method, false, node, fieldName, args, final)
    	}
    	hasArgs := len(args) > 1 || !isMissing(final)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 24 21:22:24 UTC 2024
    - 32K bytes
    - Viewed (0)
  2. src/encoding/json/encode.go

    	canAddrEnc, elseEnc encoderFunc
    }
    
    func (ce condAddrEncoder) encode(e *encodeState, v reflect.Value, opts encOpts) {
    	if v.CanAddr() {
    		ce.canAddrEnc(e, v, opts)
    	} else {
    		ce.elseEnc(e, v, opts)
    	}
    }
    
    // newCondAddrEncoder returns an encoder that checks whether its value
    // CanAddr and delegates to canAddrEnc if so, else to elseEnc.
    func newCondAddrEncoder(canAddrEnc, elseEnc encoderFunc) encoderFunc {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 00:18:55 UTC 2024
    - 36.2K bytes
    - Viewed (0)
  3. src/go/internal/gccgoimporter/testdata/v1reflect.gox

    >; }>
     func (v <type 1>) .reflect.iword () <type 43 ".reflect.iword" <type 7>>;
     func (v <type 1>) Addr () <type 1>;
     func (v <type 1>) Bool () <type -15>;
     func (v <type 1>) Bytes () <type 44 [] <type -20>>;
     func (v <type 1>) CanAddr () <type -15>;
     func (v <type 1>) CanSet () <type -15>;
     func (v <type 1>) Call (in <type 45 [] <type 1>>) <type 46 [] <type 1>>;
     func (v <type 1>) CallSlice (in <type 47 [] <type 1>>) <type 48 [] <type 1>>;
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Sep 30 21:33:51 UTC 2021
    - 10.3K bytes
    - Viewed (0)
  4. test/escape_reflect.go

    func ifacedata(x any) [2]uintptr { // ERROR "moved to heap: x"
    	v := reflect.ValueOf(&x).Elem()
    	return v.InterfaceData()
    }
    
    func can(x int) bool {
    	v := reflect.ValueOf(x) // ERROR "x does not escape"
    	return v.CanAddr() || v.CanInt() || v.CanSet() || v.CanInterface()
    }
    
    func is(x int) bool {
    	v := reflect.ValueOf(x) // ERROR "x does not escape"
    	return v.IsValid() || v.IsNil() || v.IsZero()
    }
    
    func is2(x [2]int) bool {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 08 18:50:24 UTC 2023
    - 13.1K bytes
    - Viewed (0)
  5. src/internal/reflectlite/value.go

    	//	- flagStickyRO: obtained via unexported not embedded field, so read-only
    	//	- flagEmbedRO: obtained via unexported embedded field, so read-only
    	//	- flagIndir: val holds a pointer to the data
    	//	- flagAddr: v.CanAddr is true (implies flagIndir)
    	// Value cannot represent method values.
    	// The next five bits give the Kind of the value.
    	// This repeats typ.Kind() except for method values.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 07 17:01:54 UTC 2024
    - 13.6K bytes
    - Viewed (0)
  6. src/reflect/value.go

    	return *(*[]rune)(v.ptr)
    }
    
    // CanAddr reports whether the value's address can be obtained with [Value.Addr].
    // Such values are called addressable. A value is addressable if it is
    // an element of a slice, an element of an addressable array,
    // a field of an addressable struct, or the result of dereferencing a pointer.
    // If CanAddr returns false, calling [Value.Addr] will panic.
    func (v Value) CanAddr() bool {
    	return v.flag&flagAddr != 0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 21:17:41 UTC 2024
    - 119.9K bytes
    - Viewed (0)
  7. src/encoding/gob/encode.go

    			rt = rt.Elem()
    		}
    	}
    	var op encOp
    	op = func(i *encInstr, state *encoderState, v reflect.Value) {
    		if ut.encIndir == -1 {
    			// Need to climb up one level to turn value into pointer.
    			if !v.CanAddr() {
    				errorf("unaddressable value of type %s", rt)
    			}
    			v = v.Addr()
    		}
    		if !state.sendZero && v.IsZero() {
    			return
    		}
    		state.update(i)
    		state.enc.encodeGobEncoder(state.b, ut, v)
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 16 02:00:26 UTC 2024
    - 19K bytes
    - Viewed (0)
  8. staging/src/k8s.io/apiserver/pkg/storage/etcd3/store_test.go

    			}
    			// reflection requires that the value be addressable in order to call set,
    			// so we must ensure the value we created is available on the heap (not a problem
    			// for normal usage)
    			if !tt.args.v.CanAddr() {
    				x := reflect.New(tt.args.v.Type())
    				x.Elem().Set(tt.args.v)
    				tt.args.v = x.Elem()
    			}
    			growSlice(tt.args.v, tt.args.maxCapacity, tt.args.sizes...)
    			if tt.cap != tt.args.v.Cap() {
    Registered: Sat Jun 15 01:39:40 UTC 2024
    - Last Modified: Tue Jun 11 12:45:33 UTC 2024
    - 26.5K bytes
    - Viewed (0)
  9. src/fmt/print.go

    		case 's', 'q', 'x', 'X':
    			// Handle byte and uint8 slices and arrays special for the above verbs.
    			t := f.Type()
    			if t.Elem().Kind() == reflect.Uint8 {
    				var bytes []byte
    				if f.Kind() == reflect.Slice || f.CanAddr() {
    					bytes = f.Bytes()
    				} else {
    					// We have an array, but we cannot Bytes() a non-addressable array,
    					// so we build a slice by hand. This is a rare case but it would be nice
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon May 13 21:22:43 UTC 2024
    - 31.8K bytes
    - Viewed (0)
  10. src/encoding/json/decode.go

    	haveAddr := false
    
    	// If v is a named type and is addressable,
    	// start with its address, so that if the type has pointer methods,
    	// we find them.
    	if v.Kind() != reflect.Pointer && v.Type().Name() != "" && v.CanAddr() {
    		haveAddr = true
    		v = v.Addr()
    	}
    	for {
    		// Load value from interface, but only if the result will be
    		// usefully addressable.
    		if v.Kind() == reflect.Interface && !v.IsNil() {
    			e := v.Elem()
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 00:18:55 UTC 2024
    - 35.3K bytes
    - Viewed (0)
Back to top