public object VisitCompilationUnit(CompilationUnit compilationUnit, object data)
		{
			module = new B.Module();
			module.LexicalInfo = new B.LexicalInfo(fileName, 1, 1);
			compilationUnit.AcceptChildren(this, data);
			if (entryPointMethod != null) {
				bool allMembersAreStatic = true;
				foreach (B.TypeMember member in entryPointMethod.DeclaringType.Members) {
					allMembersAreStatic &= member.IsStatic;
				}
				if (allMembersAreStatic) {
					entryPointMethod.DeclaringType.Attributes.Add(MakeAttribute(("module")));
				} else {
					lastLexicalInfo = entryPointMethod.LexicalInfo;
					B.Expression expr = MakeReferenceExpression(entryPointMethod.DeclaringType.Name + ".Main");
					B.MethodInvocationExpression mie = new B.MethodInvocationExpression(lastLexicalInfo, expr);
					if (entryPointMethod.Parameters.Count > 0) {
						mie.Arguments.Add(MakeReferenceExpression("argv"));
					}
					B.SimpleTypeReference ret = entryPointMethod.ReturnType as B.SimpleTypeReference;
					if (ret.Name == "void" || ret.Name == "System.Void")
						module.Globals.Add(new B.ExpressionStatement(mie));
					else
						module.Globals.Add(new B.ReturnStatement(lastLexicalInfo, mie, null));
				}
			}
			B.Module tmp = module;
			module = null;
			return tmp;
		}
 public override object VisitCompilationUnit(AST.CompilationUnit compilationUnit, object data)
 {
     if (compilationUnit == null)
     {
         return(null);
     }
     compilationUnit.AcceptChildren(this, data);
     return(cu);
 }
        public override object VisitCompilationUnit(CompilationUnit compilationUnit, object data)
        {
            Contract.Requires(compilationUnit != null);

            // Visit children (E.g. TypeDcelarion objects)
            compilationUnit.AcceptChildren(this, data);

            return null;
        }
        public override object VisitCompilationUnit(CompilationUnit compilationUnit, object data)
        {
            Contract.Requires(compilationUnit != null);

            DictClass = new Dictionary<string, ClassStructure>();
            // Visit children (E.g. TypeDcelarion objects)
            compilationUnit.AcceptChildren(this, data);

            return null;
        }
 public override object VisitCompilationUnit(AST.CompilationUnit compilationUnit, object data)
 {
     if (compilationUnit == null)
     {
         return(null);
     }
     currentNamespace = new DefaultUsingScope();
     if (!string.IsNullOrEmpty(VBRootNamespace))
     {
         foreach (string name in VBRootNamespace.Split('.'))
         {
             currentNamespace = new DefaultUsingScope();
             currentNamespace.NamespaceName = PrependCurrentNamespace(name);
             currentNamespace.Parent        = currentNamespace;
             currentNamespace.Parent.ChildScopes.Add(currentNamespace);
         }
     }
     cu.UsingScope = currentNamespace;
     compilationUnit.AcceptChildren(this, data);
     return(cu);
 }
 public override object TrackedVisitCompilationUnit(CompilationUnit compilationUnit, object data)
 {
     compilationUnit.AcceptChildren(this, data);
     return null;
 }
 public override object VisitCompilationUnit(CompilationUnit compilationUnit, object data)
 {
     if (compilationUnit == null) {
         throw new ArgumentNullException("compilationUnit");
     }
     CodeNamespace globalNamespace = new CodeNamespace("Global");
     //namespaces.Add(globalNamespace);
     namespaceDeclarations.Push(globalNamespace);
     compilationUnit.AcceptChildren(this, data);
     codeCompileUnit.Namespaces.Add(globalNamespace);
     return globalNamespace;
 }
		public override object TrackedVisitCompilationUnit(CompilationUnit compilationUnit, object data)
		{
			// Visit the child items of the compilation unit.
			compilationUnit.AcceptChildren(this, data);
			return null;
		}
 public virtual object VisitCompilationUnit(CompilationUnit compilationUnit, object data)
 {
     Debug.Assert((compilationUnit != null));
     return compilationUnit.AcceptChildren(this, data);
 }
 public virtual bool VisitCompilationUnit(CompilationUnit compilationUnit, object d)
 {
     if ((compilationUnit == null)) {
         return SetFailure();
     }
     if ((d == null)) {
         return SetFailure();
     }
     if(compilationUnit.GetType() != d.GetType()) {return SetFailure();}
     var data = (CompilationUnit)d;
     if (!IsMatch(compilationUnit, data)) {
         return SetFailure();
     }
     return compilationUnit.AcceptChildren(this, d);
 }
 public override object VisitCompilationUnit (CompilationUnit node, object data)
 {
     node.AcceptChildren (this, null);
     return null;
 }