Size: a a a

2020 August 13

с

сонная википедия... in Go-go!
Roman Sharkov
ну главное чтоб он строку не прятал
ну вот я попробовал

https://play.golang.org/p/1mgsjcL-Jux

=== RUN   TestMe
   super_test.go:15:
         Error Trace:  super_test.go:11
                             super_test.go:15
         Error:        Expected value not to be nil.
         Test:         TestMe
--- FAIL: TestMe (0.00s)
FAIL

то есть трейс есть
источник

с

сонная википедия... in Go-go!
11 строчка это setup, 15 TestMe
источник

RS

Roman Sharkov in Go-go!
прекрасно, спасибо)
источник

YM

Yuriy Musienko in Go-go!
Кто-то работал с Cadence? Ставлю все зависимости в докерфайле через go get -u

При установке всех cadence зависимостей получаю в логах

get "go.uber.org/cadence/client": found meta tag get.metaImport{Prefix:"go.uber.org/cadence"


В чем может быть проблема?
источник

с

сонная википедия... in Go-go!
просто
go get go.uber.org/cadence
источник

с

сонная википедия... in Go-go!
я не работал, но https://github.com/uber-go/cadence-client#how-to-use
написанож
источник

p

pragus in Go-go!
Nikita L
Привет! Помогите, пожалуйста, с вопросом.
Например, есть структуры:
type A struct {
 field1 int `json:"field1"`
 field2 string `json:"field2"`
}

type B struct {
 field1 int `json:"field1"`
 field2 string `json:"field2"`
 field3 string `json:"field3"`
 field4 string `json:"field4"`
}


Есть переменная:
variableB := &B{}


Как можно преобразовать переменную valiableB в тип A? Чтобы значения, которые были в variableB.field1 и variableB.field2  остались после преобразования
А порядок и типы  полей в обоих структурах одинаковые?
источник

NL

Nikita L in Go-go!
pragus
А порядок и типы  полей в обоих структурах одинаковые?
Да
источник

RS

Roman Sharkov in Go-go!
Nikita L
Привет! Помогите, пожалуйста, с вопросом.
Например, есть структуры:
type A struct {
 field1 int `json:"field1"`
 field2 string `json:"field2"`
}

type B struct {
 field1 int `json:"field1"`
 field2 string `json:"field2"`
 field3 string `json:"field3"`
 field4 string `json:"field4"`
}


Есть переменная:
variableB := &B{}


Как можно преобразовать переменную valiableB в тип A? Чтобы значения, которые были в variableB.field1 и variableB.field2  остались после преобразования
embedding

type A struct {
 field1 int json:"field1"
 field2 string json:"field2"
}

type B struct {
 А
 field3 string json:"field3"
 field4 string json:"field4"
}

a := &А{}
b := &B{}
b.A = *a
источник

p

pragus in Go-go!
Nikita L
Привет! Помогите, пожалуйста, с вопросом.
Например, есть структуры:
type A struct {
 field1 int `json:"field1"`
 field2 string `json:"field2"`
}

type B struct {
 field1 int `json:"field1"`
 field2 string `json:"field2"`
 field3 string `json:"field3"`
 field4 string `json:"field4"`
}


Есть переменная:
variableB := &B{}


Как можно преобразовать переменную valiableB в тип A? Чтобы значения, которые были в variableB.field1 и variableB.field2  остались после преобразования
castedA := (*A)(unsafe.Pointer(variableB))
источник

ВС

Владимир Столяров... in Go-go!
зачем по ногам стрелять?)
источник

p

pragus in Go-go!
Владимир Столяров
зачем по ногам стрелять?)
за то быстро :)
источник

с

сонная википедия... in Go-go!
Владимир Столяров
зачем по ногам стрелять?)
+
источник

с

сонная википедия... in Go-go!
pragus
за то быстро :)
и небезопасно
источник

NL

Nikita L in Go-go!
Название пакеты как бы намекает, но что небезопасного в этом подходе?
источник

с

сонная википедия... in Go-go!
pragus
за то быстро :)
а оставшиеся строки кстати, так не утекут?
источник

p

pragus in Go-go!
сонная википедия
а оставшиеся строки кстати, так не утекут?
куда утекут?
источник

RS

Roman Sharkov in Go-go!
pragus
castedA := (*A)(unsafe.Pointer(variableB))
ох, я бы чёрной магией не советовал баловаться.. говорят может ноги отстрелить по бёдра
источник

с

сонная википедия... in Go-go!
pragus
куда утекут?
в первой структуре меньше полей, чем во второй
источник

Y

Yaroslav in Go-go!
сонная википедия
в первой структуре меньше полей, чем во второй
Так variableB все ещё указывает на нее
источник