Replace if by switch in decode

This commit is contained in:
Thomas LAY
2020-04-06 14:35:53 +02:00
parent 34eb7e045a
commit a14a2bc9ef
+9 -4
View File
@@ -64,7 +64,8 @@ func Decode(tcString string) (t *TCData, err error) {
return nil, err return nil, err
} }
if segmentType == SegmentTypeDisclosedVendors { switch segmentType {
case SegmentTypeDisclosedVendors:
if mapSegments[SegmentTypeDisclosedVendors] == true { if mapSegments[SegmentTypeDisclosedVendors] == true {
return nil, fmt.Errorf("duplicate Disclosed Vendors segment") return nil, fmt.Errorf("duplicate Disclosed Vendors segment")
} }
@@ -73,7 +74,8 @@ func Decode(tcString string) (t *TCData, err error) {
t.DisclosedVendors = segment t.DisclosedVendors = segment
mapSegments[SegmentTypeDisclosedVendors] = true mapSegments[SegmentTypeDisclosedVendors] = true
} }
} else if segmentType == SegmentTypeAllowedVendors { break
case SegmentTypeAllowedVendors:
if mapSegments[SegmentTypeAllowedVendors] == true { if mapSegments[SegmentTypeAllowedVendors] == true {
return nil, fmt.Errorf("duplicate Allowed Vendors segment") return nil, fmt.Errorf("duplicate Allowed Vendors segment")
} }
@@ -82,7 +84,8 @@ func Decode(tcString string) (t *TCData, err error) {
t.AllowedVendors = segment t.AllowedVendors = segment
mapSegments[SegmentTypeAllowedVendors] = true mapSegments[SegmentTypeAllowedVendors] = true
} }
} else if segmentType == SegmentTypePublisherTC { break
case SegmentTypePublisherTC:
if mapSegments[SegmentTypePublisherTC] == true { if mapSegments[SegmentTypePublisherTC] == true {
return nil, fmt.Errorf("duplicate Publisher TC segment") return nil, fmt.Errorf("duplicate Publisher TC segment")
} }
@@ -91,7 +94,8 @@ func Decode(tcString string) (t *TCData, err error) {
t.PublisherTC = segment t.PublisherTC = segment
mapSegments[SegmentTypePublisherTC] = true mapSegments[SegmentTypePublisherTC] = true
} }
} else { break
default:
if mapSegments[SegmentTypeCoreString] == true { if mapSegments[SegmentTypeCoreString] == true {
return nil, fmt.Errorf("duplicate Core String segment") return nil, fmt.Errorf("duplicate Core String segment")
} }
@@ -102,6 +106,7 @@ func Decode(tcString string) (t *TCData, err error) {
mapSegments[SegmentTypeCoreString] = true mapSegments[SegmentTypeCoreString] = true
} }
} }
break
} }
} }