V8 Project
|
#include <preparser.h>
Public Member Functions | |
bool | IsIdentifier () const |
PreParserIdentifier | AsIdentifier () const |
bool | IsStringLiteral () const |
bool | IsUseStrictLiteral () const |
bool | IsThis () const |
bool | IsThisProperty () const |
bool | IsProperty () const |
bool | IsCall () const |
bool | IsValidReferenceExpression () const |
bool | IsValidArrowParamList () const |
bool | IsFunctionLiteral () const |
bool | IsCallNew () const |
PreParserExpression | AsFunctionLiteral () |
bool | IsBinaryOperation () const |
bool | is_parenthesized () const |
void | increase_parenthesization_level () |
PreParserExpression * | operator-> () |
void | set_index (int index) |
void | set_parenthesized () |
int | position () const |
void | set_function_token_position (int position) |
void | set_ast_properties (int *ast_properties) |
void | set_dont_optimize_reason (BailoutReason dont_optimize_reason) |
bool | operator== (const PreParserExpression &other) const |
bool | operator!= (const PreParserExpression &other) const |
Static Public Member Functions | |
static PreParserExpression | Default () |
static PreParserExpression | FromIdentifier (PreParserIdentifier id) |
static PreParserExpression | BinaryOperation (PreParserExpression left, Token::Value op, PreParserExpression right) |
static PreParserExpression | EmptyArrowParamList () |
static PreParserExpression | StringLiteral () |
static PreParserExpression | UseStrictStringLiteral () |
static PreParserExpression | This () |
static PreParserExpression | Super () |
static PreParserExpression | ThisProperty () |
static PreParserExpression | Property () |
static PreParserExpression | Call () |
Private Types | |
enum | { kUnknownExpression = 0 , kTypeMask = 1 | 2 , kParenthesizedExpression = (1 << 2) , kMultiParenthesizedExpression = (1 << 3) , kTypeIdentifier = 1 , kIdentifierShift = 5 , kTypeStringLiteral = 2 , kUnknownStringLiteral = kTypeStringLiteral , kUseStrictString = kTypeStringLiteral | 32 , kStringLiteralMask = kUseStrictString , kTypeBinaryOperation = 3 , kBinaryOperationArrowParamList = (1 << 4) , kThisExpression = (1 << 4) , kThisPropertyExpression = (2 << 4) , kPropertyExpression = (3 << 4) , kCallExpression = (4 << 4) , kSuperExpression = (5 << 4) } |
Private Member Functions | |
PreParserExpression (int expression_code) | |
int | ArrowParamListBit () const |
Private Attributes | |
int | code_ |
Definition at line 676 of file preparser.h.
|
private |
Definition at line 815 of file preparser.h.
|
inlineexplicitprivate |
Definition at line 844 of file preparser.h.
Referenced by BinaryOperation(), Call(), Default(), FromIdentifier(), Property(), StringLiteral(), Super(), This(), ThisProperty(), and UseStrictStringLiteral().
|
inlineprivate |
Definition at line 846 of file preparser.h.
References AsIdentifier(), code_, v8::internal::PreParserIdentifier::IsArguments(), IsBinaryOperation(), v8::internal::PreParserIdentifier::IsEval(), v8::internal::PreParserIdentifier::IsFutureStrictReserved(), IsIdentifier(), v8::internal::PreParserIdentifier::IsYield(), and kBinaryOperationArrowParamList.
Referenced by BinaryOperation(), and IsValidArrowParamList().
|
inline |
Definition at line 773 of file preparser.h.
|
inline |
Definition at line 733 of file preparser.h.
References code_, DCHECK, IsIdentifier(), and kIdentifierShift.
Referenced by ArrowParamListBit(), v8::internal::PreParserTraits::AsIdentifier(), and v8::internal::PreParser::ParseExpressionOrLabelledStatement().
|
inlinestatic |
Definition at line 687 of file preparser.h.
References ArrowParamListBit(), COMMA, is_parenthesized(), kTypeBinaryOperation, and PreParserExpression().
Referenced by v8::internal::PreParserFactory::NewBinaryOperation().
|
inlinestatic |
Definition at line 727 of file preparser.h.
References kCallExpression, and PreParserExpression().
Referenced by v8::internal::PreParserFactory::NewCall().
|
inlinestatic |
Definition at line 678 of file preparser.h.
References kUnknownExpression, and PreParserExpression().
Referenced by v8::internal::PreParserTraits::BuildUnaryExpression(), v8::internal::PreParserTraits::ClassLiteral(), v8::internal::PreParserTraits::EmptyExpression(), v8::internal::PreParserTraits::EmptyFunctionLiteral(), v8::internal::PreParserTraits::EmptyLiteral(), v8::internal::PreParserTraits::EmptyObjectLiteralProperty(), v8::internal::PreParserTraits::ExpressionFromLiteral(), v8::internal::PreParserTraits::GetIterator(), v8::internal::PreParserTraits::GetLiteralTheHole(), v8::internal::PreParserFactory::NewArrayLiteral(), v8::internal::PreParserFactory::NewAssignment(), v8::internal::PreParserFactory::NewCallNew(), v8::internal::PreParserFactory::NewClassLiteral(), v8::internal::PreParserFactory::NewCompareOperation(), v8::internal::PreParserFactory::NewConditional(), v8::internal::PreParserFactory::NewCountOperation(), v8::internal::PreParserFactory::NewFunctionLiteral(), v8::internal::PreParserFactory::NewNumberLiteral(), v8::internal::PreParserFactory::NewObjectLiteral(), v8::internal::PreParserFactory::NewObjectLiteralProperty(), v8::internal::PreParserFactory::NewRegExpLiteral(), v8::internal::PreParserFactory::NewStringLiteral(), v8::internal::PreParserTraits::NewThrowReferenceError(), v8::internal::PreParserTraits::NewThrowSyntaxError(), v8::internal::PreParserTraits::NewThrowTypeError(), v8::internal::PreParserFactory::NewUnaryOperation(), v8::internal::PreParserFactory::NewVariableProxy(), v8::internal::PreParserFactory::NewYield(), v8::internal::PreParser::ParseFunctionLiteral(), and v8::internal::PreParser::ParseV8Intrinsic().
|
inlinestatic |
Definition at line 697 of file preparser.h.
References v8::internal::PreParserIdentifier::Default(), and FromIdentifier().
Referenced by v8::internal::PreParserTraits::EmptyArrowParamList().
|
inlinestatic |
Definition at line 682 of file preparser.h.
References kIdentifierShift, kTypeIdentifier, and PreParserExpression().
Referenced by EmptyArrowParamList(), and v8::internal::PreParserTraits::ExpressionFromIdentifier().
|
inline |
Definition at line 783 of file preparser.h.
References code_, is_parenthesized(), kMultiParenthesizedExpression, and kParenthesizedExpression.
|
inline |
Definition at line 779 of file preparser.h.
References code_, and kParenthesizedExpression.
Referenced by BinaryOperation(), and increase_parenthesization_level().
|
inline |
Definition at line 775 of file preparser.h.
References code_, kTypeBinaryOperation, and kTypeMask.
Referenced by ArrowParamListBit().
|
inline |
|
inline |
Definition at line 771 of file preparser.h.
|
inline |
Definition at line 770 of file preparser.h.
|
inline |
Definition at line 731 of file preparser.h.
References code_, kTypeIdentifier, and kTypeMask.
Referenced by ArrowParamListBit(), AsIdentifier(), v8::internal::PreParserTraits::IsIdentifier(), IsValidReferenceExpression(), v8::internal::PreParser::ParseExpressionOrLabelledStatement(), and v8::internal::PreParser::ParseForStatement().
|
inline |
Definition at line 753 of file preparser.h.
References code_, kPropertyExpression, and kThisPropertyExpression.
Referenced by IsValidReferenceExpression().
|
inline |
Definition at line 739 of file preparser.h.
References code_, kTypeMask, and kTypeStringLiteral.
Referenced by v8::internal::PreParserStatement::ExpressionStatement().
|
inline |
Definition at line 747 of file preparser.h.
References code_, and kThisExpression.
Referenced by v8::internal::PreParserFactory::NewProperty().
|
inline |
Definition at line 749 of file preparser.h.
References code_, and kThisPropertyExpression.
Referenced by v8::internal::PreParserTraits::IsThisProperty().
|
inline |
Definition at line 743 of file preparser.h.
References code_, and kUseStrictString.
Referenced by v8::internal::PreParserStatement::ExpressionStatement().
|
inline |
Definition at line 764 of file preparser.h.
References ArrowParamListBit(), code_, kBinaryOperationArrowParamList, and kMultiParenthesizedExpression.
Referenced by v8::internal::PreParserTraits::DeclareArrowParametersFromExpression().
|
inline |
Definition at line 760 of file preparser.h.
References IsIdentifier(), and IsProperty().
|
inline |
Definition at line 804 of file preparser.h.
References code_.
|
inline |
Definition at line 790 of file preparser.h.
|
inline |
Definition at line 801 of file preparser.h.
References code_.
|
inline |
|
inlinestatic |
Definition at line 723 of file preparser.h.
References kPropertyExpression, and PreParserExpression().
Referenced by v8::internal::PreParserFactory::NewProperty().
|
inline |
Definition at line 798 of file preparser.h.
|
inline |
Definition at line 799 of file preparser.h.
|
inline |
Definition at line 797 of file preparser.h.
|
inline |
Definition at line 793 of file preparser.h.
|
inline |
Definition at line 794 of file preparser.h.
|
inlinestatic |
Definition at line 703 of file preparser.h.
References kUnknownStringLiteral, and PreParserExpression().
Referenced by v8::internal::PreParserTraits::ExpressionFromString().
|
inlinestatic |
Definition at line 715 of file preparser.h.
References kSuperExpression, and PreParserExpression().
Referenced by v8::internal::PreParserTraits::SuperReference().
|
inlinestatic |
Definition at line 711 of file preparser.h.
References kThisExpression, and PreParserExpression().
Referenced by v8::internal::PreParserTraits::ThisExpression().
|
inlinestatic |
Definition at line 719 of file preparser.h.
References kThisPropertyExpression, and PreParserExpression().
Referenced by v8::internal::PreParserFactory::NewProperty().
|
inlinestatic |
Definition at line 707 of file preparser.h.
References kUseStrictString, and PreParserExpression().
Referenced by v8::internal::PreParserTraits::ExpressionFromString().
|
private |
Definition at line 860 of file preparser.h.
Referenced by ArrowParamListBit(), AsIdentifier(), increase_parenthesization_level(), is_parenthesized(), IsBinaryOperation(), IsCall(), IsIdentifier(), IsProperty(), IsStringLiteral(), IsThis(), IsThisProperty(), IsUseStrictLiteral(), IsValidArrowParamList(), operator!=(), and operator==().