![]() |
v8
3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
|
#include <ast.h>


Public Member Functions | |
| virtual bool | IsValidLeftHandSide () |
| Expression * | obj () const |
| Expression * | key () const |
| virtual int | position () const |
| BailoutId | LoadId () const |
| bool | IsStringLength () const |
| bool | IsStringAccess () const |
| bool | IsFunctionPrototype () const |
| void | RecordTypeFeedback (TypeFeedbackOracle *oracle, Zone *zone) |
| virtual bool | IsMonomorphic () |
| virtual SmallMapList * | GetReceiverTypes () |
| bool | IsArrayLength () |
| bool | IsUninitialized () |
| TypeFeedbackId | PropertyFeedbackId () |
Public Member Functions inherited from Expression | |
| virtual bool | ToBooleanIsTrue () |
| virtual bool | ToBooleanIsFalse () |
| virtual bool | IsPropertyName () |
| virtual bool | ResultOverwriteAllowed () |
| bool | IsSmiLiteral () |
| bool | IsStringLiteral () |
| bool | IsNullLiteral () |
| Handle< Map > | GetMonomorphicReceiverType () |
| BailoutId | id () const |
| TypeFeedbackId | 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 =0 |
| virtual TargetCollector * | AsTargetCollector () |
| virtual BreakableStatement * | AsBreakableStatement () |
| virtual IterationStatement * | AsIterationStatement () |
| virtual MaterializedLiteral * | AsMaterializedLiteral () |
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 | |
| Property (Isolate *isolate, Expression *obj, Expression *key, int pos) | |
Protected Member Functions inherited from Expression | |
| Expression (Isolate *isolate) | |
Additional Inherited Members | |
Public Types inherited from Expression | |
| enum | Context { kUninitialized, kEffect, kValue, kTest } |
Public Types inherited from AstNode | |
| enum | Type { kInvalid = -1 } |
Static Protected Member Functions inherited from AstNode | |
| static int | GetNextId (Isolate *isolate) |
| static int | ReserveIdRange (Isolate *isolate, int n) |
| static TypeFeedbackId | reuse (BailoutId id) |
|
inlineprotected |
|
inlinevirtual |
Reimplemented from Expression.
|
inlinevirtual |
Reimplemented from Expression.
|
inlinevirtual |
Reimplemented from Expression.
|
inline |
Definition at line 1451 of file ast.h.
Referenced by Assignment::RecordTypeFeedback().
|
inline |
|
inlinevirtual |
Reimplemented from Expression.
|
inline |
Definition at line 1466 of file ast.h.
References AstNode::reuse().
Referenced by TypeFeedbackOracle::LoadIsBuiltin(), TypeFeedbackOracle::LoadIsMegamorphicWithTypeInfo(), TypeFeedbackOracle::LoadIsMonomorphicNormal(), TypeFeedbackOracle::LoadIsUninitialized(), TypeFeedbackOracle::LoadMonomorphicReceiverType(), and TypeFeedbackOracle::LoadReceiverTypes().
| void RecordTypeFeedback | ( | TypeFeedbackOracle * | oracle, |
| Zone * | zone | ||
| ) |
Definition at line 405 of file ast.cc.
References ASSERT, Handle< T >::cast(), TypeFeedbackOracle::CollectKeyedReceiverTypes(), Literal::handle(), Expression::IsPropertyName(), ObjectLiteral::Property::key(), v8::internal::kMaxKeyedPolymorphism, TypeFeedbackOracle::LoadIsBuiltin(), TypeFeedbackOracle::LoadIsMegamorphicWithTypeInfo(), TypeFeedbackOracle::LoadIsMonomorphicNormal(), TypeFeedbackOracle::LoadIsUninitialized(), TypeFeedbackOracle::LoadMonomorphicReceiverType(), TypeFeedbackOracle::LoadReceiverTypes(), and v8::internal::NULL.