xtd 0.2.0
compiler.h
Go to the documentation of this file.
1 #pragma once
5 #include "build_type.h"
6 #include "compiler_id.h"
7 #include "object.h"
8 #include "ustring.h"
9 #include "version.h"
10 #include <vector>
11 
13 namespace xtd {
25  class compiler final : public object {
26  public:
28 
37 
39  compiler() = default;
40  compiler(const compiler&) = default;
41  compiler& operator =(const compiler&) = default;
43 
45 
49  xtd::build_type build_type() const noexcept;
50 
53  xtd::compiler_id compiler_id() const noexcept;
54 
57  bool is_build_type_debug() const noexcept;
58 
61  bool is_64_bit() noexcept;
62 
65  xtd::ustring name() const noexcept;
66 
69  xtd::ustring version_string() const noexcept;
70 
73  const xtd::version& version() const noexcept;
75 
77 
81  xtd::ustring to_string() const noexcept override;
83 
84  private:
86  xtd::version version_;
88  bool is_64_bit_ = false;
89  };
90 }
Represents information about c++ libraries, such as the version and standard identifier. This class cannot be inherited.
Definition: compiler.h:25
compiler_id
Identifies the compiler, supported by an assembly.
Definition: compiler_id.h:18
build_type
Identifies the build type.
Definition: build_type.h:18
bool is_64_bit() noexcept
Gets is 64 bits.
compiler(xtd::compiler_id compiler_id, const xtd::version &version, xtd::build_type build_type, bool is_64_bit)
Initialise a new xtd::compiler class.
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
xtd::ustring version_string() const noexcept
Gets compiler version string.
Represents text as a sequence of UTF-8 code units.
Definition: ustring.h:46
Represents the version number of an assembly, operating system, or the xtd. This class cannot be inhe...
Definition: version.h:95
Build type debug.
const xtd::version & version() const noexcept
Gets compiler version.
xtd::compiler_id compiler_id() const noexcept
Gets the compiler id.
The processor architecture is unknown.
Contains xtd::ustring class.
Contains xtd::version class.
xtd::ustring name() const noexcept
Gets compiler name.
Contains xtd::object class.
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes...
Definition: object.h:32
xtd::build_type build_type() const noexcept
Gets the build type.
bool is_build_type_debug() const noexcept
Gets build type is debug.
Contains xtd::compiler_id enum class.
Contains xtd::build_type enum class.
xtd::ustring to_string() const noexcept override
Converts the value of this operating_system object to its equivalent string representation.