void export_client()

in src/client.cc [83:103]


void export_client(py::module_& m) {
    py::class_<Client, std::shared_ptr<Client>>(m, "Client")
        .def(py::init<const std::string&, const ClientConfiguration&>())
        .def("create_producer", &Client_createProducer)
        .def("create_producer_async", &Client_createProducerAsync)
        .def("subscribe", &Client_subscribe)
        .def("subscribe_topics", &Client_subscribe_topics)
        .def("subscribe_pattern", &Client_subscribe_pattern)
        .def("create_reader", &Client_createReader)
        .def("create_table_view", [](Client& client, const std::string& topic,
                                     const TableViewConfiguration& config) {
            return waitForAsyncValue<TableView>([&](TableViewCallback callback) {
                client.createTableViewAsync(topic, config, callback);
            });
        })
        .def("get_topic_partitions", &Client_getTopicPartitions)
        .def("get_schema_info", &Client_getSchemaInfo)
        .def("close", &Client_close)
        .def("close_async", &Client_closeAsync)
        .def("shutdown", &Client::shutdown);
}