xtd 0.2.0
assembly_identifier_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_identifier_attribute final : public xtd::attribute {
24  public:
26 
30  explicit assembly_identifier_attribute(const ustring& identifier);
32 
35  assembly_identifier_attribute(const ustring& identifier, const object& executing_assembly);
37 
41  const ustring& identifier() const noexcept;
43 
44  protected:
45  std::shared_ptr<object> get_type_id() const noexcept override;
46 
47  private:
48  ustring identifier_;
49  };
50  }
51 }
52 
54 std::shared_ptr<xtd::reflection::assembly_identifier_attribute>& __assembly_identifier_attribute__();
56 
70 #define assembly_identifier_(identifier) \
71  xtd::reflection::assembly_identifier_attribute __assembly_identifier_attribute {identifier, 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
Specifies the identifier of the assembly being attributed.
Definition: assembly_identifier_attribute.h:23