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
qqmljsast_p.h File Reference

(5230151276041b16521122d6a55f5bc45780cdf2)

#include "qqmljsastvisitor_p.h"
#include "qqmljsglobal_p.h"
#include <private/qqmljsmemorypool_p.h>
#include <QtCore/qtaggedpointer.h>
#include <QtCore/qversionnumber.h>
#include <type_traits>
+ Include dependency graph for qqmljsast_p.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  QQmlJS::AST::Node
 
class  QQmlJS::AST::UiQualifiedId
 
class  QQmlJS::AST::Type
 
class  QQmlJS::AST::TypeAnnotation
 
class  QQmlJS::AST::ExpressionNode
 
class  QQmlJS::AST::LeftHandSideExpression
 
class  QQmlJS::AST::Statement
 
class  QQmlJS::AST::NestedExpression
 
class  QQmlJS::AST::TypeExpression
 
class  QQmlJS::AST::ThisExpression
 
class  QQmlJS::AST::IdentifierExpression
 
class  QQmlJS::AST::NullExpression
 
class  QQmlJS::AST::TrueLiteral
 
class  QQmlJS::AST::FalseLiteral
 
class  QQmlJS::AST::SuperLiteral
 
class  QQmlJS::AST::NumericLiteral
 
class  QQmlJS::AST::UiVersionSpecifier
 
class  QQmlJS::AST::StringLiteral
 
class  QQmlJS::AST::TemplateLiteral
 
class  QQmlJS::AST::RegExpLiteral
 
class  QQmlJS::AST::Pattern
 
class  QQmlJS::AST::ArrayPattern
 
class  QQmlJS::AST::ObjectPattern
 
class  QQmlJS::AST::Elision
 
class  QQmlJS::AST::PropertyName
 
struct  QQmlJS::AST::BoundName
 
struct  QQmlJS::AST::BoundNames
 
class  QQmlJS::AST::InitializerExpression
 
class  QQmlJS::AST::PatternElement
 
class  QQmlJS::AST::PatternElementList
 
class  QQmlJS::AST::PatternProperty
 
class  QQmlJS::AST::PatternPropertyList
 
class  QQmlJS::AST::IdentifierPropertyName
 
class  QQmlJS::AST::StringLiteralPropertyName
 
class  QQmlJS::AST::NumericLiteralPropertyName
 
class  QQmlJS::AST::ComputedPropertyName
 
class  QQmlJS::AST::ArrayMemberExpression
 
class  QQmlJS::AST::FieldMemberExpression
 
class  QQmlJS::AST::TaggedTemplate
 
class  QQmlJS::AST::NewMemberExpression
 
class  QQmlJS::AST::NewExpression
 
class  QQmlJS::AST::CallExpression
 
class  QQmlJS::AST::ArgumentList
 
class  QQmlJS::AST::PostIncrementExpression
 
class  QQmlJS::AST::PostDecrementExpression
 
class  QQmlJS::AST::DeleteExpression
 
class  QQmlJS::AST::VoidExpression
 
class  QQmlJS::AST::TypeOfExpression
 
class  QQmlJS::AST::PreIncrementExpression
 
class  QQmlJS::AST::PreDecrementExpression
 
class  QQmlJS::AST::UnaryPlusExpression
 
class  QQmlJS::AST::UnaryMinusExpression
 
class  QQmlJS::AST::TildeExpression
 
class  QQmlJS::AST::NotExpression
 
class  QQmlJS::AST::BinaryExpression
 
class  QQmlJS::AST::ConditionalExpression
 
class  QQmlJS::AST::Expression
 
class  QQmlJS::AST::Block
 
class  QQmlJS::AST::StatementList
 
class  QQmlJS::AST::VariableDeclarationList
 
class  QQmlJS::AST::VariableStatement
 
class  QQmlJS::AST::EmptyStatement
 
class  QQmlJS::AST::ExpressionStatement
 
class  QQmlJS::AST::IfStatement
 
class  QQmlJS::AST::DoWhileStatement
 
class  QQmlJS::AST::WhileStatement
 
class  QQmlJS::AST::ForStatement
 
class  QQmlJS::AST::ForEachStatement
 
class  QQmlJS::AST::ContinueStatement
 
class  QQmlJS::AST::BreakStatement
 
class  QQmlJS::AST::ReturnStatement
 
class  QQmlJS::AST::YieldExpression
 
class  QQmlJS::AST::WithStatement
 
class  QQmlJS::AST::CaseBlock
 
class  QQmlJS::AST::SwitchStatement
 
class  QQmlJS::AST::CaseClause
 
class  QQmlJS::AST::CaseClauses
 
class  QQmlJS::AST::DefaultClause
 
class  QQmlJS::AST::LabelledStatement
 
class  QQmlJS::AST::ThrowStatement
 
class  QQmlJS::AST::Catch
 
class  QQmlJS::AST::Finally
 
class  QQmlJS::AST::TryStatement
 
class  QQmlJS::AST::FunctionExpression
 
class  QQmlJS::AST::FunctionDeclaration
 
class  QQmlJS::AST::FormalParameterList
 
class  QQmlJS::AST::ClassExpression
 
class  QQmlJS::AST::ClassDeclaration
 
class  QQmlJS::AST::ClassElementList
 
class  QQmlJS::AST::Program
 
class  QQmlJS::AST::ImportSpecifier
 
class  QQmlJS::AST::ImportsList
 
class  QQmlJS::AST::NamedImports
 
class  QQmlJS::AST::NameSpaceImport
 
class  QQmlJS::AST::ImportClause
 
class  QQmlJS::AST::FromClause
 
class  QQmlJS::AST::ImportDeclaration
 
class  QQmlJS::AST::ExportSpecifier
 
class  QQmlJS::AST::ExportsList
 
class  QQmlJS::AST::ExportClause
 
class  QQmlJS::AST::ExportDeclaration
 
class  QQmlJS::AST::ESModule
 
class  QQmlJS::AST::DebuggerStatement
 
class  QQmlJS::AST::UiImport
 
class  QQmlJS::AST::UiObjectMember
 
class  QQmlJS::AST::UiObjectMemberList
 
class  QQmlJS::AST::UiPragmaValueList
 
class  QQmlJS::AST::UiPragma
 
class  QQmlJS::AST::UiRequired
 
class  QQmlJS::AST::UiHeaderItemList
 
class  QQmlJS::AST::UiProgram
 
class  QQmlJS::AST::UiArrayMemberList
 
class  QQmlJS::AST::UiObjectInitializer
 
class  QQmlJS::AST::UiParameterList
 
class  QQmlJS::AST::UiPropertyAttributes
 
class  QQmlJS::AST::UiPublicMember
 
class  QQmlJS::AST::UiObjectDefinition
 
class  QQmlJS::AST::UiInlineComponent
 
class  QQmlJS::AST::UiSourceElement
 
class  QQmlJS::AST::UiObjectBinding
 
class  QQmlJS::AST::UiScriptBinding
 
class  QQmlJS::AST::UiArrayBinding
 
class  QQmlJS::AST::UiEnumMemberList
 
class  QQmlJS::AST::UiEnumDeclaration
 
class  QQmlJS::AST::UiAnnotation
 
class  QQmlJS::AST::UiAnnotationList
 

Namespaces

namespace  QQmlJS
 
namespace  QSOperator
 
namespace  QQmlJS::AST
 

Macros

#define QQMLJS_DECLARE_AST_NODE(name)    enum { K = Kind_##name };
 

Enumerations

enum  QSOperator::Op {
  QSOperator::Add , QSOperator::And , QSOperator::InplaceAnd , QSOperator::Assign ,
  QSOperator::BitAnd , QSOperator::BitOr , QSOperator::BitXor , QSOperator::InplaceSub ,
  QSOperator::Div , QSOperator::InplaceDiv , QSOperator::Equal , QSOperator::Exp ,
  QSOperator::InplaceExp , QSOperator::Ge , QSOperator::Gt , QSOperator::In ,
  QSOperator::InplaceAdd , QSOperator::InstanceOf , QSOperator::Le , QSOperator::LShift ,
  QSOperator::InplaceLeftShift , QSOperator::Lt , QSOperator::Mod , QSOperator::InplaceMod ,
  QSOperator::Mul , QSOperator::InplaceMul , QSOperator::NotEqual , QSOperator::Or ,
  QSOperator::InplaceOr , QSOperator::RShift , QSOperator::InplaceRightShift , QSOperator::StrictEqual ,
  QSOperator::StrictNotEqual , QSOperator::Sub , QSOperator::URShift , QSOperator::InplaceURightShift ,
  QSOperator::InplaceXor , QSOperator::As , QSOperator::Coalesce , QSOperator::Invalid
}
 
enum class  QQmlJS::AST::VariableScope { QQmlJS::AST::NoScope , QQmlJS::AST::Var , QQmlJS::AST::Let , QQmlJS::AST::Const }
 
enum class  QQmlJS::AST::ForEachType { QQmlJS::AST::In , QQmlJS::AST::Of }
 

Functions

template<typename T1 , typename T2 >
T1 QQmlJS::AST::cast (T2 *ast)
 
FunctionExpressionQQmlJS::AST::asAnonymousFunctionDefinition (Node *n)
 
ClassExpressionQQmlJS::AST::asAnonymousClassDefinition (Node *n)
 
template<typename T >
QQmlJS::AST::lastListElement (T head)
 

Macro Definition Documentation

◆ QQMLJS_DECLARE_AST_NODE

#define QQMLJS_DECLARE_AST_NODE ( name)     enum { K = Kind_##name };

Definition at line 36 of file qqmljsast_p.h.