private Expression BuildCreateEnumTypeExpression(EnumTypeDescriptor enumTypeDescriptor)
        {
            var sqlTypeExpression = new SqlTypeExpression(enumTypeDescriptor.Name, true);
            var asExpression      = new SqlEnumDefinitionExpression(enumTypeDescriptor.GetValues());

            return(new SqlCreateTypeExpression(sqlTypeExpression, asExpression, true));
        }
        protected override Expression VisitType(SqlTypeExpression expression)
        {
            if (expression.UserDefinedType)
            {
                this.WriteQuotedIdentifier(expression.TypeName);
            }
            else
            {
                this.Write(expression.TypeName);
            }

            return(expression);
        }
 protected virtual Expression VisitType(SqlTypeExpression expression)
 {
     return(expression);
 }