v8  3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
AstNode Class Referenceabstract

#include <ast.h>

Inheritance diagram for AstNode:
Collaboration diagram for AstNode:

Public Types

enum  Type { kInvalid = -1 }
 

Public Member Functions

void * operator new (size_t size, Zone *zone)
 
 AstNode ()
 
virtual ~AstNode ()
 
virtual void Accept (AstVisitor *v)=0
 
virtual Type node_type () const
 
virtual DeclarationAsDeclaration ()
 
virtual StatementAsStatement ()
 
virtual ExpressionAsExpression ()
 
virtual TargetCollectorAsTargetCollector ()
 
virtual BreakableStatementAsBreakableStatement ()
 
virtual IterationStatementAsIterationStatement ()
 
virtual MaterializedLiteralAsMaterializedLiteral ()
 
- Public Member Functions inherited from ZoneObject
 INLINE (void *operator new(size_t size, Zone *zone))
 
void operator delete (void *, size_t)
 
void operator delete (void *pointer, Zone *zone)
 

Static Public Attributes

static const int kNoNumber = -1
 
static const int kFunctionEntryId = 2
 
static const int kDeclarationsId = 3
 

Static Protected Member Functions

static int GetNextId (Isolate *isolate)
 
static int ReserveIdRange (Isolate *isolate, int n)
 

Friends

class CaseClause
 

Detailed Description

Definition at line 188 of file ast.h.

Member Enumeration Documentation

enum Type
Enumerator
kInvalid 

Definition at line 191 of file ast.h.

Constructor & Destructor Documentation

AstNode ( )
inline

Definition at line 208 of file ast.h.

virtual ~AstNode ( )
inlinevirtual

Definition at line 210 of file ast.h.

Member Function Documentation

virtual void Accept ( AstVisitor *  v)
pure virtual
virtual BreakableStatement* AsBreakableStatement ( )
inlinevirtual

Reimplemented in BreakableStatement.

Definition at line 226 of file ast.h.

References v8::internal::NULL.

virtual Declaration* AsDeclaration ( )
inlinevirtual

Reimplemented in Declaration.

Definition at line 222 of file ast.h.

References v8::internal::NULL.

virtual Expression* AsExpression ( )
inlinevirtual

Reimplemented in Expression.

Definition at line 224 of file ast.h.

References v8::internal::NULL.

virtual IterationStatement* AsIterationStatement ( )
inlinevirtual

Reimplemented in IterationStatement.

Definition at line 227 of file ast.h.

References v8::internal::NULL.

virtual MaterializedLiteral* AsMaterializedLiteral ( )
inlinevirtual

Reimplemented in MaterializedLiteral.

Definition at line 228 of file ast.h.

References v8::internal::NULL.

Referenced by CompileTimeValue::IsCompileTimeValue(), and ObjectLiteral::Property::Property().

virtual Statement* AsStatement ( )
inlinevirtual

Reimplemented in Statement.

Definition at line 223 of file ast.h.

References v8::internal::NULL.

virtual TargetCollector* AsTargetCollector ( )
inlinevirtual

Reimplemented in TargetCollector.

Definition at line 225 of file ast.h.

References v8::internal::NULL.

static int GetNextId ( Isolate isolate)
inlinestaticprotected
virtual Type node_type ( ) const
inlinevirtual

Definition at line 213 of file ast.h.

References AstNode::kInvalid.

void* operator new ( size_t  size,
Zone zone 
)
inline

Definition at line 204 of file ast.h.

static int ReserveIdRange ( Isolate isolate,
int  n 
)
inlinestaticprotected

Definition at line 235 of file ast.h.

Referenced by AstNode::GetNextId().

Friends And Related Function Documentation

friend class CaseClause
friend

Definition at line 246 of file ast.h.

Field Documentation

const int kDeclarationsId = 3
static

Definition at line 202 of file ast.h.

Referenced by HGraphBuilder::CreateGraph().

const int kFunctionEntryId = 2
static

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