#include "compiler/translator/tree_ops/SplitSequenceOperator.h"
#include "compiler/translator/tree_util/IntermNodePatternMatcher.h"
#include "compiler/translator/tree_util/IntermTraverse.h"
namespace sh
{
namespace
{
class SplitSequenceOperatorTraverser : public TLValueTrackingTraverser
{ … };
SplitSequenceOperatorTraverser::SplitSequenceOperatorTraverser(unsigned int patternsToSplitMask,
TSymbolTable *symbolTable)
: … { … }
void SplitSequenceOperatorTraverser::nextIteration()
{ … }
bool SplitSequenceOperatorTraverser::visitAggregate(Visit visit, TIntermAggregate *node)
{ … }
bool SplitSequenceOperatorTraverser::visitUnary(Visit visit, TIntermUnary *node)
{ … }
bool SplitSequenceOperatorTraverser::visitBinary(Visit visit, TIntermBinary *node)
{ … }
bool SplitSequenceOperatorTraverser::visitTernary(Visit visit, TIntermTernary *node)
{ … }
}
bool SplitSequenceOperator(TCompiler *compiler,
TIntermNode *root,
int patternsToSplitMask,
TSymbolTable *symbolTable)
{ … }
}