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
|