package services import ( "fmt" "context" "log" "errors" "google.golang.org/grpc" pb "tldemo/services/User" ) type UserAddress struct { Address string PostalCode string } type UserData struct { Id int Name string Gender pb.GENDER_ENUM Addresses [] *UserAddress } type UserServer struct { pb.UnimplementedUserServiceServer UserArray []*UserData } func (s *UserServer) Register(ctx context.Context, in *pb.RegisterRequest) (*pb.RegisterResponse, error) { userData := &UserData{Id:len(s.UserArray), Name:in.Name, Gender:in.Gender} userData.Addresses = make([]*UserAddress, 0) for i:=0; i=len(s.UserArray)) { return nil, errors.New("Out of range!") } var userData = s.UserArray[int(in.Id)] address := make([]*pb.Address, 0) for i:=0; i