| 798 | } |
| 799 | |
| 800 | Optional<StringRef> JsonWebKeySet::toStringRef(Arena& arena) { |
| 801 | using Buffer = rapidjson::StringBuffer; |
| 802 | using Writer = rapidjson::Writer<Buffer>; |
| 803 | auto buffer = Buffer(); |
| 804 | auto writer = Writer(buffer); |
| 805 | writer.StartObject(); |
| 806 | writer.Key("keys"); |
| 807 | writer.StartArray(); |
| 808 | for (const auto& [keyName, key] : keys) { |
| 809 | if (!encodeKey(writer, keyName, key)) { |
| 810 | return {}; |
| 811 | } |
| 812 | } |
| 813 | writer.EndArray(); |
| 814 | writer.EndObject(); |
| 815 | auto buf = new (arena) uint8_t[buffer.GetSize()]; |
| 816 | ::memcpy(buf, buffer.GetString(), buffer.GetSize()); |
| 817 | return StringRef(buf, buffer.GetSize()); |
| 818 | } |
| 819 | |
| 820 | void forceLinkJsonWebKeySetTests() {} |
| 821 |
no test coverage detected