xtd 0.2.0
toolkit.hpp
Go to the documentation of this file.
1
4#pragma once
5#include "core_export.hpp"
6#include "iequatable.hpp"
7#include "object.hpp"
8#include "string.hpp"
9#include "version.hpp"
10
12namespace xtd {
19 class core_export_ toolkit : public object, public xtd::iequatable<toolkit> {
20 struct data;
21
22 public:
24
28 toolkit() = default;
35
37 toolkit(const toolkit&) = default;
38 toolkit(toolkit&&) = default;
39 toolkit& operator =(const toolkit&) = default;
41
43
47 const xtd::string& description() const noexcept;
48
51 const xtd::string& name() const noexcept;
52
55 const xtd::version& version() const noexcept;
57
59
64 bool equals(const object& obj) const noexcept override;
68 bool equals(const toolkit& other) const noexcept override;
69
72 xtd::size get_hash_code() const noexcept override;
73
76 xtd::string to_string() const noexcept override;
78
79 private:
80 xtd::string description_ = "No toolkit defined.";
81 xtd::string name_ = "Unknown";
82 xtd::version version_;
83 };
84}
85
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition iequatable.hpp:22
object()=default
Create a new instance of the ultimate base class object.
toolkit()=default
Initializes a new instance of the xtd::toolkit class.
const xtd::string & name() const noexcept
Gets the toolkit name.
const xtd::version & version() const noexcept
Gets the toolkit version.
toolkit(const xtd::string &name, const xtd::version &version, const xtd::string &description)
Initializes a new instance of the xtd::toolkit class with the specified name and version.
bool equals(const object &obj) const noexcept override
Determines whether the specified object is equal to the current object.
const xtd::string & description() const noexcept
Gets the toolkit description.
xtd::size get_hash_code() const noexcept override
Serves as a hash function for a particular type.
xtd::string to_string() const noexcept override
Returns a xtd::string that represents the current object.
Represents the version number of an assembly, operating system, or the xtd. This class cannot be inhe...
Definition version.hpp:114
Contains core_export_ keyword.
#define core_export_
Define shared library export.
Definition core_export.hpp:13
xtd::basic_string< char > string
Represents text as a sequence of UTF-8 code units.
Definition __string_definitions.hpp:43
size_t size
Represents a size of any object in bytes.
Definition size.hpp:23
@ other
The operating system is other.
Definition platform_id.hpp:58
Contains xtd::iequatable interface.
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8
constexpr const_pointer data() const noexcept
Gets direct access to the underlying contiguous storage.
Definition read_only_span.hpp:201
Contains xtd::object class.
Contains xtd::string alias.
Contains xtd::version class.