| 634 | } |
| 635 | |
| 636 | std::vector<std::tuple<uint8_t, uint8_t, std::vector<unsigned char>>> TaprootBuilder::GetTreeTuples() const |
| 637 | { |
| 638 | assert(IsComplete()); |
| 639 | std::vector<std::tuple<uint8_t, uint8_t, std::vector<unsigned char>>> tuples; |
| 640 | if (m_branch.size()) { |
| 641 | const auto& leaves = m_branch[0]->leaves; |
| 642 | for (const auto& leaf : leaves) { |
| 643 | assert(leaf.merkle_branch.size() <= TAPROOT_CONTROL_MAX_NODE_COUNT); |
| 644 | uint8_t depth = (uint8_t)leaf.merkle_branch.size(); |
| 645 | uint8_t leaf_ver = (uint8_t)leaf.leaf_version; |
| 646 | tuples.emplace_back(depth, leaf_ver, leaf.script); |
| 647 | } |
| 648 | } |
| 649 | return tuples; |
| 650 | } |
no test coverage detected