public virtual ITypeElement GetUserTypeUsageClass([NotNull] IUserTypeUsage userTypeUsage)
        {
            if (userTypeUsage == null)
            {
                throw new ArgumentNullException("userTypeUsage");
            }

            if (userTypeUsage.ScalarTypeName.Reference.CurrentResolveResult != null)
            {
                return(userTypeUsage.ScalarTypeName.Reference.CurrentResolveResult.DeclaredElement as ITypeElement);
            }
            else
            {
                throw new ExpressionHelperException("Null resolved result of type usage", userTypeUsage);
            }
        }
        private void HandleGenericTaskTypes(IHighlightingConsumer consumer, ITypeMember @delegate, IUserTypeUsage typeUsageOfTask)
        {
            var typeIdentifier = typeUsageOfTask.ScalarTypeName.NameIdentifier;
            var innerTypeUsage = typeUsageOfTask.ScalarTypeName.TypeArgumentList.TypeArgumentNodes.FirstOrDefault();

            HandleElement(consumer, @delegate, typeIdentifier);
            HandleContainerElement(consumer, @delegate, innerTypeUsage);
        }
 public override Expression VisitUserTypeUsage(IUserTypeUsage userTypeUsageParam, IMetadataResolver context)
 {
     return(null);
 }