code: func reflectIntKindAndType(unsigned bool, size int) (reflect.Kind, reflect.Type) {
  	switch size {
  	case 8:
  		if unsigned {
  			return reflect.Uint8, uint8T
  		}
  		return reflect.Int8, int8T
  	case 16:
  		if unsigned {
  			return reflect.Uint16, uint16T
  		}
  		return reflect.Int16, int16T
  	case 32:
  		if unsigned {
  			return reflect.Uint32, uint32T
  		}
  		return reflect.Int32, int32T
  	case 64:
  		if unsigned {
  			return reflect.Uint64, uint64T
  		}
  		return reflect.Int64, int64T
  	}
  	return reflect.Ptr, bigT
  }
docs: // reflectIntKind returns the reflect using the given size and
  // unsignedness.