xtd 0.2.0
assembly_guid_attribute.h
Go to the documentation of this file.
1 #pragma once
4 #include "../attribute.h"
5 
7 namespace xtd {
9  namespace reflection {
23  class core_export_ assembly_guid_attribute final : public xtd::attribute {
24  public:
26 
30  explicit assembly_guid_attribute(const ustring& guid);
32 
35  assembly_guid_attribute(const ustring& guid, const object& executing_assembly);
37 
41  const ustring& guid() const noexcept;
43 
44  protected:
45  std::shared_ptr<object> get_type_id() const noexcept override;
46 
47  private:
48  ustring guid_;
49  };
50  }
51 }
52 
54 std::shared_ptr<xtd::reflection::assembly_guid_attribute>& __assembly_guid_attribute__();
56 
70 #define assembly_guid_(guid) \
71  xtd::reflection::assembly_guid_attribute __assembly_guid_attribute {guid, xtd::object()}
Represents the base class for custom attributes.
Definition: attribute.h:23
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 a globally unique identifier (GUID). A GUID is a 128-bit integer (16 bytes) that can be us...
Definition: guid.h:23
Specifies the guid of the assembly being attributed.
Definition: assembly_guid_attribute.h:23