[Monodevelop-patches-list] r1151 - in trunk/MonoDevelop/src/Libraries: . CsVbRefactory CsVbRefactory/CsVbRefactory CsVbRefactory/CsVbRefactory/Parser CsVbRefactory/CsVbRefactory/Parser/AST CsVbRefactory/CsVbRefactory/Parser/AST/Expressions CsVbRefactory/CsVbRefactory/Parser/AST/GlobalScope CsVbRefactory/CsVbRefactory/Parser/AST/Statements

commit-watcher at mono-cvs.ximian.com commit-watcher at mono-cvs.ximian.com
Thu Mar 11 19:00:52 EST 2004


Author: jluke
Date: 2004-03-11 19:00:51 -0500 (Thu, 11 Mar 2004)
New Revision: 1151

Added:
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory.cmbx
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/AssemblyInfo.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.cmbx
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.prjx
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractASTVisitor.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractNode.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Enums.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/CastExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/Expression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/GlobalScope/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/IASTVisitor.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/INode.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BlockStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BreakStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/GotoStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LabelStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LockStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/Statement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/StatementExpression.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/WhileStatement.cs
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.am
   trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.in
Log:
import new parser from SD
not hooked up yet


Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/AssemblyInfo.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/AssemblyInfo.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/AssemblyInfo.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,32 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following
+// attributes.
+//
+// change them to the information which is associated with the assembly
+// you compile.
+
+[assembly: AssemblyTitle("")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// The assembly version has following format :
+//
+// Major.Minor.Build.Revision
+//
+// You can specify all values by your own or you can build default build and revision
+// numbers with the '*' character (the default):
+
+[assembly: AssemblyVersion("1.0.*")]
+
+// The following attributes specify the key for the sign of your assembly. See the
+// .NET Framework documentation for more information about signing.
+// This is not required, if you don't want signing let these attributes like they're.
+[assembly: AssemblyDelaySign(false)]
+[assembly: AssemblyKeyFile("")]

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.cmbx
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.cmbx	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.cmbx	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,16 @@
+<Combine fileversion="1.0" name="CsVbRefactory" description="">
+  <StartMode startupentry="CsVbRefactory" single="True">
+    <Execute entry="CsVbRefactory" type="None" />
+  </StartMode>
+  <Entries>
+    <Entry filename=".\.\CsVbRefactory.prjx" />
+  </Entries>
+  <Configurations active="Debug">
+    <Configuration name="Release">
+      <Entry name="CsVbRefactory" configurationname="Debug" build="False" />
+    </Configuration>
+    <Configuration name="Debug">
+      <Entry name="CsVbRefactory" configurationname="Debug" build="False" />
+    </Configuration>
+  </Configurations>
+</Combine>
\ No newline at end of file

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.prjx
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.prjx	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/CsVbRefactory.prjx	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,47 @@
+<Project name="CsVbRefactory" description="" newfilesearch="None" enableviewstate="True" version="1.1" projecttype="C#">
+  <Contents>
+    <File name=".\AssemblyInfo.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\AbstractNode.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\INode.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\Visitors\IASTVisitor.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\Visitors\AbstractASTVisitor.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\Enums.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\CSharp" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\VBNet" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\CSharp\Expressions" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\CSharp\Statements" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\VBNet\Expressions" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\VBNet\Statements" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\Expressions" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\GlobalScope" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\Statements" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\GlobalScope\UsingDeclaration.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\GlobalScope\UsingAliasDeclaration.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\GlobalScope\TypeReference.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\Visitors" subtype="Directory" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\GlobalScope\NamespaceDeclaration.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+    <File name=".\Parser\AST\General\GlobalScope\DelegateDeclaration.cs" subtype="Code" buildaction="Compile" dependson="" data="" />
+  </Contents>
+  <References />
+  <DeploymentInformation target="" script="" strategy="File" />
+  <Configuration runwithwarnings="False" name="Debug">
+    <CodeGeneration runtime="MsNet" compiler="Csc" warninglevel="4" nowarn="" includedebuginformation="True" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" mainclass="" target="Library" definesymbols="" generatexmldocumentation="False" win32Icon="" />
+    <Execution commandlineparameters="" consolepause="False" />
+    <Output directory="..\bin\Debug" assembly="CsVbRefactory" executeScript="" executeBeforeBuild="" executeAfterBuild="" />
+  </Configuration>
+  <Configurations active="Debug">
+    <Configuration runwithwarnings="False" name="Debug">
+      <CodeGeneration runtime="MsNet" compiler="Csc" warninglevel="4" nowarn="" includedebuginformation="True" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" mainclass="" target="Library" definesymbols="" generatexmldocumentation="False" win32Icon="" />
+      <Execution commandlineparameters="" consolepause="False" />
+      <Output directory="..\bin\Debug" assembly="CsVbRefactory" executeScript="" executeBeforeBuild="" executeAfterBuild="" />
+    </Configuration>
+    <Configuration runwithwarnings="False" name="Release">
+      <CodeGeneration runtime="MsNet" compiler="Csc" warninglevel="4" nowarn="" includedebuginformation="True" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" mainclass="" target="Library" definesymbols="" generatexmldocumentation="False" win32Icon="" />
+      <Execution commandlineparameters="" consolepause="False" />
+      <Output directory="..\bin\Release" assembly="CsVbRefactory" executeScript="" executeBeforeBuild="" executeAfterBuild="" />
+    </Configuration>
+  </Configurations>
+</Project>
\ No newline at end of file

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractASTVisitor.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractASTVisitor.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractASTVisitor.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,538 @@
+using System;
+using System.Collections;
+using ICSharpCode.CsVbRefactory.Parser.AST;
+
+namespace ICSharpCode.CsVbRefactory.Parser
+{
+	public abstract class AbstractASTVisitor : IASTVisitor
+	{
+		protected Stack blockStack = new Stack();
+		
+		public BlockStatement CurrentBlock {
+			get {
+				if (blockStack.Count == 0) {
+					return null;
+				}
+				return (BlockStatement)blockStack.Peek();
+			}
+		}
+		
+#region ICSharpCode.CsVbRefactory.Parser.IASTVisitor interface implementation
+		public virtual object Visit(INode node, object data)
+		{
+			Console.WriteLine("Warning, INode visited!");
+			Console.WriteLine("Type is " + node.GetType());
+			Console.WriteLine("Visitor is " + this.GetType());
+			return node.AcceptChildren(this, data);
+		}
+		/*
+		public virtual object Visit(CompilationUnit compilationUnit, object data)
+		{
+			if (compilationUnit == null) {
+				return data;
+			}
+			return compilationUnit.AcceptChildren(this, data);
+		}
+		
+#region Global Scope
+		public virtual object Visit(UsingDeclaration usingDeclaration, object data)
+		{
+			return data;
+		}
+		
+		public virtual object Visit(UsingAliasDeclaration usingAliasDeclaration, object data)
+		{
+			return data;
+		}
+		
+		public virtual object Visit(NamespaceDeclaration namespaceDeclaration, object data)
+		{
+			return namespaceDeclaration.AcceptChildren(this, data);
+		}
+		
+		public virtual object Visit(AttributeSection attributeSection, object data)
+		{
+			return data;
+		}
+		
+		public virtual object Visit(TypeDeclaration typeDeclaration, object data)
+		{
+			foreach (AttributeSection section in typeDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			return typeDeclaration.AcceptChildren(this, data);
+		}
+		
+		public virtual object Visit(DelegateDeclaration delegateDeclaration, object data)
+		{
+			foreach (AttributeSection section in delegateDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			foreach (ParameterDeclarationExpression p in delegateDeclaration.Parameters) {
+				p.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+#endregion
+		
+#region Global Scope
+		public virtual object Visit(VariableDeclaration variableDeclaration, object data)
+		{
+			if (variableDeclaration.Initializer != null) {
+				return variableDeclaration.Initializer.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(FieldDeclaration fieldDeclaration, object data)
+		{
+			foreach (AttributeSection section in fieldDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			foreach (VariableDeclaration var in fieldDeclaration.Fields) {
+				var.AcceptVisitor(this, fieldDeclaration);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(PropertyDeclaration propertyDeclaration, object data)
+		{
+			foreach (AttributeSection section in propertyDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			if (propertyDeclaration.HasGetRegion) {
+				propertyDeclaration.GetRegion.AcceptVisitor(this, data);
+			}
+			if (propertyDeclaration.HasSetRegion) {
+				propertyDeclaration.SetRegion.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(PropertyGetRegion propertyGetRegion, object data)
+		{
+			foreach (AttributeSection section in propertyGetRegion.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(propertyGetRegion.Block);
+			object ret = data;
+			if (propertyGetRegion.Block != null) {
+				ret = propertyGetRegion.Block.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(PropertySetRegion propertySetRegion, object data)
+		{
+			foreach (AttributeSection section in propertySetRegion.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(propertySetRegion.Block);
+			object ret = data;
+			if (propertySetRegion.Block != null) {
+				ret = propertySetRegion.Block.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(EventDeclaration eventDeclaration, object data)
+		{
+			foreach (AttributeSection section in eventDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			if (eventDeclaration.HasAddRegion) {
+				eventDeclaration.AddRegion.AcceptVisitor(this, data);
+			}
+			if (eventDeclaration.HasRemoveRegion) {
+				eventDeclaration.RemoveRegion.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(EventAddRegion eventAddRegion, object data)
+		{
+			foreach (AttributeSection section in eventAddRegion.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(eventAddRegion.Block);
+			object ret = data;
+			if (eventAddRegion.Block != null) {
+				ret = eventAddRegion.Block.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(EventRemoveRegion eventRemoveRegion, object data)
+		{
+			foreach (AttributeSection section in eventRemoveRegion.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(eventRemoveRegion.Block);
+			object ret = data;
+			if (eventRemoveRegion.Block != null) {
+				eventRemoveRegion.Block.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(ParameterDeclarationExpression parameterDeclarationExpression, object data)
+		{
+			foreach (AttributeSection section in parameterDeclarationExpression.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			return parameterDeclarationExpression.AcceptChildren(this, data);
+		}
+		
+		public virtual object Visit(IndexerDeclaration indexerDeclaration, object data)
+		{
+			foreach (AttributeSection section in indexerDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			foreach (ParameterDeclarationExpression p in indexerDeclaration.Parameters) {
+				p.AcceptVisitor(this, data);
+			}
+			if (indexerDeclaration.HasGetRegion) {
+				indexerDeclaration.GetRegion.AcceptVisitor(this, data);
+			}
+			if (indexerDeclaration.HasSetRegion) {
+				indexerDeclaration.SetRegion.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(MethodDeclaration methodDeclaration, object data)
+		{
+			foreach (AttributeSection section in methodDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(methodDeclaration.Body);
+			foreach (ParameterDeclarationExpression p in methodDeclaration.Parameters) {
+				p.AcceptVisitor(this, data);
+			}
+			object ret = data;
+			if (methodDeclaration.Body != null) {
+				methodDeclaration.Body.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(ConstructorDeclaration constructorDeclaration, object data)
+		{
+			foreach (AttributeSection section in constructorDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(constructorDeclaration.Body);
+			foreach (ParameterDeclarationExpression p in constructorDeclaration.Parameters) {
+				p.AcceptVisitor(this, data);
+			}
+			object ret = data;
+			if (constructorDeclaration.Body != null) {
+				ret = constructorDeclaration.Body.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		public virtual object Visit(DestructorDeclaration destructorDeclaration, object data)
+		{
+			foreach (AttributeSection section in destructorDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(destructorDeclaration.Body);
+			object ret = data;
+			if (destructorDeclaration.Body != null) {
+				destructorDeclaration.Body.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(OperatorDeclaration operatorDeclaration, object data)
+		{
+			foreach (AttributeSection section in operatorDeclaration.Attributes) {
+				section.AcceptVisitor(this, data);
+			}
+			blockStack.Push(operatorDeclaration.Body);
+			object ret = data;
+			if (operatorDeclaration.Body != null) {
+				ret = operatorDeclaration.Body.AcceptChildren(this, data);
+			}
+			blockStack.Pop();
+			return ret;
+		}
+#endregion
+		*/
+#region Statements
+		public virtual object Visit(BlockStatement blockStatement, object data)
+		{
+			if (blockStatement == null) {
+				return null;
+			}
+			blockStack.Push(blockStatement);
+			object ret = blockStatement.AcceptChildren(this, data);
+			blockStack.Pop();
+			return ret;
+		}
+		
+		public virtual object Visit(LocalVariableDeclaration localVariableDeclaration, object data)
+		{
+//			foreach (VariableDeclaration decl in localVariableDeclaration.Variables) {
+//				decl.AcceptVisitor(this, data);
+//			}
+			return data;
+		}
+		
+		public virtual object Visit(IfElseStatement ifElseStatement, object data)
+		{
+			object ret = data;
+			if (ifElseStatement.Condition != null) {
+				ret = ifElseStatement.Condition.AcceptVisitor(this, data);
+			}
+			if (ifElseStatement.EmbeddedStatement != null) {
+				ret = ifElseStatement.EmbeddedStatement.AcceptVisitor(this, data);
+			}
+			if (ifElseStatement.EmbeddedElseStatement != null) {
+				ret = ifElseStatement.EmbeddedStatement.AcceptVisitor(this, data);
+			}
+			return ret;
+		}
+		
+		public virtual object Visit(WhileStatement whileStatement, object data)
+		{
+			object ret = data;
+			if (whileStatement.Condition != null) {
+				ret = whileStatement.Condition.AcceptVisitor(this, data);
+			}
+			if (whileStatement.EmbeddedStatement == null) {
+				return ret;
+			}
+			return whileStatement.EmbeddedStatement.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(DoWhileStatement doWhileStatement, object data)
+		{
+			object ret = data;
+			if (doWhileStatement.Condition != null) {
+				ret = doWhileStatement.Condition.AcceptVisitor(this, data);
+			}
+			if (doWhileStatement.EmbeddedStatement == null) {
+				return ret;
+			}
+			return doWhileStatement.EmbeddedStatement.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(ForStatement forStatement, object data)
+		{
+			object ret = data;
+			foreach(INode n in forStatement.Initializers) {
+				n.AcceptVisitor(this, data);
+			}
+			if (forStatement.Condition != null) {
+				ret = forStatement.Condition.AcceptVisitor(this, data);
+			}
+			foreach(INode n in forStatement.Iterator) {
+				n.AcceptVisitor(this, data);
+			}
+			if (forStatement.EmbeddedStatement == null) {
+				return ret;
+			}
+			return forStatement.EmbeddedStatement.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(ForeachStatement foreachStatement, object data)
+		{
+			if (foreachStatement.Expression != null) {
+				foreachStatement.Expression.AcceptVisitor(this, data);
+			}
+			if (foreachStatement.EmbeddedStatement == null) {
+				return data;
+			}
+			return foreachStatement.EmbeddedStatement.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(LabelStatement labelStatement, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(GotoStatement gotoStatement, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(BreakStatement breakStatement, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(ReturnStatement returnStatement, object data)
+		{
+			if (returnStatement.Expression != null) {
+				return returnStatement.Expression.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(SwitchStatement switchStatement, object data)
+		{
+			if (switchStatement == null) {
+				return null;
+			}
+			if (switchStatement.SwitchExpression != null) {
+				switchStatement.SwitchExpression.AcceptVisitor(this, data);
+			}
+			foreach (SwitchSection section in switchStatement.SwitchSections) {
+				section.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(SwitchSection switchSection, object data)
+		{
+			foreach (CaseLabel label in switchSection.SwitchLabels) {
+				if (label.Label != null) {
+					label.Label.AcceptVisitor(this, data);
+				}
+			}
+			return switchSection.AcceptChildren(this, data);
+		}
+		
+		public virtual object Visit(LockStatement lockStatement, object data)
+		{
+			if (lockStatement.EmbeddedStatement == null) {
+				return data;
+			}
+			return lockStatement.EmbeddedStatement.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(CatchClause catchClause, object data)
+		{
+			if (catchClause.StatementBlock == null) {
+				return data;
+			}
+			return catchClause.StatementBlock.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(TryCatchStatement tryCatchStatement, object data)
+		{
+			if (tryCatchStatement.StatementBlock != null) {
+				tryCatchStatement.StatementBlock.AcceptVisitor(this, data);
+			}
+			foreach (CatchClause catchClause in tryCatchStatement.CatchClauses) {
+				catchClause.AcceptVisitor(this, data);
+			}
+			if (tryCatchStatement.FinallyBlock != null) {
+				return tryCatchStatement.FinallyBlock.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		
+		public virtual object Visit(ThrowStatement throwStatement, object data)
+		{
+			if (throwStatement.Expression == null) {
+				return data;
+			}
+			return throwStatement.Expression.AcceptVisitor(this, data);
+		}
+		
+		public virtual object Visit(StatementExpression statementExpression, object data)
+		{
+			if (statementExpression.Expression == null) {
+				return null;
+			}
+			return statementExpression.Expression.AcceptVisitor(this, data);
+		}
+#endregion
+		
+#region Expressions
+		public virtual object Visit(PrimitiveExpression primitiveExpression, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(BinaryOperatorExpression binaryOperatorExpression, object data)
+		{
+			binaryOperatorExpression.Left.AcceptVisitor(this, data);
+			return binaryOperatorExpression.Right.AcceptVisitor(this, data);;
+		}
+		public virtual object Visit(ParenthesizedExpression parenthesizedExpression, object data)
+		{
+			return parenthesizedExpression.Expression.AcceptVisitor(this, data);
+		}
+		public virtual object Visit(FieldReferenceExpression fieldReferenceExpression, object data)
+		{
+			if (fieldReferenceExpression.TargetObject != null) {
+				return fieldReferenceExpression.TargetObject.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		public virtual object Visit(InvocationExpression invocationExpression, object data)
+		{
+			if (invocationExpression.TargetObject != null) {
+				return invocationExpression.TargetObject.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		public virtual object Visit(IdentifierExpression identifierExpression, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(TypeReferenceExpression typeReferenceExpression, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(UnaryOperatorExpression unaryOperatorExpression, object data)
+		{
+			return unaryOperatorExpression.Expression.AcceptVisitor(this, data);
+		}
+		public virtual object Visit(AssignmentExpression assignmentExpression, object data)
+		{
+			assignmentExpression.Left.AcceptVisitor(this, data);
+			return assignmentExpression.Right.AcceptVisitor(this, data);
+		}
+		public virtual object Visit(TypeOfExpression typeOfExpression, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(CastExpression castExpression, object data)
+		{
+			return castExpression.Expression.AcceptVisitor(this, data);
+		}
+		public virtual object Visit(ThisReferenceExpression thisReferenceExpression, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(BaseReferenceExpression baseReferenceExpression, object data)
+		{
+			return data;
+		}
+		public virtual object Visit(ObjectCreateExpression objectCreateExpression, object data)
+		{
+			foreach (Expression e in objectCreateExpression.Parameters) {
+				e.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+		public virtual object Visit(ArrayCreateExpression arrayCreateExpression, object data)
+		{ // TODO
+//			if (arrayCreateExpression.Parameters != null) {
+//				foreach (ParameterDeclarationExpression p in arrayCreateExpression.Parameters) {
+//					p.AcceptVisitor(this, data);
+//				}
+//			}
+//			if (arrayCreateExpression.ArrayInitializer != null) {
+//				return arrayCreateExpression.ArrayInitializer.AcceptVisitor(this, data);
+//			}
+			return data;
+		}
+		public virtual object Visit(ArrayInitializerExpression arrayInitializerExpression, object data)
+		{
+			foreach (Expression e in arrayInitializerExpression.CreateExpressions) {
+				e.AcceptVisitor(this, data);
+			}
+			return data;
+		}
+#endregion
+#endregion 
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractNode.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractNode.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/AbstractNode.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,117 @@
+// AbstractNode.cs
+// Copyright (C) 2003 Mike Krueger (mike at icsharpcode.net)
+// 
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+using System;
+using System.Text;
+using System.Drawing;
+
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public abstract class AbstractNode : INode
+	{
+		INode     parent;
+		ArrayList children = new ArrayList();
+		Hashtable specials;
+		Point     startLocation;
+		Point     endLocation;
+		
+		public INode Parent {
+			get	{
+				return parent;
+			}
+			set {
+				parent = value;
+			}
+		}
+		
+		public Point StartLocation {
+			get {
+				return startLocation;
+			}
+			set {
+				startLocation = value;
+			}
+		}
+		
+		public Point EndLocation {
+			get {
+				return endLocation;
+			}
+			set {
+				endLocation = value;
+			}
+		}
+		
+		public Hashtable Specials {
+			get {
+				return specials;
+			}
+			set {
+				specials = value;
+			}
+		}
+		
+		public ArrayList Children {
+			get {
+				return children;
+			}
+		}
+		
+		public virtual void AddChild(INode childNode)
+		{
+			children.Add(childNode);
+		}
+		
+		public abstract object AcceptVisitor(IASTVisitor visitor, object data);
+		
+		public object AcceptChildren(IASTVisitor visitor, object data)
+		{
+			foreach (INode child in children) {
+				if (child != null) {
+					child.AcceptVisitor(visitor, data);
+				}
+			}
+			return data;
+		}
+		
+		public static string GetCollectionString(ICollection collection)
+		{
+			StringBuilder output = new StringBuilder();
+			output.Append('{');
+			
+			if (collection != null) {
+				IEnumerator en = collection.GetEnumerator();
+				bool isFirst = true;
+				while (en.MoveNext()) {
+					if (!isFirst) {
+						output.Append(", ");
+					} else {
+						isFirst = false;
+					}
+					output.Append(en.Current.ToString());
+				}
+			} else {
+				return "null";
+			}
+			
+			output.Append('}');
+			return output.ToString();
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Enums.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Enums.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Enums.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,168 @@
+using System;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	
+	[Flags]
+	public enum Modifier
+	{
+		// Access 
+		Private   = 0x0001,
+		Internal  = 0x0002,
+		Protected = 0x0004,
+		Public    = 0x0008,
+		Dim	      = 0x0010,	// VB.NET SPECIFIC
+	 
+		// Scope
+		Abstract  = 0x0010, 
+		Virtual   = 0x0020,
+		Sealed    = 0x0040,
+		Static    = 0x0080,
+		Override  = 0x0100,
+		Readonly  = 0x0200,
+		Const	  = 0X0400,
+		New       = 0x0800,
+	 	 
+		// Special 
+		Extern    = 0x1000,
+		Volatile  = 0x2000,
+		Unsafe    = 0x4000,
+		
+		// Modifier scopes
+		None      = 0x0000,
+		
+		Classes                         = New | Public | Protected | Internal | Private | Abstract | Sealed,
+		Fields                          = New | Public | Protected | Internal | Private | Static   | Readonly | Volatile,
+		PropertysEventsMethods          = New | Public | Protected | Internal | Private | Static   | Virtual  | Sealed   | Override | Abstract | Extern,
+		Indexers                        = New | Public | Protected | Internal | Private | Virtual  | Sealed   | Override | Abstract | Extern,
+		Operators                       = Public | Static | Extern,
+		Constants                       = New | Public | Protected | Internal | Private,
+		StructsInterfacesEnumsDelegates = New | Public | Protected | Internal | Private,
+		StaticConstructors              = Extern | Static | Unsafe,
+		Destructors                     = Extern | Unsafe,
+		Constructors                    = Public | Protected | Internal | Private | Extern,
+		
+		All       = Private  | Internal | Protected | Public |
+		            Abstract | Virtual  | Sealed    | Static | 
+		            Override | Readonly | Const     | New    |
+		            Extern   | Volatile | Unsafe
+	}
+	
+	/// <summary>
+	/// Summary description for Class1.
+	/// </summary>
+	public enum Types
+	{
+		Class,
+		Interface,
+		Struct,
+		Enum
+	}
+	
+	public enum ParentType
+	{
+		ClassOrStruct,
+		InterfaceOrEnum,
+		Namespace,
+		Unknown
+	}
+	
+	public enum FieldDirection {
+		None,
+		In,
+		Out,
+		Ref
+	}
+	
+	public enum Members
+	{
+		Constant,
+		Field,
+		Method,
+		Property,
+		Event,
+		Indexer,
+		Operator,
+		Constructor,
+		StaticConstructor,
+		Destructor,
+		NestedType
+	}
+	
+	public enum ParamModifiers
+	{
+		In,
+		Out,
+		Ref,
+		Params
+	}
+	public enum UnaryOperatorType
+	{
+		None,
+		Not,
+		BitNot,
+		
+		Minus,
+		Plus,
+		
+		Increment,
+		Decrement,
+		
+		PostIncrement,
+		PostDecrement,
+		
+		Star,
+		BitWiseAnd
+	}
+	
+	public enum AssignmentOperatorType
+	{
+		None,
+		Assign,
+		
+		Add,
+		Subtract,
+		Multiply,
+		Divide,
+		Modulus,
+		
+		ShiftLeft,
+		ShiftRight,
+		
+		BitwiseAnd,
+		BitwiseOr,
+		ExclusiveOr,
+	}
+	
+	public enum BinaryOperatorType
+	{
+		None,
+		Add,
+		BitwiseAnd,
+		BitwiseOr,
+		LogicalAnd,
+		LogicalOr,
+		Divide,
+		GreaterThan,
+		GreaterThanOrEqual,
+		
+		Equality,
+		InEquality,
+		
+		LessThan,
+		LessThanOrEqual,
+		Modulus,
+		Multiply,
+		Subtract,
+		ValueEquality,
+		
+		// additional
+		ShiftLeft,
+		ShiftRight,
+		IS,
+		AS,
+		ExclusiveOr,
+	}
+	
+	
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,73 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public class ArrayCreateExpression : Expression
+	{
+		TypeReference              createType       = null;
+		ArrayList                  parameters       = new ArrayList(); // Expressions
+		int[]                      rank             = null;
+		ArrayInitializerExpression arrayInitializer = null; // Array Initializer OR NULL
+		
+		public TypeReference CreateType {
+			get {
+				return createType;
+			}
+			set {
+				createType = value;
+			}
+		}
+		
+		public ArrayList Parameters {
+			get {
+				return parameters;
+			}
+		}
+		
+		public int[] Rank {
+			get {
+				return rank;
+			}
+			set {
+				rank = value;
+			}
+		}
+		
+		public ArrayInitializerExpression ArrayInitializer {
+			get {
+				return arrayInitializer;
+			}
+			set {
+				arrayInitializer = value;
+			}
+		}
+		
+		public ArrayCreateExpression(TypeReference createType, ArrayList parameters)
+		{
+			this.createType = createType;
+			if (parameters != null) {
+				this.parameters = parameters;
+			}
+		}
+		
+		public ArrayCreateExpression(TypeReference createType, ArrayInitializerExpression arrayInitializer)
+		{
+			this.createType = createType;
+			this.arrayInitializer = arrayInitializer;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ArrayCreateExpression: CreateType={0}, Parameters={1}, ArrayInitializer={2}]",
+			                     createType,
+			                     GetCollectionString(parameters),
+			                     arrayInitializer);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,28 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST {
+	
+	public class ArrayInitializerExpression : Expression
+	{
+		ArrayList     createExpressions = new ArrayList(); // Expressions
+		
+		public ArrayList CreateExpressions {
+			get {
+				return createExpressions;
+			}
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ArrayInitializerExpression: CreateExpressions={0}]", 
+			                     GetCollectionString(createExpressions));
+		}
+		
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,58 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class AssignmentExpression : Expression
+	{
+		Expression left;
+		AssignmentOperatorType op;
+		Expression right;
+		
+		public Expression Left {
+			get {
+				return left;
+			}
+			set {
+				left = value;
+			}
+		}
+		
+		public AssignmentOperatorType Op {
+			get {
+				return op;
+			}
+			set {
+				op = value;
+			}
+		}
+		
+		public Expression Right {
+			get {
+				return right;
+			}
+			set {
+				right = value;
+			}
+		}
+		
+		public AssignmentExpression(Expression left, AssignmentOperatorType op, Expression right)
+		{
+			this.left  = left;
+			this.op    = op;
+			this.right = right;
+		}
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[AssignmentExpression: Op={0}, Left={1}, Right={2}]",
+			                     op,
+			                     left,
+			                     right);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,18 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class BaseReferenceExpression : Expression
+	{
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[BaseReferenceExpression]");
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,59 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class BinaryOperatorExpression : Expression
+	{
+		Expression left;
+		BinaryOperatorType op;
+		Expression right;
+		
+		public Expression Left {
+			get {
+				return left;
+			}
+			set {
+				left = value;
+			}
+		}
+		
+		public BinaryOperatorType Op {
+			get {
+				return op;
+			}
+			set {
+				op = value;
+			}
+		}
+		
+		public Expression Right {
+			get {
+				return right;
+			}
+			set {
+				right = value;
+			}
+		}
+		
+		public BinaryOperatorExpression(Expression left, BinaryOperatorType op, Expression right)
+		{
+			this.left  = left;
+			this.op    = op;
+			this.right = right;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[BinaryOperatorExpression: Op={0}, Left={1}, Right={2}]",
+			                     op,
+			                     left,
+			                     right);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/CastExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/CastExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/CastExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,49 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class CastExpression : Expression
+	{
+		TypeReference castTo;
+		Expression expression;
+		
+		
+		public TypeReference CastTo {
+			get {
+				return castTo;
+			}
+			set {
+				castTo = value;
+			}
+		}
+		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		
+		public CastExpression(TypeReference castTo, Expression expression)
+		{
+			this.castTo = castTo;
+			this.expression = expression;
+		}
+		
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[CastExpression: CastTo={0}, Expression={1}]",
+			                     castTo,
+			                     expression);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/Expression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/Expression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/Expression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,26 @@
+// Expression.cs
+// Copyright (C) 2003 Mike Krueger (mike at icsharpcode.net)
+// 
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public abstract class Expression : AbstractNode
+	{
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,47 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST {
+	
+	public class FieldReferenceExpression : Expression
+	{
+		Expression targetObject;
+		string fieldName;
+		
+		public Expression TargetObject {
+			get {
+				return targetObject;
+			}
+			set {
+				targetObject = value;
+			}
+		}
+		
+		public string FieldName {
+			get {
+				return fieldName;
+			}
+			set {
+				fieldName = value;
+			}
+		}
+		
+		public FieldReferenceExpression(Expression targetObject, string fieldName)
+		{
+			this.targetObject = targetObject;
+			this.fieldName = fieldName;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[FieldReferenceExpression: FieldName={0}, TargetObject={1}]",
+			                     fieldName,
+			                     targetObject);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,36 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public class IdentifierExpression : Expression
+	{
+		string identifier;
+		
+		public string Identifier {
+			get {
+				return identifier;
+			}
+			set {
+				identifier = value;
+			}
+		}
+		
+		public IdentifierExpression(string identifier)
+		{
+			this.identifier = identifier;
+		}
+		
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[IdentifierExpression: Identifier={0}]",
+			                     identifier);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,46 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST {
+	
+	public class InvocationExpression : Expression
+	{
+		Expression  targetObject;
+		ArrayList   parameters = new ArrayList(); // Expression list
+		
+		public Expression TargetObject {
+			get {
+				return targetObject;
+			}
+			set {
+				targetObject = value;
+			}
+		}
+		public ArrayList Parameters {
+			get {
+				return parameters;
+			}
+		}
+		
+		public InvocationExpression(Expression targetObject, ArrayList parameters)
+		{
+			this.targetObject = targetObject;
+			if (parameters != null) {
+				this.parameters = parameters;
+			}
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[InvocationExpression: TargetObject={0}, parameters={1}]",
+			                     targetObject,
+			                     GetCollectionString(parameters));
+		}
+	}
+}
+

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,45 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ObjectCreateExpression : Expression
+	{
+		TypeReference createType;
+		ArrayList     parameters; // Expressions
+		
+		public TypeReference CreateType {
+			get {
+				return createType;
+			}
+			set {
+				createType = value;
+			}
+		}
+		public ArrayList Parameters {
+			get {
+				return parameters;
+			}
+		}
+		
+		public ObjectCreateExpression(TypeReference createType, ArrayList parameters)
+		{
+			this.createType = createType;
+			if (parameters != null) {
+				this.parameters = parameters;
+			}
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ObjectCreateExpression: CreateType={0}, Parameters={1}]",
+			                     createType,
+			                     GetCollectionString(parameters));
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,35 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ParenthesizedExpression : Expression
+	{
+		Expression expression;
+		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		
+		public ParenthesizedExpression(Expression expression)
+		{
+			this.expression  = expression;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ParenthesizedExpression: Expression={0}]",
+			                     expression);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,47 @@
+using System;
+using System.Collections;
+using System.Globalization;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST {
+	
+	public class PrimitiveExpression : Expression
+	{
+		object val;
+		string stringValue;
+		
+		public object Value {
+			get {
+				return val;
+			}
+			set {
+				val = value;
+			}
+		}
+		
+		public string StringValue {
+			get {
+				return stringValue;
+			}
+			set {
+				stringValue = value;
+			}
+		}
+		
+		public PrimitiveExpression(object val, string stringValue)
+		{
+			this.val = val;
+			this.stringValue = stringValue;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[PrimitiveExpression: StringValue={0}]",
+			                     stringValue);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,19 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ThisReferenceExpression : Expression
+	{
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ThisReferenceExpression]");
+		}
+
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,35 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class TypeOfExpression : Expression
+	{
+		TypeReference typeReference;
+		
+		public TypeReference TypeReference {
+			get {
+				return typeReference;
+			}
+			set {
+				typeReference = value;
+			}
+		}
+		
+		public TypeOfExpression(TypeReference typeReference)
+		{
+			this.typeReference  = typeReference;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[TypeOfExpression: TypeReference={0}]", 
+			                     typeReference);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,39 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST {
+	
+	public class TypeReferenceExpression : Expression
+	{
+		TypeReference  typeReference;
+		
+		public TypeReference TypeReference {
+			get {
+				return typeReference;
+			}
+			set {
+				typeReference = value;
+			}
+		}
+		
+		public TypeReferenceExpression(string type)
+		{
+			this.typeReference = new TypeReference(type);
+		}
+		public TypeReferenceExpression(TypeReference  typeReference)
+		{
+			this.typeReference = typeReference;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[TypeReferenceExpression: TypeReference={0}]", 
+			                     typeReference);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,46 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class UnaryOperatorExpression : Expression
+	{
+		Expression        expression;
+		UnaryOperatorType op;
+		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		public UnaryOperatorType Op {
+			get {
+				return op;
+			}
+			set {
+				op = value;
+			}
+		}
+		
+		public UnaryOperatorExpression(Expression expression, UnaryOperatorType op)
+		{
+			this.expression  = expression;
+			this.op    = op;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[UnaryOperatorExpression: Op={0}, Expression={1}]",
+			                     op,
+			                     expression);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,119 @@
+// TypeReference.cs
+// Copyright (C) 2003 Mike Krueger (mike at icsharpcode.net)
+// 
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+using System;
+using System.Collections;
+using System.Text;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public class TypeReference
+	{
+		string type;
+		string systemType;
+		int    pointerNestingLevel = 0;
+		int[]  rankSpecifier;
+		
+		static Hashtable types = new Hashtable();
+		static TypeReference()
+		{
+			types.Add("bool",    "System.Boolean");
+			types.Add("byte",    "System.Byte");
+			types.Add("char",    "System.Char");
+			types.Add("decimal", "System.Decimal");
+			types.Add("double",  "System.Double");
+			types.Add("float",   "System.Single");
+			types.Add("int",     "System.Int32");
+			types.Add("long",    "System.Int64");
+			types.Add("object",  "System.Object");
+			types.Add("sbyte",   "System.SByte");
+			types.Add("short",   "System.Int16");
+			types.Add("string",  "System.String");
+			types.Add("uint",    "System.UInt32");
+			types.Add("ulong",   "System.UInt64");
+			types.Add("ushort",  "System.UInt16");
+			types.Add("void",    "System.Void");
+		}
+		
+		public string Type {
+			get {
+				return type;
+			}
+			set {
+				type = value;
+			}
+		}
+		
+		public string SystemType {
+			get {
+				return systemType;
+			}
+		}
+		
+		public int PointerNestingLevel {
+			get {
+				return pointerNestingLevel;
+			}
+			set {
+				pointerNestingLevel = value;
+			}
+		}
+		
+		public int[] RankSpecifier {
+			get {
+				return rankSpecifier;
+			}
+		}
+		
+		public bool IsArrayType {
+			get {
+				return rankSpecifier != null && rankSpecifier.Length > 0;
+			}
+		}
+		
+		string GetSystemType(string type)
+		{
+			if (types[type] != null) {
+				return (string)types[type];
+			}
+			return type;
+		}
+		
+		public TypeReference(string type)
+		{
+			this.systemType = GetSystemType(type);
+			this.type = type;
+		}
+		
+		public TypeReference(string type, int[] rankSpecifier) : this(type, 0, rankSpecifier)
+		{
+		}
+		
+		public TypeReference(string type, int pointerNestingLevel, int[] rankSpecifier)
+		{
+			this.type = type;
+			this.systemType = GetSystemType(type);
+			this.pointerNestingLevel = pointerNestingLevel;
+			this.rankSpecifier = rankSpecifier;
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[TypeReference: Type={0}, PointerNestingLevel={1}, RankSpecifier={2}]", type, pointerNestingLevel, rankSpecifier);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/IASTVisitor.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/IASTVisitor.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/IASTVisitor.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,92 @@
+using System;
+using ICSharpCode.CsVbRefactory.Parser.AST;
+
+namespace ICSharpCode.CsVbRefactory.Parser
+{
+	public interface IASTVisitor
+	{
+		object Visit(INode node, object data);
+		/*
+		object Visit(CompilationUnit compilationUnit, object data);
+		object Visit(NamespaceDeclaration namespaceDeclaration, object data);
+		object Visit(UsingDeclaration usingDeclaration, object data);
+		object Visit(UsingAliasDeclaration usingAliasDeclaration, object data);
+		object Visit(AttributeSection attributeSection, object data);
+		
+		// Types
+		object Visit(TypeDeclaration typeDeclaration, object data);
+		object Visit(DelegateDeclaration delegateDeclaration, object data);
+		
+		// Members
+		object Visit(VariableDeclaration variableDeclaration, object data);
+		object Visit(FieldDeclaration    fieldDeclaration, object data);
+		
+		object Visit(MethodDeclaration methodDeclaration, object data);
+		object Visit(PropertyDeclaration propertyDeclaration, object data);
+		object Visit(PropertyGetRegion propertyGetRegion, object data);
+		object Visit(PropertySetRegion PropertySetRegion, object data);
+		object Visit(EventDeclaration eventDeclaration, object data);
+		object Visit(EventAddRegion eventAddRegion, object data);
+		object Visit(EventRemoveRegion eventRemoveRegion, object data);
+		
+		object Visit(ConstructorDeclaration constructorDeclaration, object data);
+		object Visit(DestructorDeclaration destructorDeclaration, object data);
+		object Visit(OperatorDeclaration operatorDeclaration, object data);
+		object Visit(IndexerDeclaration indexerDeclaration, object data);
+		
+		// Statements
+		object Visit(BlockStatement blockStatement, object data);
+		object Visit(StatementExpression statementExpression, object data);
+		object Visit(LocalVariableDeclaration variableDeclaration, object data);
+		object Visit(EmptyStatement emptyStatement, object data);
+		object Visit(ReturnStatement returnStatement, object data);
+		object Visit(IfStatement ifStatement, object data);
+		object Visit(IfElseStatement ifElseStatement, object data);
+		object Visit(WhileStatement whileStatement, object data);
+		object Visit(DoWhileStatement doWhileStatement, object data);
+		object Visit(ForStatement forStatement, object data);
+		object Visit(LabelStatement labelStatement, object data);
+		object Visit(GotoStatement gotoStatement, object data);
+		object Visit(SwitchStatement switchStatement, object data);
+		object Visit(BreakStatement breakStatement, object data);
+		object Visit(ContinueStatement continueStatement, object data);
+		object Visit(GotoCaseStatement gotoCaseStatement, object data);
+		object Visit(ForeachStatement foreachStatement, object data);
+		object Visit(LockStatement lockStatement, object data);
+		object Visit(UsingStatement usingStatement, object data);
+		object Visit(TryCatchStatement tryCatchStatement, object data);
+		object Visit(ThrowStatement throwStatement, object data);
+		object Visit(FixedStatement fixedStatement, object data);
+		object Visit(CheckedStatement checkedStatement, object data);
+		object Visit(UncheckedStatement uncheckedStatement, object data);
+		
+		// Expressions
+		object Visit(PrimitiveExpression      primitiveExpression, object data);
+		object Visit(BinaryOperatorExpression binaryOperatorExpression, object data);
+		object Visit(ParenthesizedExpression parenthesizedExpression, object data);
+		object Visit(InvocationExpression invocationExpression, object data);
+		object Visit(IdentifierExpression identifierExpression, object data);
+		object Visit(TypeReferenceExpression typeReferenceExpression, object data);
+		object Visit(UnaryOperatorExpression unaryOperatorExpression, object data);
+		object Visit(AssignmentExpression assignmentExpression, object data);
+		object Visit(SizeOfExpression sizeOfExpression, object data);
+		object Visit(TypeOfExpression typeOfExpression, object data);
+		object Visit(CheckedExpression checkedExpression, object data);
+		object Visit(UncheckedExpression uncheckedExpression, object data);
+		object Visit(PointerReferenceExpression pointerReferenceExpression, object data);
+		object Visit(CastExpression castExpression, object data);
+		object Visit(StackAllocExpression stackAllocExpression, object data);
+		object Visit(IndexerExpression indexerExpression, object data);
+		object Visit(ThisReferenceExpression thisReferenceExpression, object data);
+		object Visit(BaseReferenceExpression baseReferenceExpression, object data);
+		object Visit(ObjectCreateExpression objectCreateExpression, object data);
+		object Visit(ArrayCreateExpression arrayCreateExpression, object data);
+		object Visit(ParameterDeclarationExpression parameterDeclarationExpression, object data);
+		object Visit(FieldReferenceExpression fieldReferenceExpression, object data);
+		object Visit(DirectionExpression directionExpression, object data);
+		object Visit(ArrayInitializerExpression arrayInitializerExpression, object data);
+		object Visit(ConditionalExpression conditionalExpression, object data);
+		
+		*/
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/INode.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/INode.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/INode.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,66 @@
+// INode.cs
+// Copyright (C) 2003 Mike Krueger (mike at icsharpcode.net)
+// 
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+using System;
+using System.Drawing;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public interface INode
+	{
+		INode Parent { 
+			get;
+			set;
+		}
+		
+		Hashtable Specials {
+			get;
+			set;
+		}
+		
+		ArrayList Children {
+			get;
+		}
+		
+		Point StartLocation {
+			get;
+			set;
+		}
+		
+		Point EndLocation {
+			get;
+			set;
+		}
+		
+		/// <summary>
+		/// Visits all children
+		/// </summary>
+		/// <param name="visitor">The visitor to accept</param>
+		/// <param name="data">Additional data for the visitor</param>
+		/// <returns>The paremeter <paramref name="data"/></returns>
+		object AcceptChildren(IASTVisitor visitor, object data);
+		
+		/// <summary>
+		/// Accept the visitor
+		/// </summary>
+		/// <param name="visitor">The visitor to accept</param>
+		/// <param name="data">Additional data for the visitor</param>
+		/// <returns>The value the visitor returns after the visit</returns>
+		object AcceptVisitor(IASTVisitor visitor, object data);
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BlockStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BlockStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BlockStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,19 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public class BlockStatement : Statement
+	{
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[BlockStatement: Children={0}]", 
+			                     GetCollectionString(base.Children));
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BreakStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BreakStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/BreakStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,18 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class BreakStatement : Statement
+	{
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[BreakStatement]");
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,44 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class DoWhileStatement : Statement
+	{
+		Expression condition;
+		Statement  embeddedStatement;
+		
+		public Expression Condition {
+			get {
+				return condition;
+			}
+			set {
+				condition = value;
+			}
+		}
+		public Statement EmbeddedStatement {
+			get {
+				return embeddedStatement;
+			}
+			set {
+				embeddedStatement = value;
+			}
+		}
+		public DoWhileStatement(Expression condition, Statement embeddedStatement)
+		{
+			this.condition = condition;
+			this.embeddedStatement = embeddedStatement;
+		}
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[DoWhileStatement: Condition={0}, EmbeddedStatement={1}]", 
+			                     condition,
+			                     embeddedStatement);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,69 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ForStatement : Statement
+	{
+		ArrayList  initializers = new ArrayList(); // EmbeddedStatement OR list of StatmentExpressions
+		Expression condition;
+		ArrayList  iterator = new ArrayList();     // list of StatmentExpressions
+		Statement  embeddedStatement;
+		
+		public ArrayList Initializers {
+			get {
+				return initializers;
+			}
+		}
+		
+		public Expression Condition {
+			get {
+				return condition;
+			}
+			set {
+				condition = value;
+			}
+		}
+		
+		public ArrayList Iterator {
+			get {
+				return iterator;
+			}
+		}
+		
+		public Statement EmbeddedStatement {
+			get {
+				return embeddedStatement;
+			}
+			set {
+				embeddedStatement = value;
+			}
+		}
+		
+		public ForStatement(ArrayList initializers, Expression condition, ArrayList iterator, Statement embeddedStatement)
+		{
+			if (initializers != null) {
+				this.initializers = initializers;
+			}
+			this.condition = condition;
+			if (iterator != null) {
+				this.iterator = iterator;
+			}
+			this.embeddedStatement = embeddedStatement;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ForStatement: Initializers{0}, Condition={1}, iterator{2}, EmbeddedStatement={3}]", 
+			                     GetCollectionString(initializers),
+			                     condition,
+			                     GetCollectionString(iterator),
+			                     embeddedStatement);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,71 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ForeachStatement : Statement
+	{
+		TypeReference typeReference;
+		string        variableName;
+		Expression    expression;
+		Statement     embeddedStatement;
+		
+		public TypeReference TypeReference {
+			get {
+				return typeReference;
+			}
+			set {
+				typeReference = value;
+			}
+		}
+		
+		public string VariableName {
+			get {
+				return variableName;
+			}
+			set {
+				variableName = value;
+			}
+		}
+		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		
+		public Statement EmbeddedStatement {
+			get {
+				return embeddedStatement;
+			}
+			set {
+				embeddedStatement = value;
+			}
+		}
+		
+		public ForeachStatement(TypeReference typeReference, string variableName, Expression expression, Statement embeddedStatement)
+		{
+			this.typeReference     = typeReference;
+			this.variableName      = variableName;
+			this.expression        = expression;
+			this.embeddedStatement = embeddedStatement;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ForeachStatement: TypeReference={0}, Expression={1}, EmbeddedStatement={2}]", 
+			                     typeReference,
+			                     expression,
+			                     embeddedStatement);
+		}
+
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/GotoStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/GotoStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/GotoStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,35 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class GotoStatement : Statement
+	{
+		string label;
+		
+		public string Label {
+			get {
+				return label;
+			}
+			set {
+				label = value;
+			}
+		}
+		
+		public GotoStatement(string label)
+		{
+			this.label = label;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[GotoStatement: Label={0}]",
+			                     label);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,58 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class IfElseStatement : Statement
+	{
+		Expression condition;
+		Statement  embeddedStatement;
+		Statement  embeddedElseStatement;
+		
+		public Expression Condition {
+			get {
+				return condition;
+			}
+			set {
+				condition = value;
+			}
+		}
+		public Statement EmbeddedStatement {
+			get {
+				return embeddedStatement;
+			}
+			set {
+				embeddedStatement = value;
+			}
+		}
+		
+		public Statement EmbeddedElseStatement {
+			get {
+				return embeddedElseStatement;
+			}
+			set {
+				embeddedElseStatement = value;
+			}
+		}
+		
+		public IfElseStatement(Expression condition, Statement embeddedStatement, Statement embeddedElseStatement)
+		{
+			this.condition = condition;
+			this.embeddedStatement = embeddedStatement;
+			this.embeddedElseStatement = embeddedElseStatement;
+		}
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[GotoStatement: Condition={0}, EmbeddedStatement={1}, EmbeddedElseStatement={2}]",
+			                     condition,
+			                     embeddedStatement,
+			                     embeddedElseStatement
+			                     );
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LabelStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LabelStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LabelStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,35 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class LabelStatement : Statement
+	{
+		string label;
+		
+		public string Label {
+			get {
+				return label;
+			}
+			set {
+				label = value;
+			}
+		}
+		
+		public LabelStatement(string label)
+		{
+			this.label = label;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[LabelStatement: Label={0}]",
+			                     label);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,80 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST
+{
+	public class LocalVariableDeclaration : Statement
+	{
+		TypeReference type;
+		Modifier      modifier = Modifier.None;
+		ArrayList     variables = new ArrayList(); // [VariableDeclaration]
+		INode block; // the block in witch the variable is declared; needed for the LookupTable
+		
+		public TypeReference Type {
+			get {
+				return type;
+			}
+			set {
+				type = value;
+			}
+		}
+		
+		public Modifier Modifier {
+			get {
+				return modifier;
+			}
+			set {
+				modifier = value;
+			}
+		}
+		
+		public ArrayList Variables {
+			get {
+				return variables;
+			}
+		}
+		
+		public INode Block {
+			get {
+				return block;
+			}
+			set {
+				block = value;
+			}
+		}
+		
+		public LocalVariableDeclaration(TypeReference type)
+		{
+			this.type = type;
+		}
+		
+		public LocalVariableDeclaration(TypeReference type, Modifier modifier)
+		{
+			this.type     = type;
+			this.modifier = modifier;
+		}
+		
+//		public VariableDeclaration GetVariableDeclaration(string variableName)
+//		{
+//			foreach (VariableDeclaration variableDeclaration in variables) {
+//				if (variableDeclaration.Name == variableName) {
+//					return variableDeclaration;
+//				}
+//			}
+//			return null;
+//		}
+				
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[LocalVariableDeclaration: Type={0}, Modifier ={1} Variables={2}]", 
+			                     type, 
+			                     modifier, 
+			                     GetCollectionString(variables));
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LockStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LockStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/LockStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,44 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class LockStatement : Statement
+	{
+		Expression lockExpression;
+		Statement  embeddedStatement;
+		
+		public Expression LockExpression {
+			get {
+				return lockExpression;
+			}
+			set {
+				lockExpression = value;
+			}
+		}
+		public Statement EmbeddedStatement {
+			get {
+				return embeddedStatement;
+			}
+			set {
+				embeddedStatement = value;
+			}
+		}
+		public LockStatement(Expression lockExpression, Statement embeddedStatement)
+		{
+			this.lockExpression = lockExpression;
+			this.embeddedStatement = embeddedStatement;
+		}
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[LockStatement: LockExpression={0}, EmbeddedStatement={1}]", 
+			                     lockExpression,
+			                     embeddedStatement);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,44 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ReturnStatement : Statement
+	{
+		Expression expression;
+		
+//		public Expression ReturnExpression {
+//			get {
+//				return expression;
+//			}
+//			set {
+//				expression = value;
+//			}
+//		}
+//		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		
+		public ReturnStatement(Expression expression)
+		{
+			this.expression = expression;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ReturnStatement: Expression={0}]", 
+			                     expression);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/Statement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/Statement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/Statement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,26 @@
+// Statement.cs
+// Copyright (C) 2003 Mike Krueger (mike at icsharpcode.net)
+// 
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public abstract class Statement : AbstractNode
+	{
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/StatementExpression.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/StatementExpression.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/StatementExpression.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,51 @@
+// StatementExpression.cs
+// Copyright (C) 2003 Mike Krueger (mike at icsharpcode.net)
+// 
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+// 
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+// 
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class StatementExpression : Statement
+	{
+		Expression expression;
+		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		
+		
+		public StatementExpression(Expression expression)
+		{
+			this.expression = expression;
+		}
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[StatementExpression: Expression={0}]", expression);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,86 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class SwitchStatement : BlockStatement
+	{
+		// TODO: Look ower this all and add ToString() methods
+		Expression switchExpression;
+		ArrayList  switchSections  = new ArrayList();
+		
+		public Expression SwitchExpression {
+			get {
+				return switchExpression;
+			}
+			set {
+				switchExpression = value;
+			}
+		}
+		
+		public ArrayList SwitchSections {
+			get {
+				return switchSections;
+			}
+		}
+		
+		public SwitchStatement(Expression switchExpression, ArrayList switchSections)
+		{
+			this.switchExpression = switchExpression;
+			if (switchSections != null) {
+				this.switchSections = switchSections;
+			}
+		}
+		
+		public SwitchStatement(Expression switchExpression)
+		{
+			this.switchExpression = switchExpression;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+	}
+	
+	public class SwitchSection : BlockStatement
+	{
+		ArrayList switchLabels = new ArrayList();
+		
+		public ArrayList SwitchLabels {
+			get {
+				return switchLabels;
+			}
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+	}
+	
+	public class CaseLabel
+	{
+		Expression label;
+		
+		/// <value>null means default case</value>
+		public Expression Label {
+			get {
+				return label;
+			}
+			set {
+				label = value;
+			}
+		}
+		
+		public CaseLabel(Expression label)
+		{
+			this.label = label;
+		}
+		
+		public CaseLabel()
+		{
+			this.label = null;
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,44 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class ThrowStatement : Statement
+	{
+		Expression expression;
+		
+//		public Expression ThrowExpression {
+//			get {
+//				return expression;
+//			}
+//			set {
+//				expression = value;
+//			}
+//		}
+//		
+		public Expression Expression {
+			get {
+				return expression;
+			}
+			set {
+				expression = value;
+			}
+		}
+		
+		public ThrowStatement(Expression expression)
+		{
+			this.expression = expression;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[ThrowStatement: Expression={0}]", 
+			                     expression);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,123 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class TryCatchStatement : Statement
+	{
+		Statement statementBlock;
+		ArrayList catchClauses = new ArrayList();
+		Statement finallyBlock;
+		
+		public Statement StatementBlock {
+			get {
+				return statementBlock;
+			}
+			set {
+				statementBlock = value;
+			}
+		}
+		
+		public ArrayList CatchClauses {
+			get {
+				return catchClauses;
+			}
+		}
+		
+		public Statement FinallyBlock {
+			get {
+				return finallyBlock;
+			}
+			set {
+				finallyBlock = value;
+			}
+		}
+		
+		public TryCatchStatement(Statement statementBlock, ArrayList catchClauses, Statement finallyBlock)
+		{
+			this.statementBlock = statementBlock;
+			if (catchClauses != null) {
+				this.catchClauses = catchClauses;
+			}
+			this.finallyBlock = finallyBlock;
+		}
+		
+		public TryCatchStatement(Statement statementBlock, ArrayList catchClauses) : this(statementBlock, catchClauses, null)
+		{
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[TryCatchStatement: StatementBlock={0}, CatchClauses={1}, FinallyBlock={2}]",
+			                     statementBlock,
+			                     GetCollectionString(catchClauses),
+			                     finallyBlock);
+		}
+	}
+	
+	public class CatchClause : AbstractNode
+	{
+		string    type;
+		string    variableName;
+		Statement statementBlock;
+		
+		public string Type {
+			get {
+				return type;
+			}
+			set {
+				type = value;
+			}
+		}
+		
+		public string VariableName {
+			get {
+				return variableName;
+			}
+			set {
+				variableName = value;
+			}
+		}
+		
+		public Statement StatementBlock {
+			get {
+				return statementBlock;
+			}
+			set {
+				statementBlock = value;
+			}
+		}
+		
+		public CatchClause(string type, string variableName, Statement statementBlock)
+		{
+			this.type = type;
+			this.variableName = variableName;
+			this.statementBlock = statementBlock;
+		}
+		
+		public CatchClause(Statement statementBlock)
+		{
+			this.type         = null;
+			this.variableName = null;
+			this.statementBlock = statementBlock;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[CatchClause: Type={0}, VariableName={1}, StatementBlock={2}]", 
+			                     type,
+			                     variableName,
+			                     statementBlock);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/WhileStatement.cs
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/WhileStatement.cs	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory/Parser/AST/Statements/WhileStatement.cs	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,47 @@
+using System;
+using System.Collections;
+
+namespace ICSharpCode.CsVbRefactory.Parser.AST 
+{
+	public class WhileStatement : Statement
+	{
+		Expression condition;
+		Statement  embeddedStatement;
+		
+		public Expression Condition {
+			get {
+				return condition;
+			}
+			set {
+				condition = value;
+			}
+		}
+		
+		public Statement EmbeddedStatement {
+			get {
+				return embeddedStatement;
+			}
+			set {
+				embeddedStatement = value;
+			}
+		}
+		
+		public WhileStatement(Expression condition, Statement embeddedStatement)
+		{
+			this.condition = condition;
+			this.embeddedStatement = embeddedStatement;
+		}
+		
+		public override object AcceptVisitor(IASTVisitor visitor, object data)
+		{
+			return visitor.Visit(this, data);
+		}
+		
+		public override string ToString()
+		{
+			return String.Format("[WhileStatement: Condition={0}, EmbeddedStatement={1}]", 
+			                     condition,
+			                     embeddedStatement);
+		}
+	}
+}

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory.cmbx
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory.cmbx	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/CsVbRefactory.cmbx	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,16 @@
+<Combine fileversion="1.0" name="CsVbRefactory" description="">
+  <StartMode startupentry="" single="True">
+    <Execute entry="CsVbRefactory" type="None" />
+  </StartMode>
+  <Entries>
+    <Entry filename=".\CsVbRefactory\CsVbRefactory.prjx" />
+  </Entries>
+  <Configurations active="Debug">
+    <Configuration name="Release">
+      <Entry name="CsVbRefactory" configurationname="Debug" build="False" />
+    </Configuration>
+    <Configuration name="Debug">
+      <Entry name="CsVbRefactory" configurationname="Debug" build="False" />
+    </Configuration>
+  </Configurations>
+</Combine>
\ No newline at end of file

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,393 @@
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
+# src/Libraries/CsVbRefactory/Makefile.  Generated from Makefile.in by configure.
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+
+
+srcdir = .
+top_srcdir = ../../..
+
+pkgdatadir = $(datadir)/monodevelop
+pkglibdir = $(libdir)/monodevelop
+pkgincludedir = $(includedir)/monodevelop
+top_builddir = ../../..
+
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = /usr/bin/install -c
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = i686-redhat-linux-gnu
+host_triplet = i686-redhat-linux-gnu
+target_triplet = i686-redhat-linux-gnu
+ACLOCAL = ${SHELL} /home/jluke/svn/MonoDevelop/missing --run aclocal-1.7
+AMDEP_FALSE = #
+AMDEP_TRUE = 
+AMTAR = ${SHELL} /home/jluke/svn/MonoDevelop/missing --run tar
+AR = ar
+AUTOCONF = ${SHELL} /home/jluke/svn/MonoDevelop/missing --run autoconf
+AUTOHEADER = ${SHELL} /home/jluke/svn/MonoDevelop/missing --run autoheader
+AUTOMAKE = ${SHELL} /home/jluke/svn/MonoDevelop/missing --run automake-1.7
+AWK = gawk
+BASE_DEPENDENCIES_CFLAGS = -I/usr/include/mozilla-1.6/gtkembedmoz -I/usr/include/mozilla-1.6/xpcom -I/usr/include/mozilla-1.6/string -I/usr/include/mozilla-1.6/nspr  
+BASE_DEPENDENCIES_LIBS = -L/usr/lib/mozilla-1.6 -lgtkembedmoz -lxpcom -lplds4 -lplc4 -lnspr4 -lpthread -ldl  
+CC = gcc
+CCDEPMODE = depmode=gcc3
+CFLAGS = -g -O2
+CPP = gcc -E
+CPPFLAGS = 
+CXX = g++
+CXXCPP = g++ -E
+CXXDEPMODE = depmode=gcc3
+CXXFLAGS = -g -O2
+CYGPATH_W = echo
+DEFS = -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"monodevelop\" -DVERSION=\"0.2\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 
+DEPDIR = .deps
+ECHO = echo
+ECHO_C = 
+ECHO_N = -n
+ECHO_T = 
+EGREP = grep -E
+EXEEXT = 
+F77 = 
+FFLAGS = 
+GDLDOCK_CFLAGS = -I/home/jluke/garnome/include/gtk-2.0 -I/home/jluke/garnome/lib/gtk-2.0/include -I/home/jluke/garnome/include/atk-1.0 -I/home/jluke/garnome/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/home/jluke/garnome/include/glib-2.0 -I/home/jluke/garnome/lib/glib-2.0/include -I/home/jluke/garnome/include/libglade-2.0 -I/home/jluke/garnome/include/libxml2  
+GDLDOCK_LIBS = -Wl,--export-dynamic -L/home/jluke/garnome/lib -lglade-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lxml2 -lpthread -lz -lm  
+GLIB_GENMARSHAL = glib-genmarshal
+GLIB_MKENUMS = glib-mkenums
+GTKSOURCEVIEW_SHARP = -r:gtksourceview-sharp -lib:/home/jluke/garnome/lib  
+INSTALL_DATA = ${INSTALL} -m 644
+INSTALL_PROGRAM = ${INSTALL}
+INSTALL_SCRIPT = ${INSTALL}
+INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
+LDFLAGS = 
+LD_LIBRARY_PATH = /home/jluke/garnome/lib:
+LIBOBJS = 
+LIBS = 
+LIBTOOL = $(SHELL) $(top_builddir)/libtool
+LN_S = ln -s
+LTLIBOBJS = 
+MAINT = 
+MAINTAINER_MODE_FALSE = #
+MAINTAINER_MODE_TRUE = 
+MAKEINFO = ${SHELL} /home/jluke/svn/MonoDevelop/missing --run makeinfo
+MCS = /home/jluke/garnome/bin/mcs
+MONO = /home/jluke/garnome/bin/mono
+MONODOC_CFLAGS =  
+MONODOC_LIBS = /r:browser /r:monodoc -lib:/home/jluke/garnome/lib/monodoc  
+MONO_DEBUGGER_CFLAGS =  
+MONO_DEBUGGER_LIBS =  
+MOZILLA_HOME = /usr/lib/mozilla-1.6
+OBJEXT = o
+PACKAGE = monodevelop
+PACKAGE_BUGREPORT = 
+PACKAGE_NAME = 
+PACKAGE_STRING = 
+PACKAGE_TARNAME = 
+PACKAGE_VERSION = 
+PATH = /home/jluke/garnome/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/java/j2sdk1.4.2_03/bin:/home/jluke/bin:/usr/java/j2sdk1.4.2_03/bin
+PATH_SEPARATOR = :
+PKG_CONFIG = /usr/bin/pkg-config
+RANLIB = ranlib
+SET_MAKE = 
+SHELL = /bin/sh
+STRIP = strip
+VERSION = 0.2
+ac_ct_AR = ar
+ac_ct_CC = gcc
+ac_ct_CXX = g++
+ac_ct_F77 = 
+ac_ct_RANLIB = ranlib
+ac_ct_STRIP = strip
+am__fastdepCC_FALSE = #
+am__fastdepCC_TRUE = 
+am__fastdepCXX_FALSE = #
+am__fastdepCXX_TRUE = 
+am__include = include
+am__leading_dot = .
+am__quote = 
+bindir = ${exec_prefix}/bin
+build = i686-redhat-linux-gnu
+build_alias = 
+build_cpu = i686
+build_os = linux-gnu
+build_vendor = redhat
+datadir = ${prefix}/share
+debugger_prefix = /home/jluke/garnome
+exec_prefix = ${prefix}
+gnome_prefix = /home/jluke/garnome
+gtksharp_prefix = /home/jluke/garnome
+host = i686-redhat-linux-gnu
+host_alias = 
+host_cpu = i686
+host_os = linux-gnu
+host_vendor = redhat
+includedir = ${prefix}/include
+infodir = ${prefix}/info
+install_sh = /home/jluke/svn/MonoDevelop/install-sh
+libdir = ${exec_prefix}/lib
+libexecdir = ${exec_prefix}/libexec
+localstatedir = ${prefix}/var
+mandir = ${prefix}/man
+monodoc_libflags = /r:browser /r:monodoc -lib:/home/jluke/garnome/lib/monodoc  
+oldincludedir = /usr/include
+prefix = /home/jluke/garnome
+program_transform_name = s,x,x,
+sbindir = ${exec_prefix}/sbin
+sharedstatedir = ${prefix}/com
+sysconfdir = ${prefix}/etc
+target = i686-redhat-linux-gnu
+target_alias = 
+target_cpu = i686
+target_os = linux-gnu
+target_vendor = redhat
+
+CSC = mcs /debug
+ASSEMBLY = CsVbRefactory.dll
+
+FILES = ./CsVbRefactory/AssemblyInfo.cs \
+./CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/Expression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/CastExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs \
+./CsVbRefactory/Parser/AST/INode.cs \
+./CsVbRefactory/Parser/AST/AbstractASTVisitor.cs \
+./CsVbRefactory/Parser/AST/Statements/BlockStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ForStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/LockStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/StatementExpression.cs \
+./CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/WhileStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/GotoStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/Statement.cs \
+./CsVbRefactory/Parser/AST/Statements/LabelStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/BreakStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs \
+./CsVbRefactory/Parser/AST/IASTVisitor.cs \
+./CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs \
+./CsVbRefactory/Parser/AST/Enums.cs \
+./CsVbRefactory/Parser/AST/AbstractNode.cs
+
+
+DLLS = /r:System.Drawing
+
+CLEANFILES = $(ASSEMBLY)
+
+EXTRA_DIST = $(FILES)
+
+assemblydir = $(libdir)/monodevelop/bin
+assembly_DATA = $(ASSEMBLY)
+subdir = src/Libraries/CsVbRefactory
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DATA = $(assembly_DATA)
+
+DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu  src/Libraries/CsVbRefactory/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+assemblyDATA_INSTALL = $(INSTALL_DATA)
+install-assemblyDATA: $(assembly_DATA)
+	@$(NORMAL_INSTALL)
+	$(mkinstalldirs) $(DESTDIR)$(assemblydir)
+	@list='$(assembly_DATA)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  f="`echo $$p | sed -e 's|^.*/||'`"; \
+	  echo " $(assemblyDATA_INSTALL) $$d$$p $(DESTDIR)$(assemblydir)/$$f"; \
+	  $(assemblyDATA_INSTALL) $$d$$p $(DESTDIR)$(assemblydir)/$$f; \
+	done
+
+uninstall-assemblyDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(assembly_DATA)'; for p in $$list; do \
+	  f="`echo $$p | sed -e 's|^.*/||'`"; \
+	  echo " rm -f $(DESTDIR)$(assemblydir)/$$f"; \
+	  rm -f $(DESTDIR)$(assemblydir)/$$f; \
+	done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = ../../..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+
+distdir: $(DISTFILES)
+	$(mkinstalldirs) $(distdir)/./CsVbRefactory $(distdir)/./CsVbRefactory/Parser/AST $(distdir)/./CsVbRefactory/Parser/AST/Expressions $(distdir)/./CsVbRefactory/Parser/AST/GlobalScope $(distdir)/./CsVbRefactory/Parser/AST/Statements
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	  else \
+	    test -f $(distdir)/$$file \
+	    || cp -p $$d/$$file $(distdir)/$$file \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+
+installdirs:
+	$(mkinstalldirs) $(DESTDIR)$(assemblydir)
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	  INSTALL_STRIP_FLAG=-s \
+	  `test -z '$(STRIP)' || \
+	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+	-rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-assemblyDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-assemblyDATA uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+	distclean distclean-generic distclean-libtool distdir dvi \
+	dvi-am info info-am install install-am install-assemblyDATA \
+	install-data install-data-am install-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-assemblyDATA uninstall-info-am
+
+
+all: $(ASSEMBLY)
+
+$(ASSEMBLY): $(FILES)
+	$(CSC) $(DLLS) $(FILES) /out:$(ASSEMBLY) /target:library \
+	&& cp $(ASSEMBLY) ../../../build/bin/.
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.am
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.am	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.am	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,61 @@
+
+CSC = mcs /debug
+ASSEMBLY = CsVbRefactory.dll
+
+FILES = ./CsVbRefactory/AssemblyInfo.cs \
+./CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/Expression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/CastExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs \
+./CsVbRefactory/Parser/AST/INode.cs \
+./CsVbRefactory/Parser/AST/AbstractASTVisitor.cs \
+./CsVbRefactory/Parser/AST/Statements/BlockStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ForStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/LockStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/StatementExpression.cs \
+./CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/WhileStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/GotoStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/Statement.cs \
+./CsVbRefactory/Parser/AST/Statements/LabelStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/BreakStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs \
+./CsVbRefactory/Parser/AST/IASTVisitor.cs \
+./CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs \
+./CsVbRefactory/Parser/AST/Enums.cs \
+./CsVbRefactory/Parser/AST/AbstractNode.cs
+
+DLLS = /r:System.Drawing
+
+CLEANFILES = $(ASSEMBLY)
+
+EXTRA_DIST = $(FILES)
+
+assemblydir = $(libdir)/monodevelop/bin
+assembly_DATA = $(ASSEMBLY)
+
+all: $(ASSEMBLY)
+
+$(ASSEMBLY): $(FILES)
+	$(CSC) $(DLLS) $(FILES) /out:$(ASSEMBLY) /target:library \
+	&& cp $(ASSEMBLY) ../../../build/bin/.
+

Added: trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.in
===================================================================
--- trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.in	2004-03-11 22:31:47 UTC (rev 1150)
+++ trunk/MonoDevelop/src/Libraries/CsVbRefactory/Makefile.in	2004-03-12 00:00:51 UTC (rev 1151)
@@ -0,0 +1,393 @@
+# Makefile.in generated by automake 1.7.8 from Makefile.am.
+# @configure_input@
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+ at SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BASE_DEPENDENCIES_CFLAGS = @BASE_DEPENDENCIES_CFLAGS@
+BASE_DEPENDENCIES_LIBS = @BASE_DEPENDENCIES_LIBS@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+GDLDOCK_CFLAGS = @GDLDOCK_CFLAGS@
+GDLDOCK_LIBS = @GDLDOCK_LIBS@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GTKSOURCEVIEW_SHARP = @GTKSOURCEVIEW_SHARP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LD_LIBRARY_PATH = @LD_LIBRARY_PATH@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MCS = @MCS@
+MONO = @MONO@
+MONODOC_CFLAGS = @MONODOC_CFLAGS@
+MONODOC_LIBS = @MONODOC_LIBS@
+MONO_DEBUGGER_CFLAGS = @MONO_DEBUGGER_CFLAGS@
+MONO_DEBUGGER_LIBS = @MONO_DEBUGGER_LIBS@
+MOZILLA_HOME = @MOZILLA_HOME@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH = @PATH@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+RANLIB = @RANLIB@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+debugger_prefix = @debugger_prefix@
+exec_prefix = @exec_prefix@
+gnome_prefix = @gnome_prefix@
+gtksharp_prefix = @gtksharp_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+monodoc_libflags = @monodoc_libflags@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+
+CSC = mcs /debug
+ASSEMBLY = CsVbRefactory.dll
+
+FILES = ./CsVbRefactory/AssemblyInfo.cs \
+./CsVbRefactory/Parser/AST/Expressions/ArrayInitializerExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/TypeReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/BinaryOperatorExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/FieldReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ArrayCreateExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ParenthesizedExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/TypeOfExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/AssignmentExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/PrimitiveExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/InvocationExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/UnaryOperatorExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/Expression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ThisReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/IdentifierExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/BaseReferenceExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/CastExpression.cs \
+./CsVbRefactory/Parser/AST/Expressions/ObjectCreateExpression.cs \
+./CsVbRefactory/Parser/AST/INode.cs \
+./CsVbRefactory/Parser/AST/AbstractASTVisitor.cs \
+./CsVbRefactory/Parser/AST/Statements/BlockStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ForStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/LockStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/StatementExpression.cs \
+./CsVbRefactory/Parser/AST/Statements/DoWhileStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/SwitchStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ThrowStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ForeachStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/IfElseStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/WhileStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/GotoStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/Statement.cs \
+./CsVbRefactory/Parser/AST/Statements/LabelStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/ReturnStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/TryCatchStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/BreakStatement.cs \
+./CsVbRefactory/Parser/AST/Statements/LocalVariableDeclaration.cs \
+./CsVbRefactory/Parser/AST/IASTVisitor.cs \
+./CsVbRefactory/Parser/AST/GlobalScope/TypeReference.cs \
+./CsVbRefactory/Parser/AST/Enums.cs \
+./CsVbRefactory/Parser/AST/AbstractNode.cs
+
+
+DLLS = /r:System.Drawing
+
+CLEANFILES = $(ASSEMBLY)
+
+EXTRA_DIST = $(FILES)
+
+assemblydir = $(libdir)/monodevelop/bin
+assembly_DATA = $(ASSEMBLY)
+subdir = src/Libraries/CsVbRefactory
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DATA = $(assembly_DATA)
+
+DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu  src/Libraries/CsVbRefactory/Makefile
+Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
+	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+assemblyDATA_INSTALL = $(INSTALL_DATA)
+install-assemblyDATA: $(assembly_DATA)
+	@$(NORMAL_INSTALL)
+	$(mkinstalldirs) $(DESTDIR)$(assemblydir)
+	@list='$(assembly_DATA)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  f="`echo $$p | sed -e 's|^.*/||'`"; \
+	  echo " $(assemblyDATA_INSTALL) $$d$$p $(DESTDIR)$(assemblydir)/$$f"; \
+	  $(assemblyDATA_INSTALL) $$d$$p $(DESTDIR)$(assemblydir)/$$f; \
+	done
+
+uninstall-assemblyDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(assembly_DATA)'; for p in $$list; do \
+	  f="`echo $$p | sed -e 's|^.*/||'`"; \
+	  echo " rm -f $(DESTDIR)$(assemblydir)/$$f"; \
+	  rm -f $(DESTDIR)$(assemblydir)/$$f; \
+	done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = ../../..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+
+distdir: $(DISTFILES)
+	$(mkinstalldirs) $(distdir)/./CsVbRefactory $(distdir)/./CsVbRefactory/Parser/AST $(distdir)/./CsVbRefactory/Parser/AST/Expressions $(distdir)/./CsVbRefactory/Parser/AST/GlobalScope $(distdir)/./CsVbRefactory/Parser/AST/Statements
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	  else \
+	    test -f $(distdir)/$$file \
+	    || cp -p $$d/$$file $(distdir)/$$file \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+
+installdirs:
+	$(mkinstalldirs) $(DESTDIR)$(assemblydir)
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	  INSTALL_STRIP_FLAG=-s \
+	  `test -z '$(STRIP)' || \
+	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+	-rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-assemblyDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-assemblyDATA uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+	distclean distclean-generic distclean-libtool distdir dvi \
+	dvi-am info info-am install install-am install-assemblyDATA \
+	install-data install-data-am install-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-generic \
+	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+	uninstall-assemblyDATA uninstall-info-am
+
+
+all: $(ASSEMBLY)
+
+$(ASSEMBLY): $(FILES)
+	$(CSC) $(DLLS) $(FILES) /out:$(ASSEMBLY) /target:library \
+	&& cp $(ASSEMBLY) ../../../build/bin/.
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:




More information about the Monodevelop-patches-list mailing list