MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / PeekUint64LE

Method PeekUint64LE

src/core/string_consumer.cpp:60–71  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

58}
59
60std::optional<uint64_t> StringConsumer::PeekUint64LE() const
61{
62 if (this->GetBytesLeft() < 8) return std::nullopt;
63 return static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position])) |
64 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 1])) << 8 |
65 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 2])) << 16 |
66 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 3])) << 24 |
67 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 4])) << 32 |
68 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 5])) << 40 |
69 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 6])) << 48 |
70 static_cast<uint64_t>(static_cast<uint8_t>(this->src[this->position + 7])) << 56;
71}
72
73std::optional<char> StringConsumer::PeekChar() const
74{

Callers 3

TryReadUint64LEMethod · 0.95
ReadUint64LEMethod · 0.95

Calls 1

GetBytesLeftMethod · 0.95

Tested by

no test coverage detected