The OpenD Programming Language

mir.reflection

Base reflection utilities.

Members

Enums

reflectSerde
enum reflectSerde

Attribute to force member serialization for static fields, compiletime enum members and non-property methods.

Structs

ReflectDoc
struct ReflectDoc(string target)

Attribute for documentation and unittests

reflectDeprecated
struct reflectDeprecated(string target)

Attribute for deprecated API

reflectUnittest
struct reflectUnittest(string target)

Attribute for extern unit-test.

Templates

ReflectMeta
template ReflectMeta(string target, string[] fields)

Attribute to rename methods, types and functions

ReflectName
template ReflectName(string target)

Attribute to rename methods, types and functions

getSetters
template getSetters(T, string member)
getUDA
template getUDA(alias symbol, alias attribute)
template getUDA(T, string member, alias attribute)
isProperty
template isProperty(T, string member)

Checks if member is property.

isStdNullable
template isStdNullable(T)

Match types like std.typeconst: Nullable.

reflectDoc
template reflectDoc(string target = null)

Attribute for documentation.

reflectGetDocs
template reflectGetDocs(string target, alias symbol)
template reflectGetDocs(string target)
reflectGetUnittest
template reflectGetUnittest(string target, alias symbol)
template reflectGetUnittest(string target)
reflectIgnore
template reflectIgnore(string target)

Attribute to ignore a reflection target

reflectMeta
template reflectMeta(string target, string[] fields)
reflectName
template reflectName(string target = null, Args...)

Attribute to rename methods, types and functions

Variables

DeserializableMembers
enum string[] DeserializableMembers(T);
SerializableMembers
enum string[] SerializableMembers(T);
hasField
enum bool hasField(T, string member);

Checks if T has a field member.

isOriginalMember
enum bool isOriginalMember(T, string member);

Checks if T has a field member.

Meta

Authors

Ilia Ki