Branch data Line data Source code
1 : : // Copyright (c) 2021 The Bitcoin Core developers
2 : : // Distributed under the MIT software license, see the accompanying
3 : : // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 : :
5 : : #ifndef BITCOIN_INTERFACES_ECHO_H
6 : : #define BITCOIN_INTERFACES_ECHO_H
7 : :
8 : : #include <memory>
9 : : #include <string>
10 : :
11 : : namespace interfaces {
12 : : //! Simple string echoing interface for testing.
13 : 1 : class Echo
14 : : {
15 : : public:
16 : : virtual ~Echo() = default;
17 : :
18 : : //! Echo provided string.
19 : : virtual std::string echo(const std::string& echo) = 0;
20 : : };
21 : :
22 : : //! Return implementation of Echo interface.
23 : : std::unique_ptr<Echo> MakeEcho();
24 : : } // namespace interfaces
25 : :
26 : : #endif // BITCOIN_INTERFACES_ECHO_H
|