Home | History | Annotate | Download | only in src

Lines Matching full:node

45   static bool Traverse(AstNode* node);
47 // AST node visit functions.
48 #define DECLARE_VISIT(type) void Visit##type(type* node);
86 bool UsageComputer::Traverse(AstNode* node) {
88 uc.Visit(node);
93 void UsageComputer::VisitBlock(Block* node) {
94 VisitStatements(node->statements());
98 void UsageComputer::VisitDeclaration(Declaration* node) {
99 Write(node->proxy());
100 if (node->fun() != NULL)
101 VisitFunctionLiteral(node->fun());
105 void UsageComputer::VisitExpressionStatement(ExpressionStatement* node) {
106 Visit(node->expression());
110 void UsageComputer::VisitEmptyStatement(EmptyStatement* node) {
115 void UsageComputer::VisitIfStatement(IfStatement* node) {
116 Read(node->condition());
118 Visit(node->then_statement());
119 Visit(node->else_statement());
124 void UsageComputer::VisitContinueStatement(ContinueStatement* node) {
129 void UsageComputer::VisitBreakStatement(BreakStatement* node) {
134 void UsageComputer::VisitReturnStatement(ReturnStatement* node) {
135 Read(node->expression());
139 void UsageComputer::VisitWithEnterStatement(WithEnterStatement* node) {
140 Read(node->expression());
144 void UsageComputer::VisitWithExitStatement(WithExitStatement* node) {
149 void UsageComputer::VisitSwitchStatement(SwitchStatement* node) {
150 Read(node->tag());
151 ZoneList<CaseClause*>* cases = node->cases();
162 void UsageComputer::VisitDoWhileStatement(DoWhileStatement* node) {
164 Read(node->cond());
165 Visit(node->body());
169 void UsageComputer::VisitWhileStatement(WhileStatement* node) {
171 Read(node->cond());
172 Visit(node->body());
176 void UsageComputer::VisitForStatement(ForStatement* node) {
177 if (node->init() != NULL) Visit(node->init());
179 if (node->cond() != NULL) Read(node->cond());
180 if (node->next() != NULL) Visit(node->next());
181 Visit(node->body());
186 void UsageComputer::VisitForInStatement(ForInStatement* node) {
188 Write(node->each());
189 Read(node->enumerable());
190 Visit(node->body());
194 void UsageComputer::VisitTryCatchStatement(TryCatchStatement* node) {
195 Visit(node->try_block());
197 Write(node->catch_var());
198 Visit(node->catch_block());
203 void UsageComputer::VisitTryFinallyStatement(TryFinallyStatement* node) {
204 Visit(node->try_block());
205 Visit(node->finally_block());
209 void UsageComputer::VisitDebuggerStatement(DebuggerStatement* node) {
213 void UsageComputer::VisitFunctionLiteral(FunctionLiteral* node) {
214 ZoneList<Declaration*>* decls = node->scope()->declarations();
216 VisitStatements(node->body());
221 FunctionBoilerplateLiteral* node) {
226 void UsageComputer::VisitConditional(Conditional* node) {
227 Read(node->condition());
229 Read(node->then_expression());
230 Read(node->else_expression());
235 void UsageComputer::VisitSlot(Slot* node) {
240 void UsageComputer::VisitVariable(Variable* node) {
241 RecordUses(node->var_uses());
245 void UsageComputer::VisitVariableProxy(VariableProxy* node) {
248 RecordUses(node->var_uses());
252 void UsageComputer::VisitLiteral(Literal* node) {
256 void UsageComputer::VisitRegExpLiteral(RegExpLiteral* node) {
261 void UsageComputer::VisitObjectLiteral(ObjectLiteral* node) {
262 ReadList(node->properties());
266 void UsageComputer::VisitArrayLiteral(ArrayLiteral* node) {
267 ReadList(node->values());
271 void UsageComputer::VisitCatchExtensionObject(CatchExtensionObject* node) {
272 Read(node->value());
276 void UsageComputer::VisitAssignment(Assignment* node) {
277 if (node->op() != Token::ASSIGN)
278 Read(node->target());
279 Write(node->target());
280 Read(node->value());
284 void UsageComputer::VisitThrow(Throw* node) {
285 Read(node->exception());
289 void UsageComputer::VisitProperty(Property* node) {
291 // node's object and the key.
292 Read(node->obj());
293 Read(node->key());
294 // If the node's object is a variable proxy,
297 VariableProxy* proxy = node->obj()->AsVariableProxy();
304 void UsageComputer::VisitCall(Call* node) {
305 Read(node->expression());
306 ReadList(node->arguments());
310 void UsageComputer::VisitCallNew(CallNew* node) {
311 Read(node->expression());
312 ReadList(node->arguments());
316 void UsageComputer::VisitCallRuntime(CallRuntime* node) {
317 ReadList(node->arguments());
321 void UsageComputer::VisitUnaryOperation(UnaryOperation* node) {
322 Read(node->expression());
326 void UsageComputer::VisitCountOperation(CountOperation* node) {
327 Read(node->expression());
328 Write(node->expression());
332 void UsageComputer::VisitBinaryOperation(BinaryOperation* node) {
333 Read(node->left());
334 Read(node->right());
338 void UsageComputer::VisitCompareOperation(CompareOperation* node) {
339 Read(node->left());
340 Read(node->right());
344 void UsageComputer::VisitThisFunction(ThisFunction* node) {