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

#include <IntermNode.h>

Inheritance diagram for TIntermConstantUnion:
TIntermTyped TIntermNode angle::NonCopyable

Public Member Functions

 TIntermConstantUnion (const TConstantUnion *unionPointer, const TType &type)
 
TIntermTypeddeepCopy () const override
 
bool hasSideEffects () const override
 
const TConstantUniongetUnionArrayPointer () const
 
int getIConst (size_t index) const
 
unsigned int getUConst (size_t index) const
 
float getFConst (size_t index) const
 
bool getBConst (size_t index) const
 
void replaceConstantUnion (const TConstantUnion *safeConstantUnion)
 
TIntermConstantUniongetAsConstantUnion () override
 
void traverse (TIntermTraverser *it) override
 
bool replaceChildNode (TIntermNode *, TIntermNode *) override
 
TConstantUnionfoldBinary (TOperator op, TIntermConstantUnion *rightNode, TDiagnostics *diagnostics, const TSourceLoc &line)
 
const TConstantUnionfoldIndexing (int index)
 
TConstantUnionfoldUnaryNonComponentWise (TOperator op)
 
TConstantUnionfoldUnaryComponentWise (TOperator op, TDiagnostics *diagnostics)
 
- Public Member Functions inherited from TIntermTyped
 TIntermTyped (const TType &t)
 
TIntermTypedgetAsTyped () override
 
void setType (const TType &t)
 
void setTypePreservePrecision (const TType &t)
 
const TTypegetType () const
 
TTypegetTypePointer ()
 
TBasicType getBasicType () const
 
TQualifier getQualifier () const
 
TPrecision getPrecision () const
 
int getCols () const
 
int getRows () const
 
int getNominalSize () const
 
int getSecondarySize () const
 
bool isInterfaceBlock () const
 
bool isMatrix () const
 
bool isArray () const
 
bool isVector () const
 
bool isScalar () const
 
bool isScalarInt () const
 
const char * getBasicString () const
 
TString getCompleteString () const
 
unsigned int getArraySize () const
 
bool isConstructorWithOnlyConstantUnionParameters ()
 
- Public Member Functions inherited from TIntermNode
 POOL_ALLOCATOR_NEW_DELETE ()
 
 TIntermNode ()
 
virtual ~TIntermNode ()
 
const TSourceLocgetLine () const
 
void setLine (const TSourceLoc &l)
 
virtual TIntermFunctionDefinitiongetAsFunctionDefinition ()
 
virtual TIntermAggregategetAsAggregate ()
 
virtual TIntermBlockgetAsBlock ()
 
virtual TIntermSwizzlegetAsSwizzleNode ()
 
virtual TIntermBinarygetAsBinaryNode ()
 
virtual TIntermUnarygetAsUnaryNode ()
 
virtual TIntermTernarygetAsTernaryNode ()
 
virtual TIntermIfElsegetAsIfElseNode ()
 
virtual TIntermSwitchgetAsSwitchNode ()
 
virtual TIntermCasegetAsCaseNode ()
 
virtual TIntermSymbolgetAsSymbolNode ()
 
virtual TIntermLoopgetAsLoopNode ()
 
virtual TIntermRawgetAsRawNode ()
 
virtual TIntermBranchgetAsBranchNode ()
 

Static Public Member Functions

static TConstantUnionFoldAggregateConstructor (TIntermAggregate *aggregate)
 
static TConstantUnionFoldAggregateBuiltIn (TIntermAggregate *aggregate, TDiagnostics *diagnostics)
 
- Static Public Member Functions inherited from TIntermTyped
static TIntermTypedCreateIndexNode (int index)
 
static TIntermTypedCreateZero (const TType &type)
 

Protected Attributes

const TConstantUnionmUnionArrayPointer
 
- Protected Attributes inherited from TIntermTyped
TType mType
 
- Protected Attributes inherited from TIntermNode
TSourceLoc mLine
 

Additional Inherited Members

- Protected Member Functions inherited from TIntermTyped
 TIntermTyped (const TIntermTyped &node)
 

Constructor & Destructor Documentation

◆ TIntermConstantUnion()

TIntermConstantUnion::TIntermConstantUnion ( const TConstantUnion unionPointer,
const TType type 
)
inline

Member Function Documentation

◆ deepCopy()

TIntermTyped* TIntermConstantUnion::deepCopy ( ) const
inlineoverridevirtual

Implements TIntermTyped.

◆ FoldAggregateBuiltIn()

TConstantUnion * TIntermConstantUnion::FoldAggregateBuiltIn ( TIntermAggregate aggregate,
TDiagnostics diagnostics 
)
static

◆ FoldAggregateConstructor()

TConstantUnion * TIntermConstantUnion::FoldAggregateConstructor ( TIntermAggregate aggregate)
static

◆ foldBinary()

TConstantUnion * TIntermConstantUnion::foldBinary ( TOperator  op,
TIntermConstantUnion rightNode,
TDiagnostics diagnostics,
const TSourceLoc line 
)

◆ foldIndexing()

const TConstantUnion * TIntermConstantUnion::foldIndexing ( int  index)

◆ foldUnaryComponentWise()

TConstantUnion * TIntermConstantUnion::foldUnaryComponentWise ( TOperator  op,
TDiagnostics diagnostics 
)

◆ foldUnaryNonComponentWise()

TConstantUnion * TIntermConstantUnion::foldUnaryNonComponentWise ( TOperator  op)

◆ getAsConstantUnion()

TIntermConstantUnion* TIntermConstantUnion::getAsConstantUnion ( )
inlineoverridevirtual

Reimplemented from TIntermNode.

◆ getBConst()

bool TIntermConstantUnion::getBConst ( size_t  index) const
inline

◆ getFConst()

float TIntermConstantUnion::getFConst ( size_t  index) const
inline

◆ getIConst()

int TIntermConstantUnion::getIConst ( size_t  index) const
inline

◆ getUConst()

unsigned int TIntermConstantUnion::getUConst ( size_t  index) const
inline

◆ getUnionArrayPointer()

const TConstantUnion* TIntermConstantUnion::getUnionArrayPointer ( ) const
inline

◆ hasSideEffects()

bool TIntermConstantUnion::hasSideEffects ( ) const
inlineoverridevirtual

Implements TIntermTyped.

◆ replaceChildNode()

bool TIntermConstantUnion::replaceChildNode ( TIntermNode ,
TIntermNode  
)
inlineoverridevirtual

Implements TIntermNode.

◆ replaceConstantUnion()

void TIntermConstantUnion::replaceConstantUnion ( const TConstantUnion safeConstantUnion)
inline

◆ traverse()

void TIntermConstantUnion::traverse ( TIntermTraverser it)
overridevirtual

Implements TIntermNode.

Member Data Documentation

◆ mUnionArrayPointer

const TConstantUnion* TIntermConstantUnion::mUnionArrayPointer
protected

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