Get the byte sequence for this opcode, including prefix.
| 433 | |
| 434 | // Get the byte sequence for this opcode, including prefix. |
| 435 | std::vector<uint8_t> Opcode::GetBytes() const { |
| 436 | std::vector<uint8_t> result; |
| 437 | if (HasPrefix()) { |
| 438 | result.push_back(GetPrefix()); |
| 439 | uint8_t buffer[5]; |
| 440 | Offset length = |
| 441 | WriteU32Leb128Raw(buffer, buffer + sizeof(buffer), GetCode()); |
| 442 | assert(length != 0); |
| 443 | result.insert(result.end(), buffer, buffer + length); |
| 444 | } else { |
| 445 | result.push_back(GetCode()); |
| 446 | } |
| 447 | return result; |
| 448 | } |
| 449 | |
| 450 | } // namespace wabt |