xtd 0.2.0
assembly_product_attribute.hpp
Go to the documentation of this file.
1
3#pragma once
4#include "../attribute.hpp"
5#include "../iequatable.hpp"
6
8namespace xtd {
10 namespace reflection {
26 class assembly_product_attribute final : public xtd::attribute, public xtd::iequatable<xtd::reflection::assembly_product_attribute> {
27 public:
29
33 explicit assembly_product_attribute(const string& product);
35
38 assembly_product_attribute(const string& product, const object& executing_assembly);
40
44 const string& product() const noexcept;
46
48
53 bool equals(const object& obj) const noexcept override;
57 bool equals(const assembly_product_attribute& other) const noexcept override;
58
61 xtd::size get_hash_code() const noexcept override;
63
64 protected:
65 xtd::sptr<object> get_type_id() const noexcept override;
66
67 private:
68 string product_;
69 };
70 }
71}
72
74xtd::sptr<xtd::reflection::assembly_product_attribute>& __assembly_product_attribute__();
76
92#define assembly_product_(product) \
93 xtd::reflection::assembly_product_attribute __assembly_product_attribute {product, xtd::object()}
Represents the base class for custom attributes.
Definition attribute.hpp:25
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition iequatable.hpp:22
Defines a product name custom attribute for an assembly manifest.
Definition assembly_product_attribute.hpp:26
bool equals(const object &obj) const noexcept override
Determines whether the specified object is equal to the current object.
assembly_product_attribute(const string &product)
Initializes a new instance of the xtd::reflection::assembly_product_attribute class.
const string & product() const noexcept
Gets product information.
xtd::size get_hash_code() const noexcept override
Serves as a hash function for a particular type.
xtd::sptr< object > get_type_id() const noexcept override
When implemented in a derived class, gets a unique identifier for this attribute.
size_t size
Represents a size of any object in bytes.
Definition size.hpp:23
std::shared_ptr< type_t > sptr
The xtd::sptr object is a shared pointer.
Definition sptr.hpp:25
@ other
The operating system is other.
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.hpp:10