libart-paperback 0.1.0-a.1.20260122225059.e5fea306241a
PDF (1.4) library for C++
name.hxx
1#ifndef art__paperback__carousel__name_hxx_
2#define art__paperback__carousel__name_hxx_
3
4#include <art/paperback/types.hxx>
5#include <art/paperback/forward.hxx>
6
7#include <art/paperback/carousel/object-model.hxx>
8
10{
11
12 /// Represents a COS name.
13 ///
14 class Name
16 {
17 public:
18 /// Constructor.
19 ///
20 Name();
21
22 /// Constructor.
23 ///
24 Name(string);
25
26 /// Constructor.
27 ///
28 Name(char const*);
29
30 /// Constructor.
31 ///
32 Name(Name const&);
33
34 /// Constructor.
35 ///
36 Name(Name&&);
37
38 /// Destructor.
39 ///
40 ~Name() noexcept;
41
42 /// Access string value.
43 ///
44 string const&
45 operator*() const;
46
47 /// Access string value.
48 ///
49 string const*
50 operator->() const;
51
52 /// Assignment.
53 ///
54 Name&
55 operator=(Name const&);
56
57 /// Assignment.
58 ///
59 Name&
60 operator=(Name&&);
61
62 /// Comparison.
63 ///
64 bool
65 operator==(Name const&) const;
66
67 /// Comparison.
68 ///
69 bool
70 operator!=(Name const&) const;
71
72 /// Comparison.
73 ///
74 bool
75 operator<(Name const&) const;
76
77 /// Comparison.
78 ///
79 bool
80 operator<=(Name const&) const;
81
82 /// Comparison.
83 ///
84 bool
85 operator>(Name const&) const;
86
87 /// Comparison.
88 ///
89 bool
90 operator>=(Name const&) const;
91
92 private:
93 string _data;
94
95 };
96
97} // namespace Art::Paperback::Carousel
98
99#endif
bool operator>(Name const &) const
Comparison.
Definition name.cxx:100
Name & operator=(Name const &)
Assignment.
Definition name.cxx:50
~Name() noexcept
Destructor.
Definition name.cxx:31
Name()
Constructor.
Definition name.cxx:7
bool operator<=(Name const &) const
Comparison.
Definition name.cxx:93
string const & operator*() const
Access string value.
Definition name.cxx:36
bool operator>=(Name const &) const
Comparison.
Definition name.cxx:107
string const * operator->() const
Access string value.
Definition name.cxx:43
bool operator==(Name const &) const
Comparison.
Definition name.cxx:72
bool operator!=(Name const &) const
Comparison.
Definition name.cxx:79
bool operator<(Name const &) const
Comparison.
Definition name.cxx:86
Base class for value types.
Definition object-model.hxx:295
COS file format implementation namespace.
Definition array.cxx:6