// Generated file -- DO NOT MODIFY. #include "denali.yunq.h" #include #include namespace { const uint64_t header_size = 24; // 4x uint32, 1x uint64 struct ExtPointer { uint32_t offset; uint32_t length; }; } // namespace glcr::Status DiskBlock::ParseFromBytes(const yunq::MessageView& message) { RETURN_ERROR(ParseFromBytesInternal(message)); return glcr::Status::Ok(); } glcr::Status DiskBlock::ParseFromBytes(const yunq::MessageView& message, const glcr::CapBuffer& caps) { RETURN_ERROR(ParseFromBytesInternal(message)); return glcr::Status::Ok(); } glcr::Status DiskBlock::ParseFromBytesInternal(const yunq::MessageView& message) { RETURN_ERROR(message.CheckHeader()); // Parse lba. ASSIGN_OR_RETURN(lba_, message.ReadField(0)); // Parse size. ASSIGN_OR_RETURN(size_, message.ReadField(1)); return glcr::Status::Ok(); } uint64_t DiskBlock::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset) const { yunq::Serializer serializer(bytes, offset, 2); return SerializeInternal(serializer); } uint64_t DiskBlock::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset, glcr::CapBuffer& caps) const { yunq::Serializer serializer(bytes, offset, 2, caps); return SerializeInternal(serializer); } uint64_t DiskBlock::SerializeInternal(yunq::Serializer& serializer) const { // Write lba. serializer.WriteField(0, lba_); // Write size. serializer.WriteField(1, size_); serializer.WriteHeader(); return serializer.size(); } glcr::Status ReadRequest::ParseFromBytes(const yunq::MessageView& message) { RETURN_ERROR(ParseFromBytesInternal(message)); return glcr::Status::Ok(); } glcr::Status ReadRequest::ParseFromBytes(const yunq::MessageView& message, const glcr::CapBuffer& caps) { RETURN_ERROR(ParseFromBytesInternal(message)); return glcr::Status::Ok(); } glcr::Status ReadRequest::ParseFromBytesInternal(const yunq::MessageView& message) { RETURN_ERROR(message.CheckHeader()); // Parse device_id. ASSIGN_OR_RETURN(device_id_, message.ReadField(0)); // Parse block. message.ReadMessage(1, block_); return glcr::Status::Ok(); } uint64_t ReadRequest::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset) const { yunq::Serializer serializer(bytes, offset, 2); return SerializeInternal(serializer); } uint64_t ReadRequest::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset, glcr::CapBuffer& caps) const { yunq::Serializer serializer(bytes, offset, 2, caps); return SerializeInternal(serializer); } uint64_t ReadRequest::SerializeInternal(yunq::Serializer& serializer) const { // Write device_id. serializer.WriteField(0, device_id_); // Write block. serializer.WriteMessage(1, block_); serializer.WriteHeader(); return serializer.size(); } glcr::Status ReadManyRequest::ParseFromBytes(const yunq::MessageView& message) { RETURN_ERROR(ParseFromBytesInternal(message)); return glcr::Status::Ok(); } glcr::Status ReadManyRequest::ParseFromBytes(const yunq::MessageView& message, const glcr::CapBuffer& caps) { RETURN_ERROR(ParseFromBytesInternal(message)); return glcr::Status::Ok(); } glcr::Status ReadManyRequest::ParseFromBytesInternal(const yunq::MessageView& message) { RETURN_ERROR(message.CheckHeader()); // Parse device_id. ASSIGN_OR_RETURN(device_id_, message.ReadField(0)); // Parse blocks. message.ReadRepeatedMessage(1, blocks_); return glcr::Status::Ok(); } uint64_t ReadManyRequest::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset) const { yunq::Serializer serializer(bytes, offset, 2); return SerializeInternal(serializer); } uint64_t ReadManyRequest::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset, glcr::CapBuffer& caps) const { yunq::Serializer serializer(bytes, offset, 2, caps); return SerializeInternal(serializer); } uint64_t ReadManyRequest::SerializeInternal(yunq::Serializer& serializer) const { // Write device_id. serializer.WriteField(0, device_id_); // Write blocks. serializer.WriteRepeatedMessage(1, blocks_); serializer.WriteHeader(); return serializer.size(); } glcr::Status ReadResponse::ParseFromBytes(const yunq::MessageView& message) { RETURN_ERROR(ParseFromBytesInternal(message)); // Parse memory. ASSIGN_OR_RETURN(memory_, message.ReadCapability(2)); return glcr::Status::Ok(); } glcr::Status ReadResponse::ParseFromBytes(const yunq::MessageView& message, const glcr::CapBuffer& caps) { RETURN_ERROR(ParseFromBytesInternal(message)); // Parse memory. ASSIGN_OR_RETURN(memory_, message.ReadCapability(2, caps)); return glcr::Status::Ok(); } glcr::Status ReadResponse::ParseFromBytesInternal(const yunq::MessageView& message) { RETURN_ERROR(message.CheckHeader()); // Parse device_id. ASSIGN_OR_RETURN(device_id_, message.ReadField(0)); // Parse size. ASSIGN_OR_RETURN(size_, message.ReadField(1)); // Parse memory. return glcr::Status::Ok(); } uint64_t ReadResponse::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset) const { yunq::Serializer serializer(bytes, offset, 3); return SerializeInternal(serializer); } uint64_t ReadResponse::SerializeToBytes(glcr::ByteBuffer& bytes, uint64_t offset, glcr::CapBuffer& caps) const { yunq::Serializer serializer(bytes, offset, 3, caps); return SerializeInternal(serializer); } uint64_t ReadResponse::SerializeInternal(yunq::Serializer& serializer) const { // Write device_id. serializer.WriteField(0, device_id_); // Write size. serializer.WriteField(1, size_); // Write memory. serializer.WriteCapability(2, memory_); serializer.WriteHeader(); return serializer.size(); }