#include "compiler/translator/SymbolTable.h"
#include "compiler/translator/tree_util/IntermTraverse.h"
namespace sh
{
namespace
{
void OutputFunction(TInfoSinkBase &out, const char *str, const TFunction *func)
{ … }
class TOutputTraverser : public TIntermTraverser
{ … };
void OutputTreeText(TInfoSinkBase &out, TIntermNode *node, const int depth)
{ … }
void TOutputTraverser::visitSymbol(TIntermSymbol *node)
{ … }
bool TOutputTraverser::visitSwizzle(Visit visit, TIntermSwizzle *node)
{ … }
bool TOutputTraverser::visitBinary(Visit visit, TIntermBinary *node)
{ … }
bool TOutputTraverser::visitUnary(Visit visit, TIntermUnary *node)
{ … }
bool TOutputTraverser::visitFunctionDefinition(Visit visit, TIntermFunctionDefinition *node)
{ … }
bool TOutputTraverser::visitGlobalQualifierDeclaration(Visit visit,
TIntermGlobalQualifierDeclaration *node)
{ … }
void TOutputTraverser::visitFunctionPrototype(TIntermFunctionPrototype *node)
{ … }
bool TOutputTraverser::visitAggregate(Visit visit, TIntermAggregate *node)
{ … }
bool TOutputTraverser::visitBlock(Visit visit, TIntermBlock *node)
{ … }
bool TOutputTraverser::visitDeclaration(Visit visit, TIntermDeclaration *node)
{ … }
bool TOutputTraverser::visitTernary(Visit visit, TIntermTernary *node)
{ … }
bool TOutputTraverser::visitIfElse(Visit visit, TIntermIfElse *node)
{ … }
bool TOutputTraverser::visitSwitch(Visit visit, TIntermSwitch *node)
{ … }
bool TOutputTraverser::visitCase(Visit visit, TIntermCase *node)
{ … }
void TOutputTraverser::visitConstantUnion(TIntermConstantUnion *node)
{ … }
bool TOutputTraverser::visitLoop(Visit visit, TIntermLoop *node)
{ … }
bool TOutputTraverser::visitBranch(Visit visit, TIntermBranch *node)
{ … }
}
void OutputTree(TIntermNode *root, TInfoSinkBase &out)
{ … }
}