Add optional recursive arg to distinctBase (v2) (#18659)
* Add optional recursive arg to distinctBase * Add docs and examples Co-authored-by: ALANVF <alan.invents@gmail.com>
This commit is contained in:
parent
988c02b7cb
commit
8ce782d463
4 changed files with 18 additions and 10 deletions
|
|
@ -78,8 +78,8 @@ proc initToJsonOptions*(): ToJsonOptions =
|
|||
## initializes `ToJsonOptions` with sane options.
|
||||
ToJsonOptions(enumMode: joptEnumOrd, jsonNodeMode: joptJsonNodeAsRef)
|
||||
|
||||
proc distinctBase(T: typedesc): typedesc {.magic: "TypeTrait".}
|
||||
template distinctBase[T](a: T): untyped = distinctBase(typeof(a))(a)
|
||||
proc distinctBase(T: typedesc, recursive: static bool = true): typedesc {.magic: "TypeTrait".}
|
||||
template distinctBase[T](a: T, recursive: static bool = true): untyped = distinctBase(typeof(a), recursive)(a)
|
||||
|
||||
macro getDiscriminants(a: typedesc): seq[string] =
|
||||
## return the discriminant keys
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue