ReflectedFunctor registry

The ReflectedFunctor registry indexes all the ReflectedFunctors by their fully qualified name using '::' delimiters.


ENameSpaceError RegisterReflectedFunctor(const ReflectedFunctor* r, XTarget* target)

Register the given ReflectedFunctor.

r must not be null and r->m_name must be a unique fully qualified name using '::' delimiters.

Possible return values of type ENameSpaceError :


void UnregisterReflectedFunctor(const ReflectedFunctor* r)

Unregister the given ReflectedFunctor.

r must not be null and have been successfully registered before calling this function.


void WriteReflectedFunctorRegistry(xostream& os)

Write out the entire registry to the given ostream


const ReflectedFunctor* TryFindReflectedFunctor(ConstStringZ fullyQualifiedName)

Returns nullptr on failure to find an entry with the given fully qualified name


const ReflectedFunctor& FindReflectedFunctor(ConstStringZ fullyQualifiedName)

Version that throws a ReflectedFunctorNotFoundException if not found