private Type GetFinalTypeAccordingToDirectives(Type elementType, IEnumerable <Directive> directives) { var classDirectiveValue = directives.FirstOrDefault(directive => directive.Name == "Class")?.Value; return(classDirectiveValue != null?resolver.LocateTypeForClassDirective(elementType, classDirectiveValue) : elementType); }