[svn] r7770: vs-plugin/trunk: Nemerle.Compiler.Utils/NemerleCodeDomProvider.n Nemerle.Compiler.Utils/Nemer...

pbludov svnadmin at nemerle.org
Fri Aug 24 13:46:28 CEST 2007


Log:
Support for GenerateMember=false for Winforms designer.

Author: pbludov
Date: Fri Aug 24 13:46:24 2007
New Revision: 7770

Modified:
   vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeDomProvider.n
   vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeParser.n
   vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VisualStudio.csproj
   vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleFileNodeCodeDomProvider.cs

Modified: vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeDomProvider.n
==============================================================================
--- vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeDomProvider.n	(original)
+++ vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeDomProvider.n	Fri Aug 24 13:46:24 2007
@@ -1,4 +1,5 @@
 using System;
+using System.ComponentModel;
 using System.CodeDom.Compiler;
 
 using Nemerle.Compiler;
@@ -52,5 +53,10 @@
     {
       get { provider.FileExtension; }
     }
+    
+    public override GetConverter (ty : Type) : TypeConverter
+    {
+      provider.GetConverter(ty);
+    }
   }
 }

Modified: vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeParser.n
==============================================================================
--- vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeParser.n	(original)
+++ vs-plugin/trunk/Nemerle.Compiler.Utils/NemerleCodeParser.n	Fri Aug 24 13:46:24 2007
@@ -411,9 +411,18 @@
               yield CodeAssignStatement(ToExpression(expr1), ToExpression(<[ $expr1 + $expr2 ]>))
           }
 
-        | PExpr.Assign(target, source) => 
+        | <[ $target = $source ]> =>
           yield CodeAssignStatement(ToExpression(target), ToExpression(source))
           
+        | <[ mutable $_ = $val ]> | <[ def $_ = $val ]> =>
+
+          def variable = (expr.TypedObject :> TExpr.DefValIn).name;
+
+          if (val != null)
+            yield CodeVariableDeclarationStatement(ToTypeRef(variable.Type), variable.Name, ToExpression(val))
+          else
+            yield CodeVariableDeclarationStatement(ToTypeRef(variable.Type), variable.Name)
+
         | <[ when ($cond) $expr ]> =>
           yield CodeConditionStatement(ToExpression(cond), ToStatements(expr).ToArray())
 

Modified: vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VisualStudio.csproj
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VisualStudio.csproj	(original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Nemerle.VisualStudio.csproj	Fri Aug 24 13:46:24 2007
@@ -210,12 +210,10 @@
     <None Include="nemerle.snk" />
     <ZipItem Include="Templates\ProjectItems\Form\Form.Designer.n" />
     <ZipItem Include="Templates\ProjectItems\Form\Form.n" />
-
     <ZipItem Include="Templates\ProjectItems\UserControl\UserControl.ico" />
     <ZipItem Include="Templates\ProjectItems\UserControl\UserControl.vstemplate" />
     <ZipItem Include="Templates\ProjectItems\UserControl\UserControl.Designer.n" />
     <ZipItem Include="Templates\ProjectItems\UserControl\UserControl.n" />
-
     <ZipProject Include="Templates\Projects\WindowsApplication\AssemblyInfo.n" />
     <ZipProject Include="Templates\Projects\MacroLibrary\AssemblyInfo.n" />
     <ZipProject Include="Templates\Projects\ConsoleApplication\AssemblyInfo.n" />

Modified: vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleFileNodeCodeDomProvider.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleFileNodeCodeDomProvider.cs	(original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/Project/NemerleFileNodeCodeDomProvider.cs	Fri Aug 24 13:46:24 2007
@@ -3,20 +3,15 @@
 using System.CodeDom;
 using System.CodeDom.Compiler;
 
-using System.Diagnostics;
-
 using System.Runtime.InteropServices;
 
 using Microsoft.VisualStudio;
 using Microsoft.VisualStudio.Package;
-using Microsoft.VisualStudio.Shell;
 using Microsoft.VisualStudio.Shell.Interop;
-using Microsoft.VisualStudio.OLE.Interop;
 using Microsoft.VisualStudio.TextManager.Interop;
 
 using Nemerle.Compiler;
 using NCU = Nemerle.Compiler.Utils;
-using Nemerle.Completion2;
 
 using Nemerle.VisualStudio.LanguageService;
 
@@ -61,7 +56,7 @@
 		}
 	}
 
-	internal class NemerleFileNodeCodeDomProvider : CodeDomProvider, ICodeParser
+	internal class NemerleFileNodeCodeDomProvider : NemerleCodeProvider, ICodeParser
 		// ICodeGenerator
 	{
 		readonly FileNode			_fileNode;



More information about the svn mailing list