mir-algorithm ~master (2021-09-24T13:11:04Z)
Dub
Repo
serdeHasAlgebraicAnnotation
mir
serde
template
serdeHasAlgebraicAnnotation (
T
) {
static if
(
isAggregateType!T || is(T == enum)
)
static if
(
hasUDA!(T, serdeAlgebraicAnnotation)
)
enum
serdeHasAlgebraicAnnotation
;
static if
(
isAggregateType!T || is(T == enum)
)
static if
(!(
hasUDA!(T, serdeAlgebraicAnnotation)
))
static if
(
__traits(getAliasThis, T).length
)
T
*
aggregate
;
alias
A
=
typeof
(
__traits
(
getMember
,
aggregate
,
__traits
(
getAliasThis
,
T
)))
;
static if
(
isAggregateType!T || is(T == enum)
)
static if
(!(
hasUDA!(T, serdeAlgebraicAnnotation)
))
static if
(
__traits(getAliasThis, T).length
)
enum
serdeHasAlgebraicAnnotation
;
static if
(
isAggregateType!T || is(T == enum)
)
static if
(!(
hasUDA!(T, serdeAlgebraicAnnotation)
))
static if
(!(
__traits(getAliasThis, T).length
))
enum
serdeHasAlgebraicAnnotation
;
static if
(!(
isAggregateType!T || is(T == enum)
))
enum
serdeHasAlgebraicAnnotation
;
}
Members
Aliases
A
alias
A
=
typeof
(
__traits
(
getMember
,
aggregate
,
__traits
(
getAliasThis
,
T
)))
Undocumented in source.
Manifest constants
serdeHasAlgebraicAnnotation
enum
serdeHasAlgebraicAnnotation
;
Undocumented in source.
serdeHasAlgebraicAnnotation
enum
serdeHasAlgebraicAnnotation
;
Undocumented in source.
serdeHasAlgebraicAnnotation
enum
serdeHasAlgebraicAnnotation
;
Undocumented in source.
serdeHasAlgebraicAnnotation
enum
serdeHasAlgebraicAnnotation
;
Undocumented in source.
Variables
aggregate
T
*
aggregate
;
Undocumented in source.
Meta
Source
See Implementation
mir
serde
classes
SerdeException
SerdeMirException
enums
SerdeTarget
serdeAnnotation
serdeIgnore
serdeIgnoreDefault
serdeIgnoreIn
serdeIgnoreOut
serdeRegister
structs
serdeAlgebraicAnnotation
serdeKeyOut
serdeKeys
serdeProxy
templates
SerdeAnnotated
serdeGetAlgebraicAnnotation
serdeGetAnnotationMembersIn
serdeGetAnnotationMembersOut
serdeGetKeyOut
serdeGetKeysIn
serdeHasAlgebraicAnnotation