Pure DCI Role assignment with Scala macros.