mirror of
https://github.com/facebookincubator/mvfst.git
synced 2025-11-27 03:41:14 +03:00
Custom variant type for packetheader
Summary: Make a custom variant type for PacketHeader. By not relying on boost::variant this reduces the code size of the implementation. This uses a combination of a union type as well as a enum type to emulate a variant Reviewed By: yangchi Differential Revision: D17187589 fbshipit-source-id: 00c2b9b8dd3f3e73af766d84888b13b9d867165a
This commit is contained in:
committed by
Facebook Github Bot
parent
c8da36d755
commit
04baa15a04
@@ -56,17 +56,12 @@ TEST_F(QuicHeaderCodecTest, ShortHeaderTest) {
|
||||
auto packet = std::move(builder).buildPacket();
|
||||
auto result = parseHeader(*packet.header);
|
||||
auto& header = result->parsedHeader;
|
||||
|
||||
EXPECT_EQ(
|
||||
getTestConnectionId(),
|
||||
folly::variant_match(
|
||||
header.value(),
|
||||
[](const LongHeader& longHeader) {
|
||||
return longHeader.getDestinationConnId();
|
||||
},
|
||||
[](const ShortHeader& shortHeader) {
|
||||
return shortHeader.getConnectionId();
|
||||
}));
|
||||
LongHeader* longHeader = header->asLong();
|
||||
if (longHeader) {
|
||||
EXPECT_EQ(getTestConnectionId(), longHeader->getDestinationConnId());
|
||||
} else {
|
||||
EXPECT_EQ(getTestConnectionId(), header->asShort()->getConnectionId());
|
||||
}
|
||||
}
|
||||
} // namespace test
|
||||
} // namespace quic
|
||||
|
||||
Reference in New Issue
Block a user