MCPcopy Create free account
hub / github.com/TheThingsNetwork/lorawan-stack / FieldIsZero

Method FieldIsZero

pkg/ttnpb/lorawan.go:968–1003  ·  view source on GitHub ↗

FieldIsZero returns whether path p is zero.

(p string)

Source from the content-addressed store, hash-verified

966
967// FieldIsZero returns whether path p is zero.
968func (v *MACPayload) FieldIsZero(p string) bool {
969 if v == nil {
970 return true
971 }
972 switch p {
973 case "decoded_payload":
974 return v.DecodedPayload == nil
975 case "f_hdr":
976 return fieldsAreZero(v.FHdr, FHDRFieldPathsTopLevel...)
977 case "f_hdr.dev_addr":
978 return v.FHdr.FieldIsZero("dev_addr")
979 case "f_hdr.f_cnt":
980 return v.FHdr.FieldIsZero("f_cnt")
981 case "f_hdr.f_ctrl":
982 return v.FHdr.FieldIsZero("f_ctrl")
983 case "f_hdr.f_ctrl.ack":
984 return v.FHdr.FieldIsZero("f_ctrl.ack")
985 case "f_hdr.f_ctrl.adr":
986 return v.FHdr.FieldIsZero("f_ctrl.adr")
987 case "f_hdr.f_ctrl.adr_ack_req":
988 return v.FHdr.FieldIsZero("f_ctrl.adr_ack_req")
989 case "f_hdr.f_ctrl.class_b":
990 return v.FHdr.FieldIsZero("f_ctrl.class_b")
991 case "f_hdr.f_ctrl.f_pending":
992 return v.FHdr.FieldIsZero("f_ctrl.f_pending")
993 case "f_hdr.f_opts":
994 return v.FHdr.FieldIsZero("f_opts")
995 case "f_port":
996 return v.FPort == 0
997 case "frm_payload":
998 return v.FrmPayload == nil
999 case "full_f_cnt":
1000 return v.FullFCnt == 0
1001 }
1002 panic(fmt.Sprintf("unknown path '%s'", p))
1003}
1004
1005// FieldIsZero returns whether path p is zero.
1006func (v *RejoinRequestPayload) FieldIsZero(p string) bool {

Callers

nothing calls this directly

Calls 2

fieldsAreZeroFunction · 0.85
FieldIsZeroMethod · 0.45

Tested by

no test coverage detected