Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Unified Diff: runtime/vm/parser.h

Issue 59683002: Clean up Parser::ParseTryStatement in the VM. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/class_finalizer.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/parser.h
diff --git a/runtime/vm/parser.h b/runtime/vm/parser.h
index 41798e3ad574f739cf2828cc7b3c5264dd661795..af83928ffd6c4358a539aa1613f6bfa34e143f5f 100644
--- a/runtime/vm/parser.h
+++ b/runtime/vm/parser.h
@@ -8,28 +8,41 @@
#include "include/dart_api.h"
#include "lib/invocation_mirror.h"
-#include "vm/ast.h"
+#include "platform/assert.h"
Ivan Posva 2013/11/06 00:47:17 Please explain why you needed platform/assert.h in
+#include "platform/globals.h"
+#include "vm/allocation.h"
#include "vm/class_finalizer.h"
#include "vm/compiler_stats.h"
-#include "vm/scanner.h"
+#include "vm/object.h"
+#include "vm/raw_object.h"
+#include "vm/token.h"
namespace dart {
// Forward declarations.
+class ArgumentListNode;
class ArgumentsDescriptor;
-class Function;
-class Isolate;
-class LiteralToken;
-class Script;
-class TokenStream;
-
-struct TopLevel;
+class AstNode;
+class CaseNode;
class ClassDesc;
+class ConstructorCallNode;
+template <typename T> class GrowableArray;
+class InlinedFinallyNode;
+class Isolate;
+class LetNode;
+class LiteralNode;
+class LocalScope;
+class LocalVariable;
+class PrimaryNode;
+class SequenceNode;
+class SourceLabel;
+class StaticCallNode;
+
+struct CatchParameter;
struct MemberDesc;
struct ParamList;
struct QualIdent;
-struct CatchParamDesc;
-struct FieldInitExpression;
+struct TopLevel;
// The class ParsedFunction holds the result of parsing a function.
class ParsedFunction : public ZoneAllocated {
@@ -505,9 +518,9 @@ class Parser : public ValueObject {
AstNode* ParseSwitchStatement(String* label_name);
// try/catch/finally parsing.
- void AddCatchParamsToScope(const CatchParamDesc& exception_param,
- const CatchParamDesc& stack_trace_param,
- LocalScope* scope);
+ void AddCatchParametersToScope(CatchParameter* exception_param,
+ CatchParameter* stack_trace_param,
+ LocalScope* scope);
// Parse finally block and create an AST for it.
SequenceNode* ParseFinallyBlock();
// Adds try block to the list of try blocks seen so far.
@@ -630,6 +643,8 @@ class Parser : public ValueObject {
LetNode* PrepareCompoundAssignmentNodes(AstNode** expr);
LocalVariable* CreateTempConstVariable(intptr_t token_pos, const char* s);
+ LocalVariable* EnsureLocalVariable(const String& name);
+
static SequenceNode* NodeAsSequenceNode(intptr_t sequence_pos,
AstNode* node,
LocalScope* scope);
« no previous file with comments | « runtime/vm/class_finalizer.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698