webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Public Member Functions | Static Public Member Functions | List of all members
TIntermediate Class Reference

#include <Intermediate.h>

Public Member Functions

 POOL_ALLOCATOR_NEW_DELETE ()
 
 TIntermediate ()
 
TIntermSymboladdSymbol (int id, const TString &, const TType &, const TSourceLoc &)
 
TIntermTypedaddIndex (TOperator op, TIntermTyped *base, TIntermTyped *index, const TSourceLoc &line, TDiagnostics *diagnostics)
 
TIntermTypedaddUnaryMath (TOperator op, TIntermTyped *child, const TSourceLoc &line, const TType *funcReturnType)
 
TIntermAggregategrowAggregate (TIntermNode *left, TIntermNode *right, const TSourceLoc &)
 
TIntermAggregatesetAggregateOperator (TIntermNode *, TOperator, const TSourceLoc &)
 
TIntermNodeaddIfElse (TIntermTyped *cond, TIntermNodePair code, const TSourceLoc &line)
 
TIntermSwitchaddSwitch (TIntermTyped *init, TIntermBlock *statementList, const TSourceLoc &line)
 
TIntermCaseaddCase (TIntermTyped *condition, const TSourceLoc &line)
 
TIntermConstantUnionaddConstantUnion (const TConstantUnion *constantUnion, const TType &type, const TSourceLoc &line)
 
TIntermNodeaddLoop (TLoopType, TIntermNode *, TIntermTyped *, TIntermTyped *, TIntermNode *, const TSourceLoc &)
 
TIntermBranchaddBranch (TOperator, const TSourceLoc &)
 
TIntermBranchaddBranch (TOperator, TIntermTyped *, const TSourceLoc &)
 
TIntermTypedfoldAggregateBuiltIn (TIntermAggregate *aggregate, TDiagnostics *diagnostics)
 

Static Public Member Functions

static TIntermAggregateMakeAggregate (TIntermNode *node, const TSourceLoc &line)
 
static TIntermBlockEnsureBlock (TIntermNode *node)
 
static TIntermTypedAddTernarySelection (TIntermTyped *cond, TIntermTyped *trueExpression, TIntermTyped *falseExpression, const TSourceLoc &line)
 
static TIntermTypedAddComma (TIntermTyped *left, TIntermTyped *right, const TSourceLoc &line, int shaderVersion)
 
static TIntermTypedAddSwizzle (TIntermTyped *baseExpression, const TVectorFields &fields, const TSourceLoc &dotLocation)
 
static void outputTree (TIntermNode *, TInfoSinkBase &)
 

Constructor & Destructor Documentation

◆ TIntermediate()

TIntermediate::TIntermediate ( )
inline

Member Function Documentation

◆ addBranch() [1/2]

TIntermBranch * TIntermediate::addBranch ( TOperator  branchOp,
const TSourceLoc line 
)

◆ addBranch() [2/2]

TIntermBranch * TIntermediate::addBranch ( TOperator  branchOp,
TIntermTyped expression,
const TSourceLoc line 
)

◆ addCase()

TIntermCase * TIntermediate::addCase ( TIntermTyped condition,
const TSourceLoc line 
)

◆ AddComma()

TIntermTyped * TIntermediate::AddComma ( TIntermTyped left,
TIntermTyped right,
const TSourceLoc line,
int  shaderVersion 
)
static

◆ addConstantUnion()

TIntermConstantUnion * TIntermediate::addConstantUnion ( const TConstantUnion constantUnion,
const TType type,
const TSourceLoc line 
)

◆ addIfElse()

TIntermNode * TIntermediate::addIfElse ( TIntermTyped cond,
TIntermNodePair  code,
const TSourceLoc line 
)

◆ addIndex()

TIntermTyped * TIntermediate::addIndex ( TOperator  op,
TIntermTyped base,
TIntermTyped index,
const TSourceLoc line,
TDiagnostics diagnostics 
)

◆ addLoop()

TIntermNode * TIntermediate::addLoop ( TLoopType  type,
TIntermNode init,
TIntermTyped cond,
TIntermTyped expr,
TIntermNode body,
const TSourceLoc line 
)

◆ addSwitch()

TIntermSwitch * TIntermediate::addSwitch ( TIntermTyped init,
TIntermBlock statementList,
const TSourceLoc line 
)

◆ AddSwizzle()

TIntermTyped * TIntermediate::AddSwizzle ( TIntermTyped baseExpression,
const TVectorFields fields,
const TSourceLoc dotLocation 
)
static

◆ addSymbol()

TIntermSymbol * TIntermediate::addSymbol ( int  id,
const TString name,
const TType type,
const TSourceLoc line 
)

◆ AddTernarySelection()

TIntermTyped * TIntermediate::AddTernarySelection ( TIntermTyped cond,
TIntermTyped trueExpression,
TIntermTyped falseExpression,
const TSourceLoc line 
)
static

◆ addUnaryMath()

TIntermTyped* TIntermediate::addUnaryMath ( TOperator  op,
TIntermTyped child,
const TSourceLoc line,
const TType funcReturnType 
)

◆ EnsureBlock()

TIntermBlock * TIntermediate::EnsureBlock ( TIntermNode node)
static

◆ foldAggregateBuiltIn()

TIntermTyped * TIntermediate::foldAggregateBuiltIn ( TIntermAggregate aggregate,
TDiagnostics diagnostics 
)

◆ growAggregate()

TIntermAggregate * TIntermediate::growAggregate ( TIntermNode left,
TIntermNode right,
const TSourceLoc line 
)

◆ MakeAggregate()

TIntermAggregate * TIntermediate::MakeAggregate ( TIntermNode node,
const TSourceLoc line 
)
static

◆ outputTree()

void TIntermediate::outputTree ( TIntermNode root,
TInfoSinkBase infoSink 
)
static

◆ POOL_ALLOCATOR_NEW_DELETE()

TIntermediate::POOL_ALLOCATOR_NEW_DELETE ( )

◆ setAggregateOperator()

TIntermAggregate * TIntermediate::setAggregateOperator ( TIntermNode node,
TOperator  op,
const TSourceLoc line 
)

The documentation for this class was generated from the following files: