xtd 0.2.0
cpp_language.h
Go to the documentation of this file.
1 #pragma once
5 #include "language_id.h"
6 #include "object.h"
7 #include "ustring.h"
8 #include "version.h"
9 
11 namespace xtd {
24  class cpp_language final : public object {
25  public:
27 
30  explicit cpp_language(uint32 cpp) noexcept;
32 
34  cpp_language() noexcept = default;
35  cpp_language(const cpp_language&) noexcept = default;
36  cpp_language& operator =(const cpp_language&) noexcept = default;
38 
40 
44  bool is_experimental_language() const noexcept;
45 
48  bool is_supported() const noexcept;
49 
52  language_id language() const noexcept;
53 
57  language_id experimental_language() const noexcept;
58 
61  int32 month() const noexcept;
62 
65  xtd::ustring name() const noexcept;
66 
69  uint32 value() const noexcept;
70 
73  xtd::ustring version_string() const noexcept;
74 
77  xtd::version version() const noexcept;
78 
81  int32 year() const noexcept;
83 
85 
89  xtd::ustring to_string() const noexcept override;
91 
92  private:
93  uint32 cpp_ = 0;
94  };
95 }
cpp_language(uint32 cpp) noexcept
Initialize a new instance of xtd::cpp_language class.
language_id experimental_language() const noexcept
Gets experimental language id.
language_id
Identifies the c++ language used by assembly.
Definition: language_id.h:17
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
Represents text as a sequence of UTF-8 code units.
Definition: ustring.h:46
Represents information about c++ libraries, such as the version and language identifier. This class cannot be inherited.
Definition: cpp_language.h:24
Represents the version number of an assembly, operating system, or the xtd. This class cannot be inhe...
Definition: version.h:95
language_id language() const noexcept
Gets lagnguage id.
int32 month() const noexcept
Gets the month when the cpp language was released.
Contains xtd::language_id enum class.
Contains xtd::ustring class.
xtd::version version() const noexcept
Gets The version of cpp language.
Contains xtd::version class.
Contains xtd::object class.
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes...
Definition: object.h:32
int32 year() const noexcept
Gets the year when the cpp language was released.
int_least32_t int32
Represents a 32-bit signed integer.
Definition: types.h:129
bool is_supported() const noexcept
Gets if is supported by xtd.
bool is_experimental_language() const noexcept
Gets if is experimental language.
xtd::ustring name() const noexcept
Gets the offical name of the cpp language.
xtd::ustring to_string() const noexcept override
Converts the value of this operating_system object to its equivalent string representation.
xtd::ustring version_string() const noexcept
Gets the version string of cpp language.
uint_least32_t uint32
Represents a 32-bit unsigned integer.
Definition: types.h:239
uint32 value() const noexcept
Gets the value of cpp language.