public void BeginScope()
 {
     NameScope scope = new NameScope();
     this.nameStack.Push(scope);
 }
        public OsloCodeGeneratorPrintProcessor(OsloCodeGeneratorInfo rootCodeGenerator, OsloCodeGeneratorInfo codeGenerator)
        {
            this.rootCodeGenerator = rootCodeGenerator;
            this.codeGenerator = codeGenerator;
            this.CodePrinter = this.rootCodeGenerator.CodePrinter;
            if (this.codeGenerator != null && this.codeGenerator.FileName != null)
            {
                this.fileName = Path.GetFileName(this.codeGenerator.FileName);
            }

            this.loopStack = new Stack<LoopScope>();
            this.nameStack = new Stack<NameScope>();
            this.functionNames = new NameScope();

            this.functionCounter = 0;
        }