|
V8 Project
|
#include <func-name-inferrer.h>
Inheritance diagram for v8::internal::FuncNameInferrer:
Collaboration diagram for v8::internal::FuncNameInferrer:Classes | |
| struct | Name |
Public Member Functions | |
| FuncNameInferrer (AstValueFactory *ast_value_factory, Zone *zone) | |
| bool | IsOpen () const |
| void | PushEnclosingName (const AstRawString *name) |
| void | Enter () |
| void | PushLiteralName (const AstRawString *name) |
| void | PushVariableName (const AstRawString *name) |
| void | AddFunction (FunctionLiteral *func_to_infer) |
| void | RemoveLastFunction () |
| void | Infer () |
| void | Leave () |
Public Member Functions inherited from v8::internal::ZoneObject | |
| INLINE (void *operator new(size_t size, Zone *zone)) | |
| void | operator delete (void *, size_t) |
| void | operator delete (void *pointer, Zone *zone) |
Private Types | |
| enum | NameType { kEnclosingConstructorName , kLiteralName , kVariableName } |
Private Member Functions | |
| Zone * | zone () const |
| const AstString * | MakeNameFromStack () |
| const AstString * | MakeNameFromStackHelper (int pos, const AstString *prev) |
| void | InferFunctionsNames () |
| DISALLOW_COPY_AND_ASSIGN (FuncNameInferrer) | |
Private Attributes | |
| AstValueFactory * | ast_value_factory_ |
| ZoneList< int > | entries_stack_ |
| ZoneList< Name > | names_stack_ |
| ZoneList< FunctionLiteral * > | funcs_to_infer_ |
| Zone * | zone_ |
Definition at line 29 of file func-name-inferrer.h.
|
private |
| Enumerator | |
|---|---|
| kEnclosingConstructorName | |
| kLiteralName | |
| kVariableName | |
Definition at line 79 of file func-name-inferrer.h.
| v8::internal::FuncNameInferrer::FuncNameInferrer | ( | AstValueFactory * | ast_value_factory, |
| Zone * | zone | ||
| ) |
Definition at line 15 of file func-name-inferrer.cc.
|
inline |
Definition at line 50 of file func-name-inferrer.h.
References v8::internal::List< T, AllocationPolicy >::Add(), funcs_to_infer_, IsOpen(), and zone().
Referenced by v8::internal::ParserTraits::InferFunctionName(), and v8::internal::Parser::ParseFunctionLiteral().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
|
inline |
Definition at line 40 of file func-name-inferrer.h.
References v8::internal::List< T, AllocationPolicy >::Add(), entries_stack_, names_stack_, and zone().
Referenced by v8::internal::Parser::ParseVariableDeclarations().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 63 of file func-name-inferrer.h.
References DCHECK, funcs_to_infer_, InferFunctionsNames(), and IsOpen().
Referenced by v8::internal::Parser::ParseVariableDeclarations().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 76 of file func-name-inferrer.cc.
References funcs_to_infer_, and MakeNameFromStack().
Referenced by Infer().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 34 of file func-name-inferrer.h.
References entries_stack_.
Referenced by AddFunction(), Infer(), Leave(), PushLiteralName(), PushVariableName(), and RemoveLastFunction().
Here is the caller graph for this function:
|
inline |
Definition at line 71 of file func-name-inferrer.h.
References DCHECK, entries_stack_, funcs_to_infer_, IsOpen(), and names_stack_.
Referenced by v8::internal::Parser::ParseVariableDeclarations().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 49 of file func-name-inferrer.cc.
References ast_value_factory_, and MakeNameFromStackHelper().
Referenced by InferFunctionsNames().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 53 of file func-name-inferrer.cc.
References ast_value_factory_, v8::internal::String::kMaxLength, kVariableName, v8::internal::AstString::length(), name, names_stack_, and v8::internal::AstValueFactory::NewConsString().
Referenced by MakeNameFromStack().
Here is the call graph for this function:
Here is the caller graph for this function:| void v8::internal::FuncNameInferrer::PushEnclosingName | ( | const AstRawString * | name | ) |
Definition at line 25 of file func-name-inferrer.cc.
References unibrow::Uppercase::Is(), kEnclosingConstructorName, name, names_stack_, and zone().
Referenced by v8::internal::Parser::ParseLazy().
Here is the call graph for this function:
Here is the caller graph for this function:| void v8::internal::FuncNameInferrer::PushLiteralName | ( | const AstRawString * | name | ) |
Definition at line 35 of file func-name-inferrer.cc.
References ast_value_factory_, IsOpen(), kLiteralName, name, names_stack_, and zone().
Referenced by v8::internal::ParserTraits::ExpressionFromString(), v8::internal::ParserTraits::PushLiteralName(), and v8::internal::ParserTraits::PushPropertyName().
Here is the call graph for this function:
Here is the caller graph for this function:| void v8::internal::FuncNameInferrer::PushVariableName | ( | const AstRawString * | name | ) |
Definition at line 42 of file func-name-inferrer.cc.
References ast_value_factory_, IsOpen(), kVariableName, name, names_stack_, and zone().
Referenced by v8::internal::ParserTraits::ExpressionFromIdentifier(), and v8::internal::Parser::ParseVariableDeclarations().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 56 of file func-name-inferrer.h.
References funcs_to_infer_, and IsOpen().
Referenced by v8::internal::Parser::ParseVariableDeclarations().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivate |
Definition at line 90 of file func-name-inferrer.h.
References zone_.
Referenced by AddFunction(), Enter(), PushEnclosingName(), PushLiteralName(), and PushVariableName().
Here is the caller graph for this function:
|
private |
Definition at line 102 of file func-name-inferrer.h.
Referenced by MakeNameFromStack(), MakeNameFromStackHelper(), PushLiteralName(), and PushVariableName().
Definition at line 103 of file func-name-inferrer.h.
|
private |
Definition at line 105 of file func-name-inferrer.h.
Referenced by AddFunction(), Infer(), InferFunctionsNames(), Leave(), and RemoveLastFunction().
Definition at line 104 of file func-name-inferrer.h.
Referenced by Enter(), Leave(), MakeNameFromStackHelper(), PushEnclosingName(), PushLiteralName(), and PushVariableName().
|
private |
Definition at line 106 of file func-name-inferrer.h.
Referenced by zone().