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

Side by Side Diff: Source/core/xml/XPathParser.h

Issue 166903010: Oilpan: Move core/xml/ to oilpan's heap (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 10 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright 2005 Maksim Orlovich <maksim@kde.org> 2 * Copyright 2005 Maksim Orlovich <maksim@kde.org>
3 * Copyright (C) 2006 Apple Computer, Inc. 3 * Copyright (C) 2006 Apple Computer, Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 57
58 Token(int t) : type(t) { } 58 Token(int t) : type(t) { }
59 Token(int t, const String& v): type(t), str(v) { } 59 Token(int t, const String& v): type(t), str(v) { }
60 Token(int t, Step::Axis v): type(t), axis(v) { } 60 Token(int t, Step::Axis v): type(t), axis(v) { }
61 Token(int t, NumericOp::Opcode v): type(t), numop(v) { } 61 Token(int t, NumericOp::Opcode v): type(t), numop(v) { }
62 Token(int t, EqTestOp::Opcode v): type(t), eqop(v) { } 62 Token(int t, EqTestOp::Opcode v): type(t), eqop(v) { }
63 }; 63 };
64 64
65 class Parser { 65 class Parser {
66 WTF_MAKE_NONCOPYABLE(Parser); 66 WTF_MAKE_NONCOPYABLE(Parser);
67 // FIXME: oilpan: This should be STACK_ALLOCATED.
68 DISALLOW_ALLOCATION();
67 public: 69 public:
68 Parser(); 70 Parser();
69 ~Parser(); 71 ~Parser();
70 72
71 XPathNSResolver* resolver() const { return m_resolver.get(); } 73 XPathNSResolver* resolver() const { return m_resolver.get(); }
72 bool expandQName(const String& qName, AtomicString& localName, AtomicString& namespaceURI); 74 bool expandQName(const String& qName, AtomicString& localName, AtomicString& namespaceURI);
73 75
74 Expression* parseStatement(const String& statement, PassRefPtr<XPathNSResolv er>, ExceptionState&); 76 Expression* parseStatement(const String& statement, PassRefPtrWillBeRawPtr<X PathNSResolver>, ExceptionState&);
75 77
76 static Parser* current() { return currentParser; } 78 static Parser* current() { return currentParser; }
77 79
78 int lex(void* yylval); 80 int lex(void* yylval);
79 81
80 Expression* m_topExpr; 82 Expression* m_topExpr;
81 bool m_gotNamespaceError; 83 bool m_gotNamespaceError;
82 84
83 void registerParseNode(ParseNode*); 85 void registerParseNode(ParseNode*);
84 void unregisterParseNode(ParseNode*); 86 void unregisterParseNode(ParseNode*);
(...skipping 28 matching lines...) Expand all
113 Token nextToken(); 115 Token nextToken();
114 Token nextTokenInternal(); 116 Token nextTokenInternal();
115 117
116 void reset(const String& data); 118 void reset(const String& data);
117 119
118 static Parser* currentParser; 120 static Parser* currentParser;
119 121
120 unsigned m_nextPos; 122 unsigned m_nextPos;
121 String m_data; 123 String m_data;
122 int m_lastTokenType; 124 int m_lastTokenType;
123 RefPtr<XPathNSResolver> m_resolver; 125 RefPtrWillBeRawPtr<XPathNSResolver> m_resolver;
124 126
125 HashSet<ParseNode*> m_parseNodes; 127 HashSet<ParseNode*> m_parseNodes;
126 HashSet<Vector<OwnPtr<Predicate> >*> m_predicateVectors; 128 HashSet<Vector<OwnPtr<Predicate> >*> m_predicateVectors;
127 HashSet<Vector<OwnPtr<Expression> >*> m_expressionVectors; 129 HashSet<Vector<OwnPtr<Expression> >*> m_expressionVectors;
128 HashSet<String*> m_strings; 130 HashSet<String*> m_strings;
129 HashSet<Step::NodeTest*> m_nodeTests; 131 HashSet<Step::NodeTest*> m_nodeTests;
130 }; 132 };
131 133
132 } // XPath 134 } // XPath
133 135
134 } // WebCore 136 } // WebCore
135 137
136 #endif 138 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698