tetengo 1.8.2
A multipurpose library set
Loading...
Searching...
No Matches
string_input.hpp
Go to the documentation of this file.
1
7#if !defined(TETENGO_LATTICE_STRINGINPUT_HPP)
8#define TETENGO_LATTICE_STRINGINPUT_HPP
9
10#include <cstddef>
11#include <memory>
12#include <string>
13
15
16namespace tetengo::lattice
17{
21 class string_input : public input
22 {
23 public:
24 // constructors and destructor
25
31 explicit string_input(std::string value);
32
36 virtual ~string_input();
37
38
39 // functions
40
46 const std::string& value() const;
47
53 std::string& value();
54
55
56 private:
57 // types
58
59 class impl;
60
61
62 // variables
63
64 const std::unique_ptr<impl> m_p_impl;
65
66
67 // virtual functions
68
69 virtual bool equal_to_impl(const input& another) const override;
70
71 virtual std::size_t hash_value_impl() const override;
72
73 virtual std::size_t length_impl() const override;
74
75 virtual std::unique_ptr<input> clone_impl() const override;
76
77 virtual std::unique_ptr<input> create_subrange_impl(std::size_t offset, std::size_t length) const override;
78
79 virtual void append_impl(std::unique_ptr<input>&& p_another) override;
80 };
81
82
83}
84
85
86#endif
An input.
Definition input.hpp:24
std::size_t length() const
Returns the length.
A string input.
Definition string_input.hpp:22
virtual ~string_input()
Destroys the string input.
const std::string & value() const
Returns the value.
std::string & value()
Returns the value.
string_input(std::string value)
Creates a string input key.
An input.
A lattice library.