| Coverage Report |
 |
|
|
 |
: /*
: Copyright (c) 2025 Giuseppe Roberti.
: All rights reserved.
:
: Redistribution and use in source and binary forms, with or without modification,
: are permitted provided that the following conditions are met:
:
: 1. Redistributions of source code must retain the above copyright notice, this
: list of conditions and the following disclaimer.
:
: 2. Redistributions in binary form must reproduce the above copyright notice,
: this list of conditions and the following disclaimer in the documentation and/or
: other materials provided with the distribution.
:
: 3. Neither the name of the copyright holder nor the names of its contributors
: may be used to endorse or promote products derived from this software without
: specific prior written permission.
:
: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
: ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
: WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
: DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
: ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
: (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
: LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
: ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
: SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
: */
: #pragma once
:
: #include "nngxx/iface/socket.h"
:
: #include <nng/nng.h>
: #include <nng/protocol/pipeline0/pull.h>
: #include <nng/protocol/pipeline0/push.h>
: #include <nng/protocol/reqrep0/rep.h>
: #include <nng/protocol/reqrep0/req.h>
:
: namespace nngxx
: {
:
: namespace rep::v0
: {
:
: [[nodiscard]] inline static clev::expected<socket> make_socket() noexcept
: {
0 / 1 : return nngxx::make(nng_rep0_open).transform_to<socket>();
: }
:
: } // namespace rep::v0
:
: namespace req::v0
: {
:
: [[nodiscard]] inline static clev::expected<socket> make_socket() noexcept
: {
0 / 1 : return nngxx::make(nng_req0_open).transform_to<socket>();
: }
:
: } // namespace req::v0
:
: namespace pull::v0
: {
:
: [[nodiscard]] inline static clev::expected<socket> make_socket() noexcept
: {
0 / 1 : return nngxx::make(nng_pull0_open).transform_to<socket>();
: }
:
: } // namespace pull::v0
:
: namespace push::v0
: {
:
: [[nodiscard]] inline static clev::expected<socket> make_socket() noexcept
: {
0 / 1 : return nngxx::make(nng_push0_open).transform_to<socket>();
: }
:
: } // namespace push::v0
:
: } // namespace nngxx
:
: nngxx::socket_view nngxx::pipe_view::get_socket() const noexcept
: {
0 / 1 : return nng_pipe_socket(v);
: }
:
: constexpr bool nngxx_socket_is_really_needed_v = true;
:
: static_assert(std::copyable<nngxx::socket_view>);
:
: static_assert(nngxx::move_only_constructible_c<nngxx::socket>);
 |
| Generated by: llvmcov2html |