MCPcopy
hub / github.com/redis/go-redis / readReply

Method readReply

command.go:4599–4647  ·  view source on GitHub ↗
(rd *proto.Reader)

Source from the content-addressed store, hash-verified

4597}
4598
4599func (cmd *GeoLocationCmd) readReply(rd *proto.Reader) error {
4600 n, err := rd.ReadArrayLen()
4601 if err != nil {
4602 return err
4603 }
4604 cmd.locations = make([]GeoLocation, n)
4605
4606 for i := 0; i < len(cmd.locations); i++ {
4607 // only name
4608 if cmd.q.withLen == 0 {
4609 if cmd.locations[i].Name, err = rd.ReadString(); err != nil {
4610 return err
4611 }
4612 continue
4613 }
4614
4615 // +name
4616 if err = rd.ReadFixedArrayLen(cmd.q.withLen + 1); err != nil {
4617 return err
4618 }
4619
4620 if cmd.locations[i].Name, err = rd.ReadString(); err != nil {
4621 return err
4622 }
4623 if cmd.q.WithDist {
4624 if cmd.locations[i].Dist, err = rd.ReadFloat(); err != nil {
4625 return err
4626 }
4627 }
4628 if cmd.q.WithGeoHash {
4629 if cmd.locations[i].GeoHash, err = rd.ReadInt(); err != nil {
4630 return err
4631 }
4632 }
4633 if cmd.q.WithCoord {
4634 if err = rd.ReadFixedArrayLen(2); err != nil {
4635 return err
4636 }
4637 if cmd.locations[i].Longitude, err = rd.ReadFloat(); err != nil {
4638 return err
4639 }
4640 if cmd.locations[i].Latitude, err = rd.ReadFloat(); err != nil {
4641 return err
4642 }
4643 }
4644 }
4645
4646 return nil
4647}
4648
4649func (cmd *GeoLocationCmd) Clone() Cmder {
4650 var q *GeoRadiusQuery

Callers

nothing calls this directly

Calls 5

ReadArrayLenMethod · 0.80
ReadStringMethod · 0.80
ReadFixedArrayLenMethod · 0.80
ReadFloatMethod · 0.80
ReadIntMethod · 0.80

Tested by

no test coverage detected