Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
GLSL::ArrayTypeAST Class Reference

#include <glslast_p.h>

+ Inheritance diagram for GLSL::ArrayTypeAST:
+ Collaboration diagram for GLSL::ArrayTypeAST:

Public Member Functions

 ArrayTypeAST (TypeAST *_elementType)
 
 ArrayTypeAST (TypeAST *_elementType, ExpressionAST *_size)
 
ArrayTypeASTasArrayType () override
 
void accept0 (Visitor *visitor) override
 
Precision precision () const override
 
bool setPrecision (Precision precision) override
 
- Public Member Functions inherited from GLSL::TypeAST
TypeASTasType () override
 
- Public Member Functions inherited from GLSL::AST
virtual TranslationUnitASTasTranslationUnit ()
 
virtual ExpressionASTasExpression ()
 
virtual IdentifierExpressionASTasIdentifierExpression ()
 
virtual LiteralExpressionASTasLiteralExpression ()
 
virtual BinaryExpressionASTasBinaryExpression ()
 
virtual UnaryExpressionASTasUnaryExpression ()
 
virtual TernaryExpressionASTasTernaryExpression ()
 
virtual AssignmentExpressionASTasAssignmentExpression ()
 
virtual MemberAccessExpressionASTasMemberAccessExpression ()
 
virtual FunctionCallExpressionASTasFunctionCallExpression ()
 
virtual FunctionIdentifierASTasFunctionIdentifier ()
 
virtual DeclarationExpressionASTasDeclarationExpression ()
 
virtual StatementASTasStatement ()
 
virtual ExpressionStatementASTasExpressionStatement ()
 
virtual CompoundStatementASTasCompoundStatement ()
 
virtual IfStatementASTasIfStatement ()
 
virtual WhileStatementASTasWhileStatement ()
 
virtual DoStatementASTasDoStatement ()
 
virtual ForStatementASTasForStatement ()
 
virtual JumpStatementASTasJumpStatement ()
 
virtual ReturnStatementASTasReturnStatement ()
 
virtual SwitchStatementASTasSwitchStatement ()
 
virtual CaseLabelStatementASTasCaseLabelStatement ()
 
virtual DeclarationStatementASTasDeclarationStatement ()
 
virtual BasicTypeASTasBasicType ()
 
virtual NamedTypeASTasNamedType ()
 
virtual StructTypeASTasStructType ()
 
virtual QualifiedTypeASTasQualifiedType ()
 
virtual LayoutQualifierASTasLayoutQualifier ()
 
virtual DeclarationASTasDeclaration ()
 
virtual PrecisionDeclarationASTasPrecisionDeclaration ()
 
virtual ParameterDeclarationASTasParameterDeclaration ()
 
virtual VariableDeclarationASTasVariableDeclaration ()
 
virtual TypeDeclarationASTasTypeDeclaration ()
 
virtual TypeAndVariableDeclarationASTasTypeAndVariableDeclaration ()
 
virtual InvariantDeclarationASTasInvariantDeclaration ()
 
virtual InitDeclarationASTasInitDeclaration ()
 
virtual FunctionDeclarationASTasFunctionDeclaration ()
 
void accept (Visitor *visitor)
 
- Public Member Functions inherited from GLSL::Managed
 Managed ()
 
virtual ~Managed ()
 
voidoperator new (size_t size, MemoryPool *pool)
 
void operator delete (void *)
 
void operator delete (void *, MemoryPool *)
 

Public Attributes

TypeASTelementType
 
ExpressionASTsize
 
- Public Attributes inherited from GLSL::AST
int kind
 
int lineno
 

Additional Inherited Members

- Public Types inherited from GLSL::TypeAST
enum  Precision {
  PrecNotValid , PrecUnspecified , Lowp , Mediump ,
  Highp
}
 
- Public Types inherited from GLSL::AST
enum  Kind {
  Kind_Undefined , Kind_TranslationUnit , Kind_Identifier , Kind_Literal ,
  Kind_PreIncrement , Kind_PostIncrement , Kind_PreDecrement , Kind_PostDecrement ,
  Kind_UnaryPlus , Kind_UnaryMinus , Kind_LogicalNot , Kind_BitwiseNot ,
  Kind_Plus , Kind_Minus , Kind_Multiply , Kind_Divide ,
  Kind_Modulus , Kind_ShiftLeft , Kind_ShiftRight , Kind_Equal ,
  Kind_NotEqual , Kind_LessThan , Kind_LessEqual , Kind_GreaterThan ,
  Kind_GreaterEqual , Kind_LogicalAnd , Kind_LogicalOr , Kind_LogicalXor ,
  Kind_BitwiseAnd , Kind_BitwiseOr , Kind_BitwiseXor , Kind_Comma ,
  Kind_ArrayAccess , Kind_Conditional , Kind_MemberAccess , Kind_FunctionCall ,
  Kind_MemberFunctionCall , Kind_FunctionIdentifier , Kind_DeclarationExpression , Kind_Assign ,
  Kind_AssignPlus , Kind_AssignMinus , Kind_AssignMultiply , Kind_AssignDivide ,
  Kind_AssignModulus , Kind_AssignShiftLeft , Kind_AssignShiftRight , Kind_AssignAnd ,
  Kind_AssignOr , Kind_AssignXor , Kind_ExpressionStatement , Kind_CompoundStatement ,
  Kind_If , Kind_While , Kind_Do , Kind_For ,
  Kind_Break , Kind_Continue , Kind_Discard , Kind_Return ,
  Kind_ReturnExpression , Kind_Switch , Kind_CaseLabel , Kind_DefaultLabel ,
  Kind_DeclarationStatement , Kind_BasicType , Kind_NamedType , Kind_ArrayType ,
  Kind_OpenArrayType , Kind_StructType , Kind_AnonymousStructType , Kind_StructField ,
  Kind_LayoutQualifier , Kind_QualifiedType , Kind_PrecisionDeclaration , Kind_ParameterDeclaration ,
  Kind_VariableDeclaration , Kind_TypeDeclaration , Kind_TypeAndVariableDeclaration , Kind_InvariantDeclaration ,
  Kind_InitDeclaration , Kind_FunctionDeclaration
}
 
- Static Public Member Functions inherited from GLSL::AST
static void accept (AST *ast, Visitor *visitor)
 
template<typename T >
static void accept (List< T > *it, Visitor *visitor)
 
- Protected Member Functions inherited from GLSL::TypeAST
 TypeAST (Kind _kind)
 
- Protected Member Functions inherited from GLSL::AST
 AST (Kind _kind)
 
 ~AST () override
 
- Static Protected Member Functions inherited from GLSL::AST
template<typename T >
static List< T > * finish (List< T > *list)
 

Detailed Description

Definition at line 711 of file glslast_p.h.

Constructor & Destructor Documentation

◆ ArrayTypeAST() [1/2]

GLSL::ArrayTypeAST::ArrayTypeAST ( TypeAST * _elementType)
inline

Definition at line 714 of file glslast_p.h.

◆ ArrayTypeAST() [2/2]

GLSL::ArrayTypeAST::ArrayTypeAST ( TypeAST * _elementType,
ExpressionAST * _size )
inline

Definition at line 716 of file glslast_p.h.

Member Function Documentation

◆ accept0()

void ArrayTypeAST::accept0 ( Visitor * visitor)
overridevirtual

Implements GLSL::AST.

Definition at line 254 of file glslast.cpp.

References GLSL::AST::accept(), elementType, GLSL::Visitor::endVisit(), and GLSL::Visitor::visit().

+ Here is the call graph for this function:

◆ asArrayType()

ArrayTypeAST * GLSL::ArrayTypeAST::asArrayType ( )
inlineoverridevirtual

Reimplemented from GLSL::AST.

Definition at line 719 of file glslast_p.h.

Referenced by GLSL::StructTypeAST::Field::setInnerType().

+ Here is the caller graph for this function:

◆ precision()

TypeAST::Precision ArrayTypeAST::precision ( ) const
overridevirtual

Implements GLSL::TypeAST.

Definition at line 263 of file glslast.cpp.

References elementType, GLSL::TypeAST::precision(), and GLSL::TypeAST::PrecNotValid.

+ Here is the call graph for this function:

◆ setPrecision()

bool ArrayTypeAST::setPrecision ( Precision precision)
overridevirtual

Implements GLSL::TypeAST.

Definition at line 268 of file glslast.cpp.

References elementType, and GLSL::TypeAST::setPrecision().

+ Here is the call graph for this function:

Member Data Documentation

◆ elementType

TypeAST* GLSL::ArrayTypeAST::elementType

Definition at line 727 of file glslast_p.h.

Referenced by accept0(), precision(), setPrecision(), and GLSL::Semantic::visit().

◆ size

ExpressionAST* GLSL::ArrayTypeAST::size

Definition at line 728 of file glslast_p.h.

Referenced by GLSL::Semantic::visit().


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