xtd 0.2.0
assembly_name_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_name_attribute final : public xtd::attribute {
24  public:
26 
30  explicit assembly_name_attribute(const ustring& name);
31 
34  assembly_name_attribute(const ustring& name, const object& executing_assembly);
36 
40  const ustring& name() const noexcept;
42 
43  protected:
44  std::shared_ptr<object> get_type_id() const noexcept override;
45 
46  private:
47  ustring name_;
48  };
49  }
50 }
51 
53 std::shared_ptr<xtd::reflection::assembly_name_attribute>& __assembly_name_attribute__();
55 
69 #define assembly_name_(name) \
70  xtd::reflection::assembly_name_attribute __assembly_name_attribute {name, xtd::object()}
71 
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 a name for an assembly.
Definition: assembly_name_attribute.h:23