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
Expression Class Reference

#include <ast.h>

Inheritance diagram for Expression:
Collaboration diagram for Expression:

Public Types

enum  Context { kUninitialized, kEffect, kValue, kTest }
 
- Public Types inherited from AstNode
enum  Type { kInvalid = -1 }
 

Public Member Functions

virtual int position () const
 
virtual ExpressionAsExpression ()
 
virtual bool IsValidLeftHandSide ()
 
virtual bool ToBooleanIsTrue ()
 
virtual bool ToBooleanIsFalse ()
 
virtual bool IsPropertyName ()
 
virtual bool ResultOverwriteAllowed ()
 
bool IsSmiLiteral ()
 
bool IsStringLiteral ()
 
bool IsNullLiteral ()
 
virtual bool IsMonomorphic ()
 
virtual SmallMapListGetReceiverTypes ()
 
Handle< MapGetMonomorphicReceiverType ()
 
unsigned id () const
 
unsigned test_id () const
 
- Public Member Functions inherited from AstNode
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 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)
 

Protected Member Functions

 Expression (Isolate *isolate)
 

Additional Inherited Members

- Static Public Attributes inherited from AstNode
static const int kNoNumber = -1
 
static const int kFunctionEntryId = 2
 
static const int kDeclarationsId = 3
 
- Static Protected Member Functions inherited from AstNode
static int GetNextId (Isolate *isolate)
 
static int ReserveIdRange (Isolate *isolate, int n)
 

Detailed Description

Definition at line 297 of file ast.h.

Member Enumeration Documentation

enum Context
Enumerator
kUninitialized 
kEffect 
kValue 
kTest 

Definition at line 299 of file ast.h.

Constructor & Destructor Documentation

Expression ( Isolate isolate)
inlineexplicitprotected

Definition at line 362 of file ast.h.

Member Function Documentation

virtual Expression* AsExpression ( )
inlinevirtual

Reimplemented from AstNode.

Definition at line 316 of file ast.h.

Handle<Map> GetMonomorphicReceiverType ( )
inline

Definition at line 351 of file ast.h.

References ASSERT, SmallMapList::at(), SmallMapList::length(), and v8::internal::NULL.

virtual SmallMapList* GetReceiverTypes ( )
inlinevirtual

Reimplemented in Assignment, CountOperation, Call, and Property.

Definition at line 347 of file ast.h.

References v8::internal::NULL, and UNREACHABLE.

unsigned id ( ) const
inline

Definition at line 358 of file ast.h.

virtual bool IsMonomorphic ( )
inlinevirtual

Reimplemented in Assignment, CountOperation, CallNew, Call, and Property.

Definition at line 343 of file ast.h.

References UNREACHABLE.

bool IsNullLiteral ( )

Definition at line 67 of file ast.cc.

References v8::internal::NULL.

virtual bool IsPropertyName ( )
inlinevirtual

Reimplemented in Literal.

Definition at line 327 of file ast.h.

Referenced by Property::RecordTypeFeedback(), and Assignment::RecordTypeFeedback().

bool IsSmiLiteral ( )

Definition at line 57 of file ast.cc.

References v8::internal::NULL.

bool IsStringLiteral ( )

Definition at line 62 of file ast.cc.

References v8::internal::NULL.

virtual bool IsValidLeftHandSide ( )
inlinevirtual

Reimplemented in Property, and VariableProxy.

Definition at line 318 of file ast.h.

virtual int position ( ) const
inlinevirtual

Reimplemented in Throw, Assignment, CompareOperation, CountOperation, BinaryOperation, UnaryOperation, CallNew, Call, Property, and VariableProxy.

Definition at line 311 of file ast.h.

References UNREACHABLE.

virtual bool ResultOverwriteAllowed ( )
inlinevirtual

Reimplemented in BinaryOperation, and UnaryOperation.

Definition at line 331 of file ast.h.

unsigned test_id ( ) const
inline

Definition at line 359 of file ast.h.

virtual bool ToBooleanIsFalse ( )
inlinevirtual

Reimplemented in Literal.

Definition at line 322 of file ast.h.

virtual bool ToBooleanIsTrue ( )
inlinevirtual

Reimplemented in Literal.

Definition at line 321 of file ast.h.


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