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

Unified Diff: Source/core/css/parser/MediaQueryParser.h

Issue 225293006: Moved MQ parsing block tracking to tokenizer (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Removed unused member var Created 6 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/css/parser/MediaQueryBlockWatcher.cpp ('k') | Source/core/css/parser/MediaQueryParser.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/css/parser/MediaQueryParser.h
diff --git a/Source/core/css/parser/MediaQueryParser.h b/Source/core/css/parser/MediaQueryParser.h
index ca2dc5c27e52bdfa51dc39c938d1e50188360b3c..6c04090a1c19d584894757921961ba3e4676d828 100644
--- a/Source/core/css/parser/MediaQueryParser.h
+++ b/Source/core/css/parser/MediaQueryParser.h
@@ -9,6 +9,7 @@
#include "core/css/MediaList.h"
#include "core/css/MediaQuery.h"
#include "core/css/MediaQueryExp.h"
+#include "core/css/parser/MediaQueryBlockWatcher.h"
#include "core/css/parser/MediaQueryToken.h"
#include "wtf/Vector.h"
#include "wtf/text/WTFString.h"
@@ -31,7 +32,7 @@ public:
MediaQueryData();
void clear();
bool addExpression();
- void addParserValue(MediaQueryTokenType, MediaQueryToken&);
+ void addParserValue(MediaQueryTokenType, const MediaQueryToken&);
void setMediaType(const String&);
PassOwnPtrWillBeRawPtr<MediaQuery> takeMediaQuery();
@@ -64,49 +65,29 @@ private:
PassRefPtrWillBeRawPtr<MediaQuerySet> parseImpl(TokenIterator, TokenIterator endToken);
- enum BlockType {
- ParenthesisBlock,
- BracketsBlock,
- BracesBlock
- };
-
- enum StateChange {
- ModifyState,
- DoNotModifyState
- };
-
- struct BlockParameters {
- MediaQueryTokenType leftToken;
- MediaQueryTokenType rightToken;
- BlockType blockType;
- StateChange stateChange;
- };
-
- void processToken(TokenIterator&);
+ void processToken(const MediaQueryToken&);
- void readRestrictor(MediaQueryTokenType, TokenIterator&);
- void readMediaType(MediaQueryTokenType, TokenIterator&);
- void readAnd(MediaQueryTokenType, TokenIterator&);
- void readFeatureStart(MediaQueryTokenType, TokenIterator&);
- void readFeature(MediaQueryTokenType, TokenIterator&);
- void readFeatureColon(MediaQueryTokenType, TokenIterator&);
- void readFeatureValue(MediaQueryTokenType, TokenIterator&);
- void readFeatureEnd(MediaQueryTokenType, TokenIterator&);
- void skipUntilComma(MediaQueryTokenType, TokenIterator&);
- void skipUntilBlockEnd(MediaQueryTokenType, TokenIterator&);
- void done(MediaQueryTokenType, TokenIterator&);
+ void readRestrictor(MediaQueryTokenType, const MediaQueryToken&);
+ void readMediaType(MediaQueryTokenType, const MediaQueryToken&);
+ void readAnd(MediaQueryTokenType, const MediaQueryToken&);
+ void readFeatureStart(MediaQueryTokenType, const MediaQueryToken&);
+ void readFeature(MediaQueryTokenType, const MediaQueryToken&);
+ void readFeatureColon(MediaQueryTokenType, const MediaQueryToken&);
+ void readFeatureValue(MediaQueryTokenType, const MediaQueryToken&);
+ void readFeatureEnd(MediaQueryTokenType, const MediaQueryToken&);
+ void skipUntilComma(MediaQueryTokenType, const MediaQueryToken&);
+ void skipUntilBlockEnd(MediaQueryTokenType, const MediaQueryToken&);
+ void done(MediaQueryTokenType, const MediaQueryToken&);
- typedef void (MediaQueryParser::*State)(MediaQueryTokenType, TokenIterator&);
+ typedef void (MediaQueryParser::*State)(MediaQueryTokenType, const MediaQueryToken&);
void setStateAndRestrict(State, MediaQuery::Restrictor);
- bool observeBlock(BlockParameters&, MediaQueryTokenType);
- void observeBlocks(MediaQueryTokenType);
- static void popIfBlockMatches(Vector<MediaQueryParser::BlockType>& blockStack, BlockType);
+ void handleBlocks(const MediaQueryToken&);
State m_state;
MediaQueryData m_mediaQueryData;
RefPtrWillBeMember<MediaQuerySet> m_querySet;
- Vector<BlockType> m_blockStack;
+ MediaQueryBlockWatcher m_blockWatcher;
const static State ReadRestrictor;
const static State ReadMediaType;
« no previous file with comments | « Source/core/css/parser/MediaQueryBlockWatcher.cpp ('k') | Source/core/css/parser/MediaQueryParser.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698