@@ -439,11 +439,15 @@ version(mir_test) unittest
439439
440440/+ +
441441Attribute to ignore field.
442+
443+ See_also: $(LREF serdeIgnoreIn) $(LREF serdeIgnoreOut)
442444+/
443445enum serdeIgnore;
444446
445447/+ +
446448Attribute to ignore field during deserialization.
449+
450+ See_also: $(LREF serdeIgnoreInIfAggregate)
447451+/
448452enum serdeIgnoreIn;
449453
@@ -510,16 +514,61 @@ Use this attributes only for strings that would not be used after the input data
510514deprecated (" use @serdeScoped @serdeProxy!(const(char)[]) instead" ) enum serdeScopeStringProxy;
511515
512516/+ +
513- Attributes to out conditional ignore field during serialization.
517+ Attributes to conditional ignore field during serialization.
514518
515- The predicate should be aplied to the aggregate type itself, not to the member.
519+ The predicate should be aplied to the member, to the aggregate type.
520+
521+ See_also: $(LREF serdeIgnoreOutIfAggregate)
516522+/
517523struct serdeIgnoreOutIf (alias pred);
518524
519525/+ +
520526+/
521527alias serdeGetIgnoreOutIf (alias symbol) = naryFun! (TemplateArgsOf! (getUDA! (symbol, serdeIgnoreOutIf))[0 ]);
522528
529+ /+ +
530+ Attributes to conditional ignore field during serialization.
531+
532+ The attribute can be combined with $(LREF serdeOrderedIn), $(LREF serdeRealOrderedIn).
533+
534+ The predicate should be aplied to the aggregate value, not to the member.
535+
536+ See_also: $(LREF serdeIgnoreIfAggregate) $(LREF serdeIgnoreOutIf), $(LREF serdeIgnoreInIfAggregate)
537+ +/
538+ struct serdeIgnoreOutIfAggregate (alias pred);
539+
540+ /+ +
541+ +/
542+ alias serdeGetIgnoreOutIfAggregate (alias symbol) = naryFun! (TemplateArgsOf! (getUDA! (symbol, serdeIgnoreOutIfAggregate))[0 ]);
543+
544+ /+ +
545+ Attributes to conditional ignore field during deserialization.
546+
547+ The predicate should be aplied to the aggregate value, not to the member.
548+
549+ See_also: $(LREF serdeIgnoreIfAggregate) $(LREF serdeIgnoreOutIfAggregate) $(LREF serdeIgnoreIn)
550+ +/
551+ struct serdeIgnoreInIfAggregate (alias pred);
552+
553+ /+ +
554+ +/
555+ alias serdeGetIgnoreInIfAggregate (alias symbol) = naryFun! (TemplateArgsOf! (getUDA! (symbol, serdeIgnoreInIfAggregate))[0 ]);
556+
557+ /+ +
558+ Attributes to conditional ignore field during serialization and deserialization.
559+
560+ The attribute can be combined with $(LREF serdeOrderedIn), $(LREF serdeRealOrderedIn).
561+
562+ The predicate should be aplied to the aggregate value, not to the member.
563+
564+ See_also: $(LREF serdeIgnoreOutIfAggregate) $(LREF serdeIgnoreInIfAggregate) $ $(LREF serdeIgnore)
565+ +/
566+ struct serdeIgnoreIfAggregate (alias pred);
567+
568+ /+ +
569+ +/
570+ alias serdeGetIgnoreIfAggregate (alias symbol) = naryFun! (TemplateArgsOf! (getUDA! (symbol, serdeIgnoreIfAggregate))[0 ]);
571+
523572/+ +
524573Allows to use flexible deserialization rules such as conversion from input string to numeric types.
525574+/
@@ -1768,7 +1817,7 @@ UDA used to force deserializer to initilize members in the order of their defini
17681817The attribute force deserializer to create a dummy type (recursively), initializer its fields and then assign them to
17691818to the object members (fields and setters) in the order of their definition.
17701819
1771- See_also: $(LREF SerdeOrderedDummy), $(LREF serdeRealOrderedIn).
1820+ See_also: $(LREF SerdeOrderedDummy), $(LREF serdeRealOrderedIn), $(LREF serdeIgnoreInIfAggregate) .
17721821+/
17731822enum serdeOrderedIn;
17741823
@@ -1778,7 +1827,7 @@ UDA used to force deserializer to initilize members in the order of their defini
17781827Unlike $(LREF serdeOrderedIn) `serdeRealOrderedDummy` force deserialzier to iterate all DOM keys for each object deserialization member.
17791828It is slower but more universal approach.
17801829
1781- See_also: $(LREF serdeOrderedIn).
1830+ See_also: $(LREF serdeOrderedIn), $(LREF serdeIgnoreInIfAggregate)
17821831+/
17831832enum serdeRealOrderedIn;
17841833
0 commit comments