The uClass macro is used to define a UCLASS in Nim - equivalent to the UCLASS macro in C++.
The uClass allows for using uprop and ufuncs macros to define properties and functions of the class.
The default keyword
As you can see, default’s main use case is to access nested properties since for the top level ones you can define their default value inline, and even call other procs:
The override pragma
Inside ufuncs, functions named as any of the cpp class overrides will be registered as an override.
Outside ufuncs you can use the {.virtual, override.} pragma as follow:
Custom constructors
You can define custom constructors for classes, using the proc constructor(initializer: FObjectInitializer) signature: