xtd 0.2.0
compiler_id.h
Go to the documentation of this file.
1 #pragma once
5 #include "enum.h"
6 
8 namespace xtd {
18  enum class compiler_id {
20  unknown = -1,
24  clang,
26  gcc,
27  };
28 }
29 
31 template<> struct xtd::enum_register<xtd::compiler_id> {
32  explicit operator auto() const noexcept {return xtd::enum_collection<xtd::compiler_id> {{xtd::compiler_id::unknown, "unknown"}, {xtd::compiler_id::microsoft_visual_studio, "microsoft_visual_studio"}, {xtd::compiler_id::clang, "clang"}, {xtd::compiler_id::gcc, "gcc"}};}
33 };
compiler_id
Identifies the compiler, supported by an assembly.
Definition: compiler_id.h:18
The compiler is gcc.
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
std::vector< std::pair< enum_t, xtd::ustring > > enum_collection
Represents a pair of an enum_t value and a string of an enum of type enum_t.
Definition: enum_collection.h:19
Contains enum_ and enum_ut_ keywords.
The processor architecture is unknown.
The compiler is Microsoft Visual Studio.
The compiler is clang.
Provides the registration struct for enumerations.
Definition: enum_register.h:36