---
title: llarp/rpc/rpc_request_parser.hpp

---

# llarp/rpc/rpc_request_parser.hpp



## Namespaces

| Name           |
| -------------- |
| **[llarp](Namespaces/namespacellarp.md)** <br>[crypto.hpp] |
| **[llarp::rpc](Namespaces/namespacellarp_1_1rpc.md)**  |




## Source code

```cpp
#pragma once

#include "rpc_request_definitions.hpp"
#include <string_view>
#include <llarp/config/config.hpp>
#include <oxenmq/oxenmq.h>
#include <oxenmq/address.h>
#include <oxen/log/omq_logger.hpp>

namespace llarp::rpc
{
  using rpc_input = std::variant<std::monostate, nlohmann::json, oxenc::bt_dict_consumer>;

  inline void
  parse_request(NoArgs&, rpc_input)
  {}

  void
  parse_request(QuicConnect& quicconnect, rpc_input input);
  void
  parse_request(QuicListener& quiclistener, rpc_input input);
  void
  parse_request(LookupSnode& lookupsnode, rpc_input input);
  void
  parse_request(Exit& exit, rpc_input input);
  void
  parse_request(DNSQuery& dnsquery, rpc_input input);
  void
  parse_request(Config& config, rpc_input input);

}  // namespace llarp::rpc
```


-------------------------------

Updated on 2023-01-23 at 22:05:56 +0000
