v8  3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BinaryOperation Class Reference

#include <ast.h>

Inheritance diagram for BinaryOperation:
Collaboration diagram for BinaryOperation:

Public Member Functions

virtual bool ResultOverwriteAllowed ()
 
Token::Value op () const
 
Expressionleft () const
 
Expressionright () const
 
virtual int position () const
 
BailoutId RightId () const
 
TypeFeedbackId BinaryOperationFeedbackId () const
 
- Public Member Functions inherited from Expression
virtual bool IsValidLeftHandSide ()
 
virtual bool ToBooleanIsTrue ()
 
virtual bool ToBooleanIsFalse ()
 
virtual bool IsPropertyName ()
 
bool IsSmiLiteral ()
 
bool IsStringLiteral ()
 
bool IsNullLiteral ()
 
virtual bool IsMonomorphic ()
 
virtual SmallMapListGetReceiverTypes ()
 
Handle< MapGetMonomorphicReceiverType ()
 
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 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

 BinaryOperation (Isolate *isolate, Token::Value op, Expression *left, Expression *right, 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)
 

Detailed Description

Definition at line 1676 of file ast.h.

Constructor & Destructor Documentation

BinaryOperation ( Isolate isolate,
Token::Value  op,
Expression left,
Expression right,
int  pos 
)
inlineprotected

Definition at line 1692 of file ast.h.

References ASSERT, and Token::IsBinaryOp().

Member Function Documentation

TypeFeedbackId BinaryOperationFeedbackId ( ) const
inline

Definition at line 1689 of file ast.h.

References AstNode::reuse().

Referenced by TypeFeedbackOracle::BinaryType().

Expression* left ( ) const
inline

Definition at line 1683 of file ast.h.

Token::Value op ( ) const
inline

Definition at line 1682 of file ast.h.

Referenced by TypeFeedbackOracle::BinaryType().

virtual int position ( ) const
inlinevirtual

Reimplemented from Expression.

Definition at line 1685 of file ast.h.

bool ResultOverwriteAllowed ( )
virtual
Expression* right ( ) const
inline

Definition at line 1684 of file ast.h.

BailoutId RightId ( ) const
inline

Definition at line 1687 of file ast.h.


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