| OLD | NEW |
| 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 Loading... |
| 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. | 67 STACK_ALLOCATED(); |
| 68 DISALLOW_ALLOCATION(); | |
| 69 public: | 68 public: |
| 70 Parser(); | 69 Parser(); |
| 71 ~Parser(); | 70 ~Parser(); |
| 72 | 71 |
| 73 XPathNSResolver* resolver() const { return m_resolver.get(); } | 72 XPathNSResolver* resolver() const { return m_resolver.get(); } |
| 74 bool expandQName(const String& qName, AtomicString& localName, AtomicString&
namespaceURI); | 73 bool expandQName(const String& qName, AtomicString& localName, AtomicString&
namespaceURI); |
| 75 | 74 |
| 76 Expression* parseStatement(const String& statement, PassRefPtrWillBeRawPtr<X
PathNSResolver>, ExceptionState&); | 75 Expression* parseStatement(const String& statement, PassRefPtrWillBeRawPtr<X
PathNSResolver>, ExceptionState&); |
| 77 | 76 |
| 78 static Parser* current() { return currentParser; } | 77 static Parser* current() { return currentParser; } |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 115 Token nextToken(); | 114 Token nextToken(); |
| 116 Token nextTokenInternal(); | 115 Token nextTokenInternal(); |
| 117 | 116 |
| 118 void reset(const String& data); | 117 void reset(const String& data); |
| 119 | 118 |
| 120 static Parser* currentParser; | 119 static Parser* currentParser; |
| 121 | 120 |
| 122 unsigned m_nextPos; | 121 unsigned m_nextPos; |
| 123 String m_data; | 122 String m_data; |
| 124 int m_lastTokenType; | 123 int m_lastTokenType; |
| 125 RefPtrWillBeRawPtr<XPathNSResolver> m_resolver; | 124 RefPtrWillBeMember<XPathNSResolver> m_resolver; |
| 126 | 125 |
| 127 HashSet<ParseNode*> m_parseNodes; | 126 HashSet<ParseNode*> m_parseNodes; |
| 128 HashSet<Vector<OwnPtr<Predicate> >*> m_predicateVectors; | 127 HashSet<Vector<OwnPtr<Predicate> >*> m_predicateVectors; |
| 129 HashSet<Vector<OwnPtr<Expression> >*> m_expressionVectors; | 128 HashSet<Vector<OwnPtr<Expression> >*> m_expressionVectors; |
| 130 HashSet<String*> m_strings; | 129 HashSet<String*> m_strings; |
| 131 HashSet<Step::NodeTest*> m_nodeTests; | 130 HashSet<Step::NodeTest*> m_nodeTests; |
| 132 }; | 131 }; |
| 133 | 132 |
| 134 } // XPath | 133 } // XPath |
| 135 | 134 |
| 136 } // WebCore | 135 } // WebCore |
| 137 | 136 |
| 138 #endif | 137 #endif |
| OLD | NEW |