/// <summary>
 /// Visits the specified namespace block.
 /// </summary>
 /// <param name="namespaceBlock">The namespace block.</param>
 public override void Visit(NamespaceBlock namespaceBlock)
 {
     WriteLinkLine(namespaceBlock);
     Write("namespace ").Write(namespaceBlock.Name);
     OpenBrace();
     foreach (Node node in namespaceBlock.Body)
     {
         VisitDynamic(node);
     }
     CloseBrace();
 }
 private void FixShaderClassTypeWithNoNameSpace()
 {
     for (int i = 0; i < shader.Declarations.Count; i++)
     {
         var node = shader.Declarations[i];
         if (node is ShaderClassType)
         {
             var nameSpaceBlock = new NamespaceBlock(DefaultNameSpace);
             nameSpaceBlock.Body.Add(node);
             shader.Declarations[i] = nameSpaceBlock;
         }
     }
 }