[]byte) string {
                  
                  
                      return *(*string)(unsafe.Pointer(&b))
                  
                  
                  }
                  
                  
                  
                  
                  
                  func StringToBytes(s string) []byte {
                  
                  
                      return *(*[]byte)(unsafe.Pointer(&s))
                  
                  
                  }
                  
                  
                  цель: гонять формат между редис строками и протобаф объектами без аллокаций, то есть известно что слайс меняться не будет
                  
                  
                
если изолировано и вы уверены что ничего не поломаете то да, но крайне осторожно
а где конвертация между reflect.SliceHeader и reflect.StringHeader? sliceheader больше на Cap int
На недавнем GolangLive было выступление Валялкина, как раз про такие преобразования советую посмотреть чтобы узнать что вас может ожидать
Обсуждают сегодня